Friday, May 30, 2008
The evening of Thursday May 22nd saw a crowd of contributors to Open Source projects gather at our offices in Switzerland for the 3rd Google Zurich Open Source Jam. These events are a way to meet up with other local open source contributors and share some knowledge in a convivial setting. On the night 37 people attended, representing a wide range of Open Source projects.
Of course it's not just Free Beer, food, and conversation. Some of the attendees had volunteered to give lightning talks about projects they were involved in, and these proved to be a wonderfully eclectic mix of information.
Karel kicked off the talks with a presentation about Ronja, a system for providing point-to-point ethernet links using light. Instead of the perhaps more typical laser based system Ronja makes use of bright LEDs, cheap magnifying glasses, and associated electronics. Currently capable of achieving 10Mbps full-duplex over 1.4km, Ronja systems are widely deployed in Eastern Europe, and work continues on increasing the speed and the range. Ronja is completely open source - not only is the documentation on how to build a Ronja end-point freely available, all the tools used in designing and developing Ronja are Open Source, such as Qcad, Gschem, Autotrace, and Sodipodi.
The next session was by Giacomo on the topic of AutoKernConf. This seemed to be one part "Introduction to AutoKernConf" and one part "A call to arms for interested people to help contribute", which is exactly in the spirit of Open Source Jam. I hope he was able to drum up some interest.
The first round finished with Paul explaining the importance not only of writing tests for your code, but of being able to measure how much of your code those tests cover - not in terms of lines of code but also the full set of branches and paths that might be executed as your software runs. His slides on test coverage are available, and the Perl Devel::Cover module which he maintains is an excellent example of the principles he was espousing.
We took a break - running around taking pictures meant that I didn't get to speak to half the people I'd hoped to, but the snatches of conversation I overheard suggested that everyone was having a suitably technical time, with plenty of knowledge being shared.
Three more people had signed up to talk in the latter half of the evening.
Harry encouraged everyone to consider the design principles behind MicroApps when they design their front-end/back-end infrastructure. Essentially, use HTTP as your RPC transport mechanism, REST as your architecture, and data representations such as YAML or JSON, rather than anything more heavyweight (or, worse still, inventing your own RPC mechanisms). And try and build self-contained functional units that can be reused wherever possible.
Matthias took the opportunity to plug the next OpenExpo event in Zurich, a multi-day conference and trade show for Free and Open Source software. He also made sure that everyone was aware of Hackontest, a 24 hour programming competition that will be taking place at OpenExpo (and that Google is sponsoring - see this blog post about Hackontest for more).
Finally, and winning the prize for "Most Unexpected Topic", Philipp gave an excellent impromptu explanation of why gliding (also known as soaring) was on topic for this audience. It turns out that there is a thriving community of Open Source gliding enthusiasts writing software like XCSoar, which turns a PocketPC + GPS in to a tactical glide computer, alerting the pilot to hazards such as power lines, and helping them determine whether it's going to a safe landing back at the airstrip or a somewhat bumpier arrival in a local field.
Oh, and that "wide range of Open Source projects" I mentioned at the start? They were: FreeBSD, Perl, Subversion, Ruby, NetBSD, net-dri, pkgsrc, cjabber, Gentoo, Squeak, Lively Kernel, links, OpenEmbedded, Scribus, Huemul, Debian, bsdproject search, Fink, Disconnected Sync., Ramaze, DocWiki, Eclipse, Yang, OpenSolaris, GNUStep, Croquet, (Open)Darwin, Openmoko, m0n0wall, Media Portal, and bcollect.
The Zurich Open Source Jams are semi-regular events. To stay informed about the details of the next one, or to catch up on discussions about previous ones, join the Open Source Jam Zurich Google Group.
Ed note: Post updated to correct a typo.