Midgard in 2008
As it was for the Zend folks, 2008 was quite a busy year also in the Midgard-land. I think the last time there was so much activity and energy in the project must've been sometime in the early days. Here are some highlights from it:
Midgard 2: finally a reality
The big news of 2008 was that Midgard 2, the long-time holy grail of the project finally became a reality: something you could actually install and run. In addition for all C code having been rewritten from scratch, the Midgard 2 stack also includes language bindings to PHP, Python and Mono, and a completely new MVC framework, the MidCOM 3. Inter-process communications are facilitated by D-Bus and XMPP.
A stable release targeted for mobile and web application developers will be released in March 2009, codenamed Vinland. This will make Midgard an interesting storage framework, regardless of whether you're working on GNOME, Maemo or PHP.
New communications, new release process
How to communicate Midgard's uniqueness was a big discussion during the summer, and as a result we settled on a new, more fitting positioning:
Midgard is an Open Source persistent storage framework. It provides an object-oriented and replicated environment for building data-intensive applications.
The theme was expanded further in FSCONS when we started describing our vision of enabling users to have their data with them, at any time, and on any device.
In addition to the new communications, we also clarified the release process by joining the larger free software release synchronicity movement. From autumn 2008 onwards, there will be a stable Midgard release happening every six months, followed with smaller bug fix or feature enhancement releases.
The first release to follow this new pattern was Midgard 8.09 Ragnaroek, a long-term supported release that will be the last generation to include the old Midgard 1.x codebase.
To make Midgard installation easier, we also started using the openSUSE Build Service, which enables us to provide binary packages to many popular Linux platforms.
Leaner and meaner Midgard
A lot of focus was also put into making Midgard run faster and on less resources. The whole Midgard 2 architecture has been designed to be faster right from the beginning, but many improvements have happened also in the old, stable Midgard branch:
- Caching full page contents
- Serving file attachments via X-Sendfile or a separate Lighttpd installation
- Switching from Prototype javascript framework to jQuery, which can then be served via Google
- Lots of performance improvements via autoloading and other features enabled by dropping support for PHP4
Rebirth of the OpenPSA project
OpenPSA, the management software package for consultancies originally developed by Nemein had fallen out of maintenance during 2007. Proving the resilience of free software projects, the project was reborn in 2008, thanks to efforts of Andreas Flack from Content Control.
During autumn the software was largely refactored to fit the Ragnaroek architecture, and a new major release will be coming soon out as part of other Ragnaroek releases. After this OpenPSA should be more visually appealing, significantly faster, and generally more usable.
And a personal view
For me personally 2008 was also quite hectic... I spent a lot of time traveling between conferences and almost moved to Istanbul and then didn't. The new year we welcomed in Rome in a quite random company, of which there will be another post later.