When GNOME began in 1997, the project had a clear purpose. At the time, there was no other free desktop, since KDE relied on the then-proprietary Qt toolkit. But today, looking at the mounting evidence of problems within the project and the denial of many project members, I have to ask: Does free software still need GNOME? Or has it outlived its usefulness?
The fact that such questions seem reasonable today is a bizarre reversal. Years ago, KDE became unquestionably free software. Yet the rivalry between GNOME and KDE, sometimes friendly, sometimes fiery, has long driven the development of the desktop to the benefit of all. The need for cross-compatibility, to say nothing of the hopes of equaling or surpassing each other, improved both desktop environments.
But now? Desktop-oriented users can choose not only from GNOME and KDE, but also Unity, Xfce, Mate, Cinnamon, LXDE and half a dozen others, all offering a convenient, customizable interface. With so many choices, at first you might imagine that the decline of any one alternative doesn’t matter much, no matter how distinguished its history.
However, in GNOME’s case, such a conclusion would be superficial. While a permanent decline in the relevance of GNOME would not be fatal to the larger free software community, it would be crippling in several ways — a loss of developers, applications, and resources from which the community could take several years to recover.
The loss of developers
One reason to be concerned about GNOME’s future is that for years it has been a major free software project. Over the years, it has attracted a community of active developers — perhaps 40, if you accept Benjamin Otte’s estimate, which probably means another 80-120 semi-regular contributors. If GNOME continues to decline, many of those developers could be lost to free software.
According to the GNOME Census carried out by Neary Consulting, about one third of GNOME developers are employed by corporations to work on GNOME.
In the short run, most of these developers will probably continue to work on GNOME. Some, however, might switch jobs if GNOME no longer seems relevant. Others might find that their corporate sponsors withdrawing or lessening support, and lack replacement sponsors.
For instance, if, as Otte suggests, core GNOME development is being funded largely by Red Hat, what happens if Red Hat decides GNOME is no longer worth attention? In such a case, formerly funded developers might continue to contribute as volunteers, but become less active because of the need to balance GNOME involvement with earning a living.
Similarly, the two-thirds of GNOME developers who volunteer might also drift away. While many developers write code for more than one application, the GNOME Census suggests that most of those applications are within the GNOME project — presumably where they are most comfortable. Some would probably drop out rather than find a new community. Others, given the traditional rivalries, might not care to contribute to KDE or any other desktop environment.
I know of no study that records how contributors act when a free software project ceases to exist. However, a continued decline in GNOME’s fortunes might easily mean a loss of dozens of experienced developers to both GNOME in particular and free software in general. In fact, that loss may already be happening, if you believe Otte.
The Loss of Application Development
One of the main advantages of a desktop is that it allows applications to share resources. For instance, instead of including its own printer driver, an application can call on the desktop’s printing sub-system.
But when the supporting desktop is no longer developed, its dependent applications are orphaned. For a while, the applications can continue to function using old libraries and resources. Perhaps new functionality and dependencies are added to packages, increasing their size. But sooner or later, unless a great deal of rewriting occurs, the applications became obsolete.
Yes, the code is still available, since it is free-licensed. Yet if the eco-system that supports the code no longer exists, it must be re-created, forcing developers to look backward rather than ahead.
Ironically, we have already seen a parallel situation in GNOME 3’s dropping of most panel applets — a perfectly good tradition that many users relied on for everyday activity. In response, Linux Mint restored applets in Mate’s and Cinnamon’s re-creations of GNOME 2, satisfying users at the expense of slowing innovation.
Although these developments may have been necessary, it’s sobering to think that the most noteworthy developments this year on the free desktop have been revivals of a desktop first released a decade ago. Imagine a similar situation on a larger scale, and you have some idea of what the continued decline of GNOME might mean.
The consequences would be particularly severe because GNOME is not only one of the two largest eco-systems of applications in free software, but also one of the most distinctively designed.
Applications like Brasero, Evolution, Rhythmbox, and Shotwell all share a common philosophy embodied in GNOME’s Human Interface Guidelines. This philosophy can be summarized as interfaces designed for the most common use-cases, and the elimination of anything else.
Although this design is not for everyone (I don’t care for it myself), many prefer it, and probably beginners find it easy to navigate. If nothing else, GNOME’s minimalism is the logical counterpoint to KDE’s “completist” approach, which, while favored by experienced users, can often be overwhelming and full of irrelevances for others. Having the two extremes as an example can only be a benefit in a community that still doesn’t think about usability as often as it should.
The Indirect Influence of GNOME
When first Ubuntu, then Linux Mint, overtook Debian in popularity, the distribution’s role began to change. Instead of being the desktop of everybody’s choice, it became a resource center for other distributions. In some ways, Debian became less obvious, but, if anything, its influence increased, with the result that seventy-seven percent of all active distributions are based directly or indirectly upon it.
A similar transformation may be taking place with GNOME. GNOME 3 itself may be unpopular, but that is largely because of the GNOME Shell, the interface that users see.
GNOME’s back end, however, is as influential as ever. It is the basis for Ubuntu’s Unity, and for Cinnamon as well. These three desktop environments offer three very different computing experiences, but when we see statistics for the Linux desktop in 2012, they will almost certainly equal or succeed the user shares of KDE and Xfce, the most popular desktops for 2011. Together, they could easily equal forty-five percent or more.
This figure, more than anything else, suggests why GNOME’s immediate future is so important. Contrary to initial appearances, GNOME’s presence is as strong as ever, if not stronger. If it declines, then much of the desktop market will be sent scrambling to recover, spending more of its efforts on recovery than on new developments.
Too Big to Fail
For many, concern about GNOME is probably difficult. To all appearances, GNOME brought its problems upon itself, seduced by the false objectivity of usability studies and ignoring user responses. Even now, after some prominent speakers have acknowledged reasons for concern, some participants in the GNOME community continue to deny that problems exist.
However, if you care about free software, this position is hardly enough. Free software advocates with no ties to GNOME are not in the position of watching from shore while someone else’s ship sinks. Instead, the condition of GNOME is something that should concern the rest of us almost as much as it should project members.
GNOME is not about to disappear completely. But its continued decline seems all too probable, and the effects of that decline will spread throughout the community in the form of fewer developers, unsupported apps, and support for other major desktops. Even if GNOME’s collapse might somehow improve the community — which I doubt — the process would almost certainly cause more problems than the result could ever hope to solve.
That, in the end, is why I continue to write about GNOME’s fortune. Not to troll for page hits or out of rancor against the project, but because what happens to GNOME affects anyone who cares what happens to free software.