Skip to content

3.5 or 4.0: that is the question

Saturday, 12 March 2005  |  cornelius schumacher

It's interesting to observe KDE development these days. Since the 3.4 code was branched from the main line, the repository is open for new development again.

For past releases this meant committing frenzy with new features flying in, development branches being merged and all the creativity bound by the feature freeze breaking loose. This time it's different. It's quiet. It's the silence before the storm. I know that there is new and interesting code around, but it doesn't seem to find its way into the main development line yet. So what's going on?

We are facing some big changes. KDE 4 appears on the horizon. Qt 4 is getting finished and KDE prepares to make use of it. This will get us a whole bunch of new opportunities and some nice improvements like better performance, smaller memory footprint and full accessibilty support. KDE 4, the first release based on Qt 4, will also be the first release since more than three years breaking binary compatibility of the KDE libraries. This will give us the opportunity to clean up the API and elevate the KDE libraries to the next higher level.

Other than that there also is the imminent move of our version control system from CVS to Subversion, which will be a challenge, because it will be the biggest CVS repository moving to Subversion until now. We also already had some heated debates about the KDE build system and the Windows port of KDE. You see that we are looking forward to some pretty exciting times.

In addition to these quite fundamental changes of the framework and the environment, there of course are lots of new features, usability improvements, code cleanups and bug fixes waiting to be implemented. These areas are the ones where the most people are involved, where the most effort is spent, and what will have the most impact on the end user. How will this be done?

A surprisingly short part of the Future of KDE Development thread was about actual relase planning after 3.4. Common opinion seems to be that there will be a 3.5 release at some time and later the full-blown 4.0 release with all the new bells and whistles.

But how much of this will happen in parallel? Personally I'm pretty sure that I can't do both, working on applications for 3.5 and on the framework for 4.0, including porting the applications to the new framework. I have a long list of things I would like to implement, todos, new features and crazy ideas (I will post the list later). Most of them could well be done for 3.5, some would have to wait for 4.0. So, 3.5 or 4.0: that is the question.

My feeling is that it would be best to first do a 3.5 release and wait with Qt 4 porting and KDE 4 library development until the final version of Qt 4 actually is released. This would allow us to take profit of the stable and well-understood 3.x framework to implement some of the outstanding features with maximum efficiency and focus on the KDE 4 framework when we have a stable Qt 4 as base.