GNOME – from abyss to common ground
By Richard Hillesley
GNOME's recent development has been widely criticised, from Linus Torvalds to its own contributors. Richard Hillesley looks at the background to this and the possible ways forward. Can GNOME ever be the defacto favourite desktop of Linux again?
Linus Torvalds has been saying rude things about GNOME, and Benjamin Otte has been staring into the abyss. GNOME 3 hasn't been the easy success the GNOME developers might have hoped for, and users are said to be leaving for Xfce, LXDE and Cinnamon, all of which replicate in some aspect or another of the GNOME 2 user experience.
This may or may not be as bad as it sounds for the GNOME community. A year ago Torvalds announced that he was "using Xfce. I think it's a step down from GNOME2, but it's a huge step up from GNOME3." And he asked Dave Jones, Red Hat employee and Fedora maintainer: "Could you also fork GNOME, and support a GNOME-2 environment? I want my sane interfaces back. I have yet to meet anybody who likes the unholy mess that is GNOME-3." Yet by June this year, he had returned to GNOME and was struggling with the GNOME 3 extensions, and still finding them inadequate.
Torvalds has history with GNOME. Back in 2005 he said of the emergent GNOME 2 that the "'users are idiots, and are confused by functionality' mentality of GNOME is a disease. If you think your users are idiots, only idiots will use it. I don't use GNOME, because in striving to be simple, it has long since reached the point where it simply doesn't do what I need it to do."
"Please, just tell people to use KDE", he wrote.
Right or wrong, Torvalds is not alone in his past or present criticisms. Users don't like changes that interrupt their workflow, and those who are working at a classic workbench on a laptop or a PC see little advantage in changes that are designed to enhance the user experience on mobile or touch devices. GNOME 2 is liked for its simplicity and straightforwardness, some of which came from the GNOME Human Interface Guidelines and the philosophy Torvalds derides. The inconvenient truth is that the desktop doesn't fit all, and is a series of compromises. No desktop will satisfy the demands of every user.
GNOME was first conceived in the late 90s as a rival to KDE, and a challenger to the hegemony of Windows on the desktop. It came into existence because Qt, the toolkit for KDE, wasn't free. GNOME was the free software alternative to KDE – it was based on the GTK toolkit, which was originally written for GIMP, and in its early years, development was led by Miguel de Icaza and Nat Friedman, who took their inspiration from Microsoft and ActiveX and COM.
GNOME quickly attracted developers and became the default for many distros, notably Red Hat and Debian, and later Ubuntu. The problems with the licensing of Qt were eventually resolved, and GNOME and KDE fought it out for dominance of the Linux desktop. Companies such as Eazel and Ximian were formed around GNOME development, and other companies, including Intel, Sun and Nokia, employed a number of GNOME developers. Linux may never have challenged Microsoft's hegemony on the desktop, but it had a choice of interesting and imaginative desktop environments, and a thriving community of developers.
The virtue of GNOME 2 is that it is easy to learn and easy to use. But the world is changing. Devices are becoming mobile, the desktop is a different beast, and if GNOME doesn't keep up, it will be left behind, a relic of the past, unable to meet the needs of a new generation of users – or so the theory goes. The GNOME shell and its related applications have to be ready for the world that awaits them.
GNOME 3 has given the developers a new goal to work towards and some answers, but has upset a significant number of users. For their own reasons, openSUSE has settled on KDE, Debian has moved to Xfce, Linux Mint has gone for Cinnamon, and Ubuntu has chosen Unity – both of these last two utilise the GNOME 3 code but discard or replace the GNOME shell. Between the developers and the users there are chasms of misunderstanding, some of which may disappear as the shell and its configuration tools mature. The bad news for the GNOME developers is that the users don't appear to be waiting around to find out.
GNOME's problems are reflected in its relationship with Ubuntu, the distribution that has done more than any other to popularise GNOME. Ubuntu has not always had an easy relationship with its upstream communities, and Unity has encountered some of the same problems as GNOME 3. Users aren't happy with an interface that radically disrupts their workflow.
Jono Bacon, who is Ubuntu's community manager and a long time fan of GNOME, says that "people paint Canonical as if it has never changed or evolved, and GNOME as if the developers should always be working on GNOME 2.0 because it is really fun to contribute to and work on. But if you're a desktop developer, maintaining the same software is going to get boring, and will stop the possibility of the software developing."
But Bacon also reflects the view of many when he says, "what worries me as a fan of GNOME is that they're burning their bridges", and there has been "a certain amount of digging heels in the ground" and glossing over of criticism. "They've done a really good job with GNOME shell. It has really revitalised the project, but it worries me that the approach they're taking with the people side of things is burning bridges, and I'd hate to see that harming the project."