Sauna Sprint daily digest #2: Tuesday

Plone is a byproduct of community members' co-operation

These are notes from the Sauna Sprint daily debriefing #2. It was intention we’d done this already yesterday, but unfortunately we had problems with boat and swamp.

The current head count is around 27 living souls, plus or minus few depending on how you define living. We split to different teams, each working on its own topic.

Team tutorial video

This team works to create new Plone video installation and usage tutorials. It will be in the form of screencast with voice over narration.

The team has created the first voice over, screencast and now editing it together.

Team add-ons fail

Plone add-ons come with various quality of instructions. This team is working to make Plone add-on experience more user-friendly: installing, uninstalling, add-on area, individual add-on instructions.

Around 200 lines of issues collected.

Team blogging

This team collects and publishes a blog posts, participant information, etc. motivational information about the sprint and the sprinters.

Both EESTECers and Plonistans are being covered.

Currently the team has collected the bio of everyone and prepares to put the information out to a wiki page.

Team auto restart

This team is working to make Plone auto-restart perform correctly and timely manner. You just edit .py file and hit the browser refresh button and the changed code is loaded correctly. The team is utilizing the fork trick introduced in this blog post. The resulting work goes under a project name sauna.relaod.

Currently the team has managed to make the file-system monitor using Python WatchDog backend. Already 13 seconds have been shoveled off from Zope restart time of 30 seconds.

Team Logistics

This team feeds the coders with firewood, food and beer.

Yesterday the team prepared went to a shop, prepared a lunch and brought a guitar (for live music).

The day plan for Wednesday is to collect blueberries for pies and mushrooms and later cook them in the big oven of the cabin.

The new beer is on its way, though has temporary taken some steps backwards.

Team Greek

This ad-hoc team prepared the dinner.

It takes four Greeks to create one omelette.

Team collective.table

This is Google Summer of Code team is working on new collective.table add-on for Plone. Yesterday was API talk, but the progress was slow due to lack of caffeine.

Team TinyMCE

This is a Google Summer of Code team and is working on making Plone’s TinyMCE experience better.

Yesterday was spent testing on a JS/CSS compressor to make TinyMCE load faster.

Uncompressed: 19 request / 900 kb. Compressed 50% less requests, 700 kb.

Team hardcore

This team of EESTEC member was formed to introduce hardcode Plone development for newbies.

The team members actually wanted it themselves. They will regret this decision later.

Sometimes you need solo heroes


Plone butterfly preparing to hatch

A lonely coder in the forest

Fueling the hungty developers with potatoes

A statue honoring Plone developers

\"\" Subscribe to RSS feed Follow me on Twitter Follow me on Facebook Follow me Google+

Sauna Sprint day 1: Sunday (technical & motivational)

Now it has begun: Sauna Sprint 2011 – an open source event in Finland for Plone & Python hackers and EESTEC students.

The first day of Sauna Sprint was spent introducing new EESTEC people to Plone. Almost everyone got Ubuntu installed, there was a short crash course for IRC and then we started installing Plone.

We had a bunch of EESTEC students as a test subject and our goal was to map obstacles in the process of installing Plone for local computer for development. We got some interesting results.

The data was collected on whiteboard where everyone was free to express any problem he or she had during the installation. The advisors also monitored the user group for possible problems and made notes.

Aperture Science test subjects installing Plone in hope they’ll get a cake if they success

Good job, but the cake was a lie.

1. Plone is #%!!”€&! difficult, but we can fix it

The comments below are collected from the whiteboard.

Don’t make assumptions in the documentation – people are tabula rasa (i.e. how to use cd command and so on)

Documentation needed to install gcc, PIL dependencies etc. on OS level

No good instructions how to set-up Python with virtualenv (was being fixed in the sprint). Buildout actually does not work with the system Python out of the box: you need to break your OS

People try to run buildout by “cd bin ; ./buildout” – it does not work and the error message is confusing

Unified Installer – ZEO installation is broken (need clarification what was broken)

Detect Python version in buildout and don’t try to run on incompatible version

When creating first Plone site input field has label “Path identifier” – people try to enter Plone FS path there

README.txt in Unified Installer needs updates

ZopeSkel template plone4_buildout should autodetect the latest Plone version (now was 4.0.1)

Update the out of the box Plone installation front page to contain more developer friendly instructions too Show add-on version compatibility as the first item on the page – if now compatibility set warn that the compatibility is unknown (same kind of warning if no updates for one year)

Have an easy way to report broken packages

Force a process to improve add-on documentation in, especially regarding installation. Only 1/5 themes was successfully installed by the test personel without guidance, mostly due to lack of instructions and version incompatibilities.

Some work in progress on PiratePad regarding the installation of Plone.

2. Evening program

We had Sauna time in Hervanta, student style. EESTEC lived up to their reputation as party animals.

Delicious pizza was baked, though the audience loudly disagree when the pizza was burnt enough to be eaten

Magic Toni Sause



\"\" Subscribe to RSS feed Follow me on Twitter Follow me on Facebook Follow me Google+

One-liner to copy remote MySQL database to local computer

The following commands dump a MySQL database from a remote server and create a corresponding database on the local computer.

The instructions have been tested on OSX and Linux (Ubuntu/Debian). On-line SSH compression is applied, so transferring SQL files, which are text content and compress well, should be around 6x faster than normal.

(Well… actually the script is six lines, but because this is my blog I’ll decide it doesn’t count)

The script

  • Remotely runs mysqldump and puts the result to a local file
  • Creates a MySQL database and corresponding user with full access to this database
  • Reads the content of mysqldump to the newly created database
 ssh -C -o CompressionLevel=9 mysqldump -u YOURDATABASEUSER --password=YOURDATABASEPASSWORD --skip-lock-tables --add-drop-table YOURDATABASENAME > YOURDATABASENAME.sql
mysql -uroot -p
create database YOURDATABASENAME;

Leave out create database and GRANT for the subsequent runs – all data on the local computer will be replaced.

\"\" Subscribe to RSS feed Follow me on Twitter Follow me on Facebook Follow me Google+