Hugin 2010.2.0 has been released more than a week ago. I was traveling when Bruno made the announcement officially sanctioning the second release candidate, moving new features such as mosaic mode and masking one step closer to the user. But this is not the last step.
As usual it is a source-code only release. Contributors will build binaries out of it that will eventually trickle down the official distribution channels in the coming weeks and months. As usual the beggars are faster than the contributors.
While the project strives to make user’s life easy with binaries, the only way to release source code and binaries for all platforms at the same time would be to introduce an artificial delay in the release process, which in my opinion is a very bad idea trying to creep in from the world of proprietary software.
There is a natural sequence of events before a new feature hits the user’s desktop: first there is source code, then it is compiled, then it is tested. When the tests are conclusive the source code is packaged and distributed to builders who compile user-friendly installers for distribution. It does not happen overnight. The source code is naturally ready before any binary.
Marketing controls the release process in the world of proprietary software. Everything is done in secret. The effort of keeping everything under the radar screen until a big-bang launch is justified by the resulting publicity and boost in sales. Everything is delayed until the launch campaign is ready, the product is ready, the distribution channels are ready. The release announcement is made with the sole purpose of motivating consumers to buy.
It is the opposite dynamics in Open Source. Delaying the source code release until all installers for all platforms are ready to ship only hinders progress. It is better to let the developers move on with further improvements rather than freeze them while waiting for a synchronized release. Since we don’t sell the software, there is little benefit to such synchronization. Builders and distributors will take care of the details of producing binary installers for the end-user asynchronously in due time.
Open Source development is a continuum. Strictly speaking, every time a developer pushes a changeset into the repository he is making a “release”. He is releasing his newly add code to the general public. There is even an RSS Feed of such releases. It’s interesting to developers and others that are threading on the bleeding edge, but to the average user this is mostly boring overload.
The purpose of a release cycle is to motivate contributors to polish up their contribution – whether they are code, translations, manuals, tutorials, installers. The release announcement is the point where the focus of the release cycle shift from code/bugfixes to preparations for distribution. Stay tuned for binary distribution to start as soon as possible.