Rapid Development, aka Chaos

Now is a shitty time to be a GNOME user. However, I’ve realized that’s because now is a really interesting time to be a GNOME developer. The linux desktop is undergoing a period of transition, one that hasn’t been seen since about 2002 when GNOME2 began to replace GNOME1. ((KDE users went through the same thing in 2007 when KDE4 replaced KDE3, to much uproar.))

After ten years of development, the core GNOME libraries have grown old and crusty and not suited to the post-desktop world that phones and tablets and connected TVs are ushering in. Sure, linux was doing fine for a specific arrangement of screen, keyboard, and mouse, but if linux wants any presence on devices that don’t have these peripherals, it needed to change.

For developers, this is a lovely time to throw spaghetti at the wall and see what sticks. There’s a ton of innovation happening right now and lots of experimentation is going on that is exciting to watch. Every day brings an exciting new demo of an idea for workspace management, or search functionality, or UI innovation.

But these new desktops simply aren’t ready yet. The current situation from a user perspective is one of multiple, competing, buggy, slow, unfinished desktops that don’t live up to the functionality that users are accustomed to. There’s Unity, Gnome-Shell, GNOME Classic, Trinity, and KDE4. Many of these desktops use completely new user interaction systems, introducing a lot of unfamiliar concepts while tossing out a lot of a desktop user’s knowledge.

Change is hard, and change from something that worked to something that doesn’t is a recipe for angry users. The transition from GNOME2 technologies to GNOME3 has clearly been bungled. Distributions were too quick to push users out of very capable desktop environments and the “fallback” options (especially GNOME Classic) are too well-hidden and half-baked. Distributions needed to give users more time — I mean literally years — to try out the new desktops and reject them if necessary. Lots of people are sitting on Ubuntu 11.04 or even 10.10 for fear of being pushed into using a new desktop. ((Long-Term Support versions are probably supposed to fill this gap, but many people have already moved to Ubuntu 10.10, which is past 10.04LTS))

I look forward to switching to Unity or GNOME3, but only when I’ve decided that they are ready for me. I’m old enough now that I just can’t put up with a lot of bullshit, and I will stick with what works for as long as I need to. So I’m using GNOME Classic with a bunch of hacks that make it work like my old desktop. It’s probably too late to resurrect the trusty GNOME-panel interface, but there should be a clear, simple migration path from GNOME-panel to the new GNOME Classic Mode. Sure, load Unity or GNOME3 by default, but if the user selects GNOME Classic the old settings should be invisibly ported as best as possible.