Practical Technology

for practical people.

When is an open-source project ready?

June 26th, 2008 · 2 Comments

I’ve been getting told that my recent review of KDE 4 wasn’t fair because KDE 4 isn’t really ready for prime time. My response: “When is any program, especially an open-source program, ready?”

I’m not making light of this criticism of my review. WINE, everyone’s favorite way to run Windows programs on Linux, just reached 1.0 status after 15-years in the making. Its developers freely admit that while it’s very, very good at what it does, it’s far from perfect. None-the-less, many of us, including yours truly, have been using WINE for more than a decade.

Is it ready? It’s not only been ready, it’s been useful for years. It’s also only now a 1.0 release.

Or, let’s take a look at Firefox. I think we can all agree that Firefox 3 is great, but back in 2004, when Firefox 0.93 arrived, it was substantially stronger than its era’s browsers than 3.0 is better than its contemporaries. At the time, no one suggested that, even though it ran rings around Internet Explorer 6, Firefox 0.x wasn’t just ready, it was great..

Of course this problem is far from being unique to open source. Vista, even after the release of SP1, isn’t ready for serious work. Going back in history, anyone who ever used Windows NT, knows NT wasn’t really usable until NT 4 SP3 appeared. This came years after NT was first ‘released.’ And, I might add, Microsoft named its first version, Windows NT 3.1.

Clearly, regardless of who made what, you can’t go by version numbers.

On the surface, KDE 4.04 looks to anyone’s eye like it should be a mature system, not, as one writer had it, “KDE 4.0.x is not a user-centric release but rather a technological release to show off technologies and provide an environment for developers.” OK, to me that says “Alpha” that doesn’t say 4.0 of anything and certainly not a 4.04 release. 4.04 indicates to me, and I’d say most people, that a program is not only ready to go, it’s been ready for some time now. It certainly doesn’t suggestion, as this description does, that KDE 4.04 is little more than a step up from a demo.

My point is that you can’t have it both ways. If you use numbers that indicate that what you’re shipping is a mature product, your program is going to be judged that way. And, I won’t be the only one doing just that.

I spend a lot of time kicking around proprietary programs that really aren’t ready for users. Don’t expect me to use another, kinder standard for open-source programs.

Users, not even open-source users, don’t spend their time digging around developer lists. They have better things to do, like, oh say, using the software. Saying that if only you looked at what the programmers had to say about their baby you’d really understand is a cop-out. Proprietary companies have used this kind of excuse for years. I really hate seeing open-source developers using it.

Besides, users, developers, and reviewers have all been saying KDE 4 is ready. I quote from the KDE 4 release announcement (p://www.kde.org/announcements/4.0/), of January 11th 2008, “KDE 4.0 is the innovative Free Software desktop containing lots of applications for every day use as well as for specific purposes.” Not “will be,” “is.”

So, here the bottom line. You put code out there, you get judged on it. That’s what open source is all about. Open source software development is evolution in action. The good programs get support, the bad ones wither and die. I hope that KDE 4.1 is better, but KDE 4.0 really has left a bad taste in my mouth. Since, in the past I always preferred KDE to GNOME, I really hope that KDE 4.1 turns out well.

Finally, there is another bigger problem here. And, that is, that there really is no rhyme or reason to releases numbering or descriptions. One person’s alpha code is another’s gold code. We need, proprietary and open-source, developers and end-users, a system of describing software so we have at least have level ground to talk intelligently about a given program’s status.

We’d still argue over where a program should fit into the level playing ground, but at least when we said: “That’s beta,” we’d at least agree on what beta is, even if we still fuss until we were blue in the face about whether the program du jour really is beta or not.

Tags: Desktop · Development · Linux · Open Source · Operating System

2 responses so far ↓

  • 1 john // Jun 27, 2008 at 1:37 pm

    “KDE 4.0.x is not a user-centric release but rather a technological release to show off technologies and provide an environment for developers.”

    And if only it were what the above sentence suggests! KDE4 is not even that unless you define a showcase of technologies a piece of sluggish, slow as hell, constantly crashing software… I just define that as *bad promotion*.

  • 2 drseergio // Jun 27, 2008 at 5:00 pm

    I do agree that for most of the users out there it is not easy to really understand their versioning, perhaps they could be more explicit. On the other hand, it is not really fair to assess end-user experience on a release that is intended for a technology review. Same goes for any open-source project (closed source as well, as you mentioned), meaning that you don’t really expect your compiz-fusion v0.0.0.0.0.1 proof-of-concept work flawlessly but you do, however, expect to see something new.

    Yes, version 4.0 does sound like being mature and ready but I guess you should think of x.0 versions of KDE as being separate products. So what we’ve got right now is a rather raw 1.0 version which does work but does not really work well on a end-user desktop. I can’t judge on that myself because I switched to XFCE (got a slower machine). I even think that thorough reviews are positive for the project so that common issues could be resolved in the later releases.

    As a side note, concerning the current execution speed of KDE4: I can’t really judge but the new KDE packs a huge set of innovative services so it shall take some time to polish them and run smoothly. I really appreciate that there is a such strong movement in open-source desktop development area – having new ideas and innovations is really cool!