Tag Archives: Sprint

NiteoWeb attended a Pyramid sprint in Halle, Germany

Gocept, a company based in Halle (Saale), Germany, organized a Pyramid sprint, which lasted from 15th to 17th August 2013. The sprint took place at their headquarters which, by the way, has a lovely garden perfectly suited for relaxation, eating, drinking and development (not necessarily in that order!).

A bunch of NiteoWeb former and present employees took part, too. Despite the fact that Halle is about 10 hours away from Ljubljana if you go by car (quite a long ride indeed!), but it was well worth coming there. Gocept did an excellent job of feeding and entertaining all the sprint participiants and it was a great pleasure to meet Chris McDonough, author of the Pyramid web framework, in person. An interesting and amusing dude I must say.

Happy sprint participants were quite productive and a whole bunch of bug fixes and enhancements have been made – see the wrap up for more details. The only real downside was that the sprint ended so early, three days really passed in the blink of an eye. But hey, isn’t that always the case when you’re having fun?

So Gocept, thanks again for everything and hope to see you in 2014!

10 days to sprint in Antwerp!

The Belgian Beer Sprint is nearing ever so closer! Only a bit over a week is left until we start this year’s EESTEC Plone sprint.

Like last years we invited Electrical Engineering students from around Europe for a week-long introduction to Plone. In the meantime we will have members of the Plone community sprinting on various sprint topics, mostly oriented into entry-level Plone documentation and tools. Sprints like this offer unique opportunity for the Plone community to observe how newcomers consume our documentation and where they get stuck.

However, due to the Plone Conference being in Europe this year and EuroPython being just a week before the sprint, we are facing financial problems. We have a budget of 5.000 EUR with which we are covering accommodation, three meals per day, t-shirts and other niceties for all participants (around 25 in total). We are still missing ~1000 EUR of our goal and would like to ask again everyone in the Plone community to help us reach it. In any case, whatever we will be missing at the end, we’ll just split among the ~10 Plone participants (obviously we cannot ask students for additional 100 EUR).

Ways to help:
Reasons to help us:
  • You care about making Plone easier to use.
  • You care about getting more students interested in Plone and hence ensuring a steady income of new developers.
  • You care about gender balance in Plone community. Out of 15 students, 6 will be girls.
  • You are just a genuinely nice person.

collective.table, report #3

Work report

A week ago, myself and my mentor both participated in the Plone Sauna Sprint. It was an epic event, thanks to all sprinters for being that great throughout the week.

blog/rebooting-brain-on-sauna-sprintDuring the event my mentor and I discussed in great length how to approach challenges that collective.table presents. We want the table to be pluggable and reusable. We want to support having several tables on one page. We want to support having multiple backend data sources for our tables, with a dedicated configuration view for each data source.

Current status

Table works, we have one data source. Multiple sources are being supported, prototype for configuration view is ready.

Also, my brand new MacBook Pro died. Apparently RAM problems, or so they say at the repair shop. So now I am stuck using an old laptop, which hinders my ability to be productive.


First, I need to get my MacBook back from the repair shop to restore my normal working environment. Hopefully they can get it fixed in a couple of days.

Next thing on the menu is to polish and document configuration views for storages. Followed with tests for them.

After that, we’ll see how much more time we have until the GSoC deadline and decide priorities based on that.

collective.table alpha release


It’s now past the mid-term evaluation deadline for my Google Summer of Code project and it’s time to release my work out to the wider community to receive feedback and ideas on how to improve it.


During the last days I was focusing on polishing the first release: writing documentation, adding more comments, increasing test coverage and such. My plan was to have a public release just days before Sauna Sprint so I can start getting valuable feedback from the community on the progress and roadmap for the project.

But why did I chose Sauna Sprint as a deadline? Well, myself and my GSoC mentor Martijn Pieters will both be there for the entire sprint next week.Productivity will be through the roof if I can judge based on the number of Plone sprints I attended in the past. We’ll mainly be focusing on improving the UI and making our storage more scalable.

Give it a spin!

So: buckle-up, add collective.table to your eggs and give it a spin! Any and all feedback is greatly appreciated. The release is available on PyPI and code is available on GitHub.

collective.table GSoC report


It’s now been over a month since I started my Google Summer of Code project. It’s been a fun month, full of newly learned tricks, mostly courtesy of my mentor Martijn Pieters, Jarn AS.

Our goal is to have an ability in Plone to store arbitrary pieces of tabular data, in the same way that PHP CMSes often have their databases abused for other things. A simple intranet solution for everything that is now uploaded as Excel files: equipment lists, book loans, etc. It’s a list of items where members can add/edit columns and rows, and of course data.


Currently we are nearing the first alpha release, which should be out in about 10 days, when we have the GSoC mid-term report deadline. I already have the basic CRUD interface with data being stored in a dictionary as a simple zope annotation. Here’s a screenshot of how it looks in action:

blog/collective.table-screenshotAnyhow, I need to do some polishing first and to increase test coverage, then we’re ready for the first release!


By default collective.table comes with a simple zope annotation storage, called local storage that does not support advanced features, such as sorting and filtering.

For use-cases where sorting and filtering are needed, plus the dataset could be much bigger I plan to create another storage. I’m currently leaning towards using cornerstone.soup as a backend for this additional storage. In any case, collective.table is designed to support many pluggable data storages, so later on we can add SQL/NoSQL/whatever as a storage backend.

Also, for now we are focusing mostly on getting the base features working. In late July both myself and my mentor are attending this year’s Sauna Sprint where we plan to focus on UI and usability.