Plone Sauna Sprint final report
Report of the second part of the Plone Sauna Sprint.
Read the first report here (click)!
After the first part of the Sauna Sprint we had one day off to relax, reclaim our energy and thoroughly think through what will we be doing in the final days of the sprint. To do it properly we went to the island of Iso Vasikkasaari and stayed there during the day. It felt good to stretch our limbs a bit with some beach volley after long night coding sessions in the first days of the sprint.

After recollecting ourselves we marched towards remaining bugs and TODO list items. Hacking continued until Sunday evening when we had the last wrapup followed by sauna in an old VW (Kleinbus) Transporter van.

Work done on Plone / Python
LDAP
Florian's team continued with their work on a new LDAP story for Plone. Configuration on LDAP is now stored in plone control panel with help of bda.plone.ldap.
Jovan and Chris learned how to use tools like git, buildout, doctests, etc.

AJAXifying PloneFormGen
Nenad did more code polishing for his GSOC project. He'll be posting a screen-cast of the current features of PloneFormGen's UI.

PyPI ebuilds
Domen was wrapping up code for his GSOC project and will be posting results shortly on his blog.
Translations
Andrej translated most of slovenian language files for Plone 4. He needs a bit more work to finish it up and then he'll submit it to Plone's internationalization team for review.

Work done on eestec.net
Email notifications
Adam and Arlind, who are now proficient with content rules, made several new email notifications. For example, when an event or news item is published, a notification email is immediately sent to cp@eestec.net for all EESTEC's CPs to see.

Content
Content team updated more content on the site, added several nice banners and call-to-action buttons.
ATGoogleMaps is now used to display a list of EESTEC's LCs. You can see it in action at Local Committees.

Multiple CPs aka. LC Board
Old version of eestec.net only allowed one member to have special permissions on an LC (permissions like approving new members, adding events, ...). This resulted in a bottleneck scenario every time this one person was not available for a few days in a row (due to exams, illness, etc. ).
Nejc and Domen changed that behavior into a more general one: now it's a group called 'LC Board' that has this kind of permission. This enables one LC to have several members being able to do critical LC tasks on the site such as approving new members. We hope this makes the system even more usable to the end user.

ZEO
Our site used to run on one Zope instance with 4 threads. Because of GIL problems, we switched to running 4 Zopes with 1 thread. Nejc also configured buildout to build and configure HAProxy in front to do load-balancing. Portal is now running more smoothly than ever.
Automatic deadlines
With a little bit of help from Products.cron4Plone, we now have automatic transitions when Events hit deadline. On the day of deadline, the state of Event is changed from 'open_for_applications' to 'choosing_participants' which in effect makes it impossible to apply for an event (since the deadline was reached).
Bugs
Nejc, Vedran and Vilmos sqashed most of remaining bugs and minor feature requests:
- https://dev.starzel.de/eestec/ticket/1
- https://dev.starzel.de/eestec/ticket/3
- https://dev.starzel.de/eestec/ticket/15
- https://dev.starzel.de/eestec/ticket/19
- https://dev.starzel.de/eestec/ticket/22
- https://dev.starzel.de/eestec/ticket/26
- https://dev.starzel.de/eestec/ticket/27
- https://dev.starzel.de/eestec/ticket/28
- https://dev.starzel.de/eestec/ticket/46
- https://dev.starzel.de/eestec/ticket/47
- https://dev.starzel.de/eestec/ticket/51
- https://dev.starzel.de/eestec/ticket/52
- https://dev.starzel.de/eestec/ticket/53
- https://dev.starzel.de/eestec/ticket/55
- https://dev.starzel.de/eestec/ticket/59
- https://dev.starzel.de/eestec/ticket/60
- https://dev.starzel.de/eestec/ticket/62
- https://dev.starzel.de/eestec/ticket/65
- https://dev.starzel.de/eestec/ticket/72
Sitsit
Sitsits are a kind of academic table parties here in Finland and are very popular among students in Helsinki. A quote from Wikipedia on the right describes what they are all about.
Our sitsit had a special theme: NetHack, a single-player computer game from 1987. Most of us were dressed as tourists which fits into the theme just perfectly. Meals were also prepared in NetHack fashion: Dragon Soup for starters and Meatballs for the main course.



Rum tasting
After having beer tasting in the first part of the sprint it was not time to also do some proper rum tasting.
We were introduced to a special world of Rum by Mika Jansson. His humorous way of presenting different facts about rums made it all even more enjoyable. We started with cheaper white rums and gradually built our rum repertoire up to agricole rums like J. Bally. Our favorites in the end were Jamaican Appleton Estate and Guatemalan Zacapa.

Conclusion
Thanks again to our sponsors for helping us cover our expenses and for extra motivation they gave to Plone beginners.
Also big thanks goes out to the sprinters who endured endless hours of coding, from early mornings till late nights. You guys were great. Try to catch some sleep now.
On a last note, next EESTEC Plone sprint will likely be held in the third week of November in a Serbian town called Novi Sad in parallel with the annual EESTEC Chairpersons' Meeting. Details following when we have them.



