exclusive content published on April 27, 2006
Despite the head start that KDE enjoyed, the large number of KDE users
and developers, and Linus Torvalds personally endorsing KDE, GNOME has
won the desktop environment battle. The final victory came with the
third piece of a corporate trifecta, giving GNOME the official nod from
Red Hat, Sun Microsystems, and finally Novell. The question is, will
the triumph of GNOME lead to the rise or downfall of the Linux desktop?
Novell goes GNOME
Red Hat and Sun Microsystems have long supported GNOME as their primary
desktop environment. In August, 2003, Novell acquired
Ximian, a GNOME oriented company. Then, in November, 2003,
acquired SUSE, the second most popular Linux distribution and a KDE
oriented company. For a time, it appeared there was an internal
struggle to determine the official desktop direction of Novell SUSE.
After the departure of several high profile SUSE employees from Novell,
GNOME was anointed as the
default desktop. Novell pledged to continue support for both KDE
and GNOME, but the writing is on the wall. With Red Hat and Sun already
supporting GNOME, it probably made business sense for Novell to move in
the same direction.
Beating the dead equine
The main argument I've heard for GNOME is that its license is more
business friendly because the libraries are licensed under the LGPL while KDE
libraries are under the GPL. Apparently, the LGPL provides more
flexibility for vendors to integrate various bits of code into their
distributions without GPLing all it. I am not a lawyer so I don't know
how much this weighed in the decision of each company to go GNOME.
A couple of Linux heavyweights have come down on the side KDE. The most
notable is Linus
Torvalds himself, saying "I personally just encourage people to
switch to KDE." Another luminary to side with KDE is the Slackware
founder and leader, Patrick Volkerding,
who stated "I do believe it would be best to let Dropline produce Slackware's
GNOME and quit wasting my own time with it. Probably 1/3 of development
time here is used maintaining GNOME, and *most* of the bug reports I get
have something to do with GNOME (and aren't bugs I caused, or can fix)."
My own myopia
I've created "hello world" programs using KDevelop and GTK+, but never
written a substantial application in either. KDE is based on C++ and
GNOME is based on C. While I am not a fan of C++, the KDE class library
is clean, consistent, and well documented while I found the GNOME model
confusing. To me, the relationships in GNOME among GLib, GTK+,
Pango, ATK, GdkPixbuf, and GDK were harder to grasp. Then, there is a segment
of the GNOME world that is pushing Mono (a clone of Microsoft .NET/C#).
Technically, KDE seems better thought out while GNOME seems to have
grown organically out of the Gimp libraries.
As a user, I think both environments
provide roughly equivalent feature sets and I can be happy and
productive in both. Each has some programs I think are best of
breed. In a vacuum, I would go with KDE, but I'd much rather
use GNOME if all the programming talent from both camps could be
focused in the same direction. Even 75 percent would be enough
to smooth out whatever rough edges there are in GNOME.
Finally, I think the desktop environment will grow less significant over
time. I am strong advocate of web applications. Web apps, whether they
are based on LAMP, JSP, J2EE, or Ruby on Rails offer all the benefits of
centralized deployment like a mainframe, but can also be run without a
network connection if the server stack is installed locally. I like that
the same code can be used as a multi-user network application and a
single user local application.
Beggars have to be choosers
A logical question is do we have to pick one over the other? The answer depends
on what you want out of Linux. If the goal is to advance Linux on the
desktop, I think the answer is yes. There are countless obstacles to
overcome before Linux gains popularity as a desktop, and I don't think
everyone who uses Linux cares if it does. But for Linux to get
commercial desktop applications and more hardware vendor support, there needs
to be one desktop standard. It is just too expensive to support two.
This doesn't mean KDE would ever go away. It just means KDE would
become a power user's choice like the dozens of other window managers
and environments that exist. I've faced the fact that GNOME has won the
battle and I'd better learn more about it. The benefit in the long run
is more applications for the Linux desktop and better hardware and
driver support.
Trickle down theory
While Linux as a server infiltrated the business world from the bottom
up, I think the desktop will have to go from the top down. The people
who brought Linux into the datacenter and the people who use Linux as a
desktop today are by definition early adopters. They are power users
not afraid to tinker with their computers that for most people are
mysterious black boxes. I've even had trouble getting IT colleagues to
try out desktop Linux because they don't want to invest the time.
Most people are busy and have enough going on in their lives that they
won't try Linux until they are introduced to it at work (i.e.,
forced to use it).
Most large desktop deployments will be driven and implemented by the big
dogs in business, and will likely use GNOME. If desktop Linux can make
inroads in the work place, it will become a lot less scary to the rank
and file. It would also create an incentive for people to try it at
home to improve their job performance.
With more Linux users at home, large hardware vendors have more
incentive to offer it preloaded (and supported). That's when Linux on
the desktop will really take off. I cringe at using the words
"domino effect", but that's the way I see it happening, if it does.
I think the immediate hurdle is to standardize on the desktop. If the
community refuses to get on board, and so far they have, no progress
will be made. I have been ambivalent about it up to now, but see the
wisdom in standardization.
The Long and Winding Road
Settling on a single desktop is just one step in a long, twisty path
toward getting desktop Linux into the mainstream. GNOME has won the
corporate battle and needs the support of the broader community.
Because many people view KDE as technically superior
and there are some egos at stake, that may be a bitter
pill to swallow. Even if the community does coalesce around GNOME, it
in no way guarantees success, but the continued fragmentation of the
desktop guarantees it will languish.

This work is licensed under a
Creative Commons Attribution-NonCommercial 2.5 License.