KDE and a periodic release cycle

I just watched Mark Shuttleworth’s Keynote on aKademy. The discussion afterwards was mainly dominated by his suggestion to switch KDE’s development cycle to a 6 month release cycle. Here is a closer look at what Mark said - and what KDE did in the past.

What Mark said

It is important to point out what Mark said exactly:

If you guys articulate it and make a commitment to shipping something round about the same time as Gnome did, we would made a converse commitment and that is we’ll ship your stuff very shortly after you do.

It is a promise in vapor ware on both side: the KDE team would promise to ship the next KDE version no matter what it costs, and the same is true for Kubuntu. In this regard the priorities must also be clear:

It boils down to this: No single feature is more important than the release.

It would mean that only these features are included which are really stable enough at that time - everything else would have to wait another release cycle to be included with the next KDE upstream version.

Of course, this would have several advantages and disadvantages:

Advantages

The biggest advantage would be that a recent KDE would be included in each new Kubuntu release: this would give the users a much better experience and it would also mean much faster feedback for the KDE developers. Also, the drumbeat resulting from this release commitment would be enormous: K/Ubuntu, Gnome, KDE, the kernel and maybe even OpenOffice all releasing in the same time frame would create a rhythm hard to ignore. Also, it is likely that other distributions would pick up this release cycle: in these days many of the distributions try to keep a periodic release cycle. And it makes sense for all desktop oriented distributions to take over the release cycle of the main desktop environment. Ubuntu does it, Fedora just stated that they are going to do the same.
It would be easier for the distributions to plan and organize releases, and it would enable them to ship the newest technology available all the time.

Disadvantages

There are mainly two reasons against such a cycle I can think of at the moment: first of all the developers would have to get used to this kind of pressure and rhythm, and they would have to adopt it. New features would have to be coordinated quite exact and new, complex features depending on each other would become quite difficult. This is possible, but requires for example a very balanced and thoughtful release coordination team.
The second reason is press: With the current situation there are Open Source news all the time. But when all projects start to sync suddenly there would be just too much information all 6 month with much less notable events in between. Just imagine the news when KDE and Gnome would release new versions in the same week: “KDE vs Gnome”, etc.
Also, smaller projects would have it difficult to gain enough attention if they would adopt the release cycle (although they would get more if they would a-sync their release cycle).

I’m not sure how the press thing would work out for the different projects - maybe it would hurt them, maybe not. Maybe it would even lead to more attention by broader media (evening news and so on).

What KDE actually did

The question is now if KDE could even adopt such a release cycle. Would the project be able to do such a thing? Or would it be so alien that it could hurt the project?
To answer that question I had a look at the KDE 3 releases:

KDE 3 releases over the time
release number release date time difference to
previous release
time difference
between major releases
4.0 (expected) 23 October 2007 154 days that doesn’t count - but:
693 days, roughly 23 months
3.5.7 released 22 May 2007 117 days -
3.5.6 released 25 January 2007 106 days -
3.5.5 released 11 October 2006 70 days -
3.5.4 released 02 August 2006 63 days -
3.5.3 released 31 May 2006 64 days -
3.5.2 released 28 March 2006 56 days -
3.5.1 released 31 January 2006 63 days -
3.5 released 29 November 2005 47 days 467 days, roughly 15 1/2 months
3.4.3 released 13 October 2005 78 days -
3.4.2 released 27 July 2005 57 days -
3.4.1 released 31 May 2005 76 days -
3.4 released 16 March 2005 98 days -
3.3.2 released 8 December 2004 57 days -
3.3.1 released 12 October 2004 54 days -
3.3 released 19 August 2004 71 days 198 days, roughly 6 1/2 months
3.2.3 released 9 June 2004 51 days -
3.2.2 released 19 April 2004 41 days -
3.2.1 released 9 March 2004 34 days -
3.2 released 3 February 2004 20 days 371 days, roughly 12 months
3.1.5 released 14 January 2004 120 days -
3.1.4 released 16 September 2003 49 days -
3.1.3 released 29 July 2003 71 days -
3.1.2 released 19 May 2003 40 days -
3.1.1a released 9 April 2003 20 days -
3.1.1 released 20 March 2003 51 days -
3.1 released 28 January 2003 38 days 300 days, roughly 10 months
3.0.5a released 21 December 2002 33 days -
3.0.5 released 18 November 2002 40 days -
3.0.4 released 9 October 2002 51 days -
3.0.3 released 19 August 2002 48 days -
3.0.2 released 2 July 2002 41 days -
3.0.1 released 22 May 2002 49 days -
3.0 released 3 April 2002 - -

As you can see the time differences between the major releases (3.x) vary massively - and that is not something anyone would like to see. Industry partners need an at least rough release plan, and users are expecting something new every once in a while.
The minor versions where a bit more periodic, but also with huge gaps. However, you could say that there was a minor version every second month.
Just for comparison: Gnome has a major release every six months. The minor releases seem not to be bound to a fixed date: there were 28 days between 2.18.0 and .1, but 49 days between .1 and .2.

So according to these numbers a switch to a 6 month release cycle would be something totally new for KDE!

Worth a try

Although such a drastic change in preparing releases would mean a lot of change for KDE I think it is worth a try. KDE should work on better release politics anyway to get at least some sort of stability. It is much easier to talk to corporate users, ISVs and distributors if they can predict the next releases. And KDE has matured enough to listen also to corporate users.
And of course: it would be more fun for the users: having a major release in a regular time frame would be more fun to follow. Last but not least it might even attract new developers.

So there are two questions: first, will KDE switch to a fixed release cycle, and second, will KDE switch to a 6 month cycle? But that is up to the developers, they will have the last word. Until now now one spoke out - except Sebastian Kügler, who is opposed to that idea I’m anxious to hear other comments about that topic.


Add to Technorati Favorites| del.icio.us | Stumble it!| Slashdot   Slashdot It!

Leave a Reply

authimage