Time Series Prediction Approaches

Time Series Journal

Subscribe to Time Series Journal: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get Time Series Journal: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Time Series Journal Authors: Jason Bloomberg, Progress Blog, SmartBear Blog, APM Blog, Jnan Dash


GNOME vs. KDE: A license to sell

Trolltech's Qt-licensing plan gives GNOME an edge on the desktop

(LinuxWorld) -- This week I'm going to explain why GNOME is likely to emerge as the most popular desktop platform.

In case you hadn't noticed, I've failed to address the issues of language support in my comparison of GNOME/GTK and KDE/Qt. After giving the topic a good deal of consideration, I concluded that it would be a wasted effort.

Both environments have ample language bindings (including bindings for Python, for example). One may have better support than the other for any given language. You rarely see any popular programs for GNOME/GTK written in anything but C or perhaps C++, and I've almost never seen any programs for KDE written in anything other than C++. Unless you have specific requirements for a project, I'm not sure why the abundance of language bindings would be very important. It doesn't seem to have been important for most popular projects.

Therefore, the big issue is whether you want to use C or C++. I suspect you've already made up your mind on this, so any discussion of pros and cons would probably do little more than generate flames. As much as I enjoy reading flames, this week I'd rather get to the predictions.

Technical irrelevance

DOS and Windows proved long ago that products do not always "win" based on technical merit. We fans of OS/2 never fully understood how Windows users could tolerate cooperative multitasking or how users ran out of resources after starting up three applications. Yet they did... even when we showed them how beneficial the OS/2 features were.

With this in mind, it should be obvious by now that products usually win for a variety of reasons. These reasons extend beyond technical merit and include good marketing, convenience, monopoly leveraging, politics, restrictive license agreements and other contracts, ignorance... the list goes on.

It is tempting to believe that free and open-source software are immune to these non-technical influences, but they aren't. Indeed, I would go so far as to say that desktop environments are least immune to non-technical circumstances. If I'm right, it doesn't matter which side of the fence you're on when it comes to the technical merit of GNOME/GTK or KDE/Qt, because it is doubtful either will win based on technical merit.

It's not the apps, stupid

I contest the assertion made by many that GNOME/GTK will win because that's the basis for all the best open-source applications. They point to Open Office 1.0, StarOffice 6.0, Gnumeric, Gnucash, Mozilla and Abiword as the top examples. These applications are often more feature-rich than the KDE counterparts. How much better they are than KDE applications is open to debate, but let's assume for a moment that the difference is indisputable. I simply do not see how this translates into a win for GNOME/GTK. I run all of the above applications under KDE, and prefer to use them that way. If the day comes when the GNOME integration is outrageously compelling and you cannot use these integrated features under KDE, then perhaps I'll change my mind. Until then, the argument seems to fall somewhere between weak and comatose.

Nevertheless, I predict that GNOME/GTK will eventually usurp the lion's share of open-source desktops. It all comes down to money. In this case, the money depends upon software licensing.

License to sell

Before I get down to the bottom line, let me set aside one myth. Some of you who are critical of Qt do not realize that it is entirely possible to create free (GPL) applications with Qt that run on Windows. It's a common misconception because the free edition of Qt for Windows is a relatively recent addition to the Qt lineup. There is still one other drawback to the Qt edition for Windows that remains. It is binary-only. You don't get the source code like you do with the free edition of Qt for Linux or other X11 platforms.

Still, the Qt-criticizers are right on one major point: If you want to sell proprietary Qt-based applications on any platform, you're going to have to purchase development licenses from Trolltech. The licenses can be a bit pricey, but not unreasonably so.

However, the Trolltech license plan contains what I feel is an unreasonable constraint. It says that you cannot develop an application using the free edition of Qt and then later decide to make that application proprietary and purchase Qt licenses to sell the application. You must decide up front whether or not you want to build and sell a proprietary application and purchase the licenses before you start work.

I can see why Trolltech takes this approach. They are selling developer licenses, not distribution licenses. It makes sense that they want you to purchase the licenses before you start developing anything, but the distinction seems rather petty in practice. I cannot imagine what danger there would be in permitting others to develop a project first, decide afterward to sell it as a proprietary product, and then pay Trolltech accordingly.

If I were Trolltech, I would gladly look the other way when people violate this premise, just as long as the company buying the licenses was honest about the number of licenses they would have had to buy had they purchased them before development started.

Free beer trumps honest wages

There are some interesting consequences, even assuming Trolltech decided to be flexible about this licensing strategy. Suppose that Sun had decided to build StarOffice 6.0 around Qt instead of GTK? What could Sun do when it entertained the possibility of charging for StarOffice? Well, plenty, if you want to get right down to it. Sun could have built a business on support for StarOffice, for example.

However, that's not what Sun wanted to do. Sun wanted to sell StarOffice without necessarily giving away all of its source code. If Sun had built StarOffice on Qt, it wouldn't have been able to decide willy-nilly to start charging for StarOffice without first convincing Trolltech to overlook its condition for purchasing licenses ahead of time. Even if Trolltech conceded, Sun would have to fork over the money for those developer licenses.

If this is the case, Sun is actually treating GNOME and GTK as if they were under a BSD-style license. It is actually the Lesser GPL (LGPL) that is largely responsible for making it easy to develop and sell proprietary applications based on GNOME and GTK, but there are ways to squeak around the GPL, too.

Regardless, it is difficult to criticize Sun for selling StarOffice, especially after Sun donated the bulk of the source code to the Open Office project. It is also difficult not to feel as if Sun is exploiting the hard work of these open-source programmers without having to pay them. I don't want to make it sound as if the situation is quite as simple as that. It isn't. It would be a shame if Sun backed GNOME and GTK over KDE and Qt simply to avoid having to pay Trolltech for the tools. If that had anything to do with the choice, then I can see why Richard Stallman would prefer people to adopt the GPL and not the LGPL whenever possible. The LGPL allows abuse of the principles behind free software& if it doesn't invite abuse altogether.

Why would Sun donate the source code in the first place? Timing, perhaps. Sun was probably just as swept away by the open-source revolution hype as everyone else. What matters is what Sun does now. I could certainly be wrong, but I suspect Sun is hoping the typical corporate mindset will drive people toward purchasing StarOffice instead of downloading OpenOffice -- not because they get any more value by purchasing it from Sun, but because that's how they are used to getting software.

It doesn't really matter what Sun thinks, however. The bottom line is that the LGPL is the reason why I believe GNOME/GTK will eventually become the de-facto standard desktop. It's not a flattering reason, but I can't help but think that there are too many developers who are more interested in free-as-in-beer software than free-as-in-freedom. As long as that attitude predominates, then Trolltech will only attract those who feel there is some merit in paying people for their work even if it reduces the profit line a little.

Stay tuned

Next week I'll address the one scenario where I believe KDE and Qt could shock GNOME advocates and mop the floor with GNOME and GTK.

More Stories By Nicholas Petreley

Nicholas Petreley is a computer consultant and author in Asheville, NC.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.