Six-monthly releases: OpenBSD shows the way
By Sam Varghese
Tuesday, 08 December 2009 02:03
Page 1 of 2
Six-monthly releases have become something of a talking point in free and open source software circles after the problems Ubuntu has faced with users unhappy over major bugs.
While Ubuntu, which is now five years old, appears to struggle with this pace of development, the OpenBSD project has been doing six-monthly releases for the last 12 years - with no major bugs.
The head of the project, Theo de Raadt, says he came to the six-monthly schedule as a result of his experiences with NetBSD; he started the OpenBSD project in 1996 after being shut out by the NetBSD team.
"NetBSD was dragging out releases - 'not ready yet!' - which ended up full of stupid bugs which should have been caught but were not, and I felt this was because it was just a replay of the vendor model of software development: 'product driven', 'must meet milestones' 'ship the new candy we planned'," he said in an interview with iTWire.
"Doing it for fun, we had an opportunity to make it about ourselves. The minute I write some code or fix it, I want as many people to run it so that they can spot bugs while my mind is fresh. The commercial model does not match that desire."
De Raadt says that if software is not always ready for users to use today - every day - then it never will be. "Prod our users to test often, fix bugs while we can still remember the area of the code," is his motto.
"The Linux developers say the same things, but their commercial sales buddies doing official releases act just like Sun, IBM, Apple, Microsoft... except without the testing manpower or feedback and dollar-based backing to ensure things are fixed on time," he says with something of an air of superiority.
"I don't think both approaches are possible. I don't think there is a hybrid. The hybrid models are failing to produce the promised quality."
He does make some compromises but feels they are worthwhile. "The #1 complaint we do is that we don't support old software. Well, it isn't in my nature to care about old problematic software I don't remember because we are slowly replacing it because it has problems... a lot of our users have realised that they can't have it both ways."
De Raadt says that by the time one release takes place, the developers are already six weeks into the next development cycle. "The release is a branch off the main development
tree. In many other projects, it is a live branch, as in a separate team cuts it off and then keeps making minor tweaks to it to make sure it is a good release (why? that is because the mainline is crap).
"In OpenBSD, the release branch is a dead branch. The day it split from the trunk it was determined to be good enough for making a real release. Without any changes. That is because the trunk is good stuff."
CONTINUED






