Arnhem Sprint Wrapup
The Arnhem Sprint is over, 5 days of coding have passed and Plone 5 is one step forward.
At the sprint we worked on various, very different kinds of PLIPs, which had one thing in common: they were all related to Plone 5. A grand total of 35 people joined us for some days or the complete week to help and code. 14 people were able to sleep at the office which resulted in endless coding nights, so we can say we spent 1500 hours on Plone development in one week!
One recurring theme was “don’t break the build”. There was a big screen that constantly showed our Continuous Integration server’s status, and if broken, it also showed who broke the build. It was jokingly said that “if you break the build, you buy cake for everyone”, but we didn’t actually make people do that. Some people said that the cake-rule was discouraging merging of pull requests and should therefore be abolished.
Plone 5 is now free of Archetypes, the old (and venerable) way of creating content types. It has been replaced by dexterity, which makes for smaller objects, is more extendable and needs less boilerplate code. Work was done on plone.app.contenttypes to ensure a smooth migration from Plone’s old default (Archetypes) content types to the new dexterity-based ones.
Removing, removing and removing
It was sometimes hard to show others what had been done, as most PLIPS were about removing stuff from current Plone or refactoring them to z3c.form or dexterity. The removing is important to make Plone 5 easier to learn and future proof. The goal set was to trim off 3% of code. I’m sure we can find a measuring method that confirms that we made it. Although the developers, on the other hand, probably gained 3% in weight, due to amount of cake and other candy we had during the week to keep everyone focused and to make good for broken builds.
Plone 5 Theme
A new, fresh theme was developed:
This is what it looks like on a mobile device:
Work was done to remove zope.formlib from as many places as possible. The newer z3c.form is what we use and recommend these days, and Plone’s core code should lead by example. One of the areas we worked on is the controlpanel, where site admins control site-wide settings. Plone’s user registration package, plone.app.users, had its zope.formlib forms replaced by z3c.form altogether.
A Plone sprint should have a party at the end. We were lucky to have a band, and a couple of willing dancers.
The party started off with a “pancake friday” evening. It was quite difficult to get the pancakes the same shade of blue as the Plone logo, but some came out really nice.
During the sprint retrospective, many people praised the atmosphere and sprint facilities (cooking, sleeping). There were also some suggestions on how to make the next sprint even better. Among the suggestions were:
- having one or two outdoor activities, to get people away from the terminal
- more lightning talks / demos
- no (cake) penalty on breaking the build, be more friendly to new Ploners
- have people sit closer together
- have topics which are more related
The Sprint Award is an award for the most productive / nicest / hardest working / most cake buying team on the sprint. The winner is decided by who cheers the loudest for them, as measured through a dB-meter. This year it was won by the Pirates team (Rok Garbas, Rob Gietema, Peter Lamut, Jean-Michel Francois, Kuno Woudt and Arno Blumer), who at 91dB were just 1 decibel ahead of their closest competition.
We would like to thank all sprinters for visiting and making the sprint a success! You rock!