By Jonathan Corbet
August 14, 2012
On August 15, 1997, Miguel de Icaza
announced
the launch of the GNOME project. In the following years, GNOME has seen
more than its share of ups and downs; it must be considered one of the
community's most successful and most controversial projects. This is a
moderately significant anniversary, so it makes some sense to have a look
at where GNOME came from and speculate on where the project may be heading.
In the mid 1990's, the Linux desktop experience was provided by such
aesthetically striking components as the fvwm window manager, the Xaw
toolkit, and the Midnight Commander file manager. That was more than
enough for many early Linux users, quite a few of whom, having
written their
own custom modelines to get X working with their monitors, felt no need for
a desktop system beyond what it took to get their xterm windows arranged
nicely. Every community has its discontents, though. In this case, one of
the first groups to get itself properly organized was the KDE project,
which started hacking on an integrated desktop environment in 1996 and
which, by the middle of 1997, had some interesting results to show.
The problem with KDE, of course, is that it relied on the Qt toolkit, and
Qt was not, at that time, free software. This decision led to epic flame
wars that put current squabbles (GNOME 3, or systemd, say) to shame;
they just don't make flames like they used to. Some attempts were made to
get Trolltech to change Qt to a free license, but Trolltech was not yet
interested in considering such a move. It is interesting to
speculate on what might have happened had Qt been relicensed in 1997 rather
than three years later; one of the deepest divisions within the free
software community might just have been avoided.
Then again, maybe not. We're not entirely happy without something to fight
about, and Emacs-versus-vi, by virtue of predating Linux entirely, was old
and boring even in 1997.
The stated goals of the newly-launched GNOME project were straightforward
enough: "We want to develop a free and complete set of user friendly
applications and desktop tools, similar to CDE and KDE but based entirely
on free software." The project would be based on the GTK toolkit
which, to that point, had only really been used with GIMP. The project
also planned to make heavy use of the Scheme language — an objective that
faded into the background fairly quickly.
GNOME itself remained very much in the foreground. Compared to KDE it had
a different license (even after Qt was freed), a different implementation
language (C vs. C++), and a different approach to the desktop — all fodder
for plenty of heated discussions. Miguel was from early on an admirer of
Microsoft's ways of doing software development and tried to push many of
them into GNOME. Companies were formed around GNOME, including Helix
Code/Ximian (eventually acquired by SUSE) and Eazel (which followed the
classic dotcom trajectory of burning vast amounts of money before its
abrupt death). There was clearly a lot of activity around GNOME from the
very beginning.
The project produced three major releases: 1.0 in 1999, 2.0 in 2002, and
3.0 in 2011. The 2.0 release provoked a flood of criticism as the result
of the project's focus on removing options whenever possible. A perceived
arrogance on the developers' part (one described
some user-requested
window manager options as "crack-ridden bogosity") was not
helpful. The GoneME
fork was started in response, but did not get very far. Over time,
enough features returned to the desktop, and things improved enough
overall, that most users made their peace with it and stopped complaining.
The 3.0 release, instead, has provoked a flood of criticism as the result
of the removal of options and features. A perceived arrogance on the
developers' part has not helped the situation much. The MATE desktop fork has been started in
response; it's too early to say just how far it will get. Meanwhile, a few
features have found their way back into subsequent 3.x releases, and some
users, at least, have made their peace with it and stopped complaining.
Others, needless to say, have not.
Where to from here?
Fifteen years in, it would be hard to argue that GNOME has not been a
success. The project is arguably the most successful Linux desktop
available. It has an advanced code base, lots of developers, a well
established foundation with a fair amount of corporate support, and more.
There must be no end of free software projects that can only dream of the
level of success that GNOME has achieved.
That said, there is a visible level of concern within the project. The
relentless criticism of GNOME 3 has proved discouraging to many
developers, and the millions of new users that GNOME 3 was supposed to
attract have not yet shown themselves. Distributors are making noises
about trying other desktops, and Ubuntu, arguably the highest-profile
GNOME-based distribution, has gone off in its own direction with yet another
fork. Meanwhile, the desktop in general looks like a shrinking target; the
cool kids have gone elsewhere and GNOME seems to not be a part of it.
In this situation, what's a project to do?
Allan Day's GNOME OS
post shines some light on what at least some of the project's
developers are thinking. Much of it looks like a continuation of GNOME's
recent work —
completing the GNOME 3 user experience for example. Some seems like
basic sense: making the system easier to build and test would be near the
top of list. Others are unsurprising, but may not get the results the
project is after.
The post never uses these words, but the GNOME project clearly wants to put
together yet another "app store" infrastructure wherein third parties can
offer proprietary applications to users. For whatever reason, enabling
proprietary applications has always been seen as the path to success; the
whole point of the venerable Linux Standard Base exercise was to attract
that kind of application. Making it easier to add applications to the
system can only be a good thing, but it will not, on its own, cause either
users or developers to flock to the platform.
GNOME also clearly plans to target tablets and handsets. Again, the
objective makes sense: that is where a lot of the buzz — and the money — is
to be found. The problem here is that this space is already crowded with
free (or mostly-free) alternatives. Android dominates this area, of
course; platforms like
Tizen, Plasma Active, webOS, Firefox OS, and ChromeOS are also looking for
users. It is far from clear that GNOME has something to offer that will
make it stand out in this crowd, especially since Allan does not expect a
"touch-compatible" version of GNOME 3 for another 18 months. As Eitan
Isaacson put it recently:
Our weak areas are apparent: We are not mobile and we are very far
from it. We will never achieve any significant social critical
mass, we have had limited successes in embracing web technologies,
but the web will always be a better web. Deploying “apps” is a
nightmare.
He has an interesting counter-suggestion: GNOME, he says, should aim to be
the platform of choice for content creators. There could be some potential
here; this is not an area that large numbers of projects are targeting, and
incumbents like Mac OS seem vulnerable. Where content creators lead,
others will often follow. There are some obvious obstacles (codecs, for
example), but this is a target that could possibly be reached.
Most likely, though, GNOME will continue its drive for mainstream success
and those millions of new users. The project might just get there: it
retains a solid code base, many talented developers, and a supporting
ecosystem. One should never underestimate what a determined group of
developers can accomplish when they set their minds to it. The rest of us
should either support them or get out of the way and let them follow their
path. Watch this space over the next fifteen years, and we'll all see what
they are able to achieve.
(
Log in to post comments)