The world's going mobile...
Ubuntu designed Unity with today's man-machine interface/interactivity changes in mind. The goal behind Unity is to design an environment that is at home on larger touch-based devices like tablets, but still works well on full-fledged workstations. I like the ideas behind Unity, but I agree with the author that it's not ready for general use (yet), and it needs some added flexibility.
The GNOME organisation, on the other hand, just doesn't seem to get it. It seems like GNOME.org is changing things (especially with regard to its migration to Gnome Shell) for the sake of changing things, and is tired of doing things a certain way because "everyone else does it that way."
In a post on the Linux Mint forums:
-- -- http://forums.linuxmint.com/viewtopic.php?f=60&t=38536&start=0
I expounded on why GNOME.org is doing what it's doing, and included this excerpt from Lucas Rocha's blog:
-- -- http://blogs.gnome.org/lucasr/2008/06/15/notes-on-the-future-of-gnome-problems-and-questions/
-- -- -- -- -- -- -- -- EXCERPT BEGINS -- -- -- -- -- -- -- --
Position is about where we place GNOME in the innovation ecosystem. So far, the relationship between GNOME and distributors is so that we release our official modules (organized inside the desktop, platform, admin, devtools and bindings suites) and distributors adapt and package those modules to integrate in their systems. Normally, they also add a bunch of modules that were (fully or partially) developed with GNOME platform but are not officially part of GNOME suites. Then, when everything is integrated and stable, distributors release their products with GNOME. This model has two interesting aspects.
The first one is: GNOME is invisible to users. From end-users perspective, they are using Ubuntu, Fedora, openSUSE, Foresight, Debian, Gentoo, (add-your-favorite-distro-here) on their personal computers, not GNOME. (Note that I’m not talking about geeky users but about real end-users who don’t know much about technology). This is (and will be) even stronger on consumer products using GNOME platform such as internet tablets, cell phones, PDAs, etc. To verify that, just pretend you’re just an end-user and have a look at the websites of most of desktop distros: they talk about desktop but rarely mention GNOME. (Note that I’m not making any judgements about this here. I’m trying to just bring the fact to the table).
The second aspect is that distributors redefine the user experience. Most of distributors change in some way the default GNOME desktop to fit and integrate nicely with their products. openSUSE has a completely different panel layout and use gnome-main-menu. Most of distros use Firefox instead of Epiphany. Latest releases of the major desktop distros ship with Compiz by default instead of Metacity. Also, they integrate desktop modules that are not directly provided by GNOME: Pidgin for instant messaging, Rhythmbox or Banshee for music management, F-Spot or GThumb for photo management, Beagle or Tracker for desktop search, and the long list continues.
So, based on those aspects, what can we say? First: even with our current development process where we release suites of official modules to distributors, it’s not clear inside GNOME whether we are “user experience definers” or “component providers for custom user experiences”.
... ... ... (paragraphs excluded for some brevity) ... ... ...
This makes us stay in a unclear position: we kind of define the experience – but only on certain topics (this has a lot to do with the lack of a defined audience and our development process). That brings me the following questions:
1. Should GNOME be a “user experience definer” or “component provider”? Do we need to choose?
2. Does the GNOME decisions about the official modules really matter? If so, at what level?
My answers to those questions are:
1. We should be component providers – but in a special way. In my opinion, we should platformize the user experience in a way that our modules can be easily reused in different contexts or products. In practice, this means: providing highly configurable and pluggable core components; ... refreshed toolkit which embeds sexy UI elements and interactions; and more. In order to properly be component providers, we would need to provide a super-powerful platform though. ...
2. Yes, our module decisions matter. But they only *really* matter if they are related either to platform or to the “core” desktop components (panel, session, nautilus, keyring, settings daemon, capplets, etc).
So, in reality, the ecosystem around GNOME is demanding a lot of flexibility in the platform and desktop – specially from stakeholders producing mobile devices and other custom user experiences based on GNOME.
-- -- -- -- -- -- -- -- EXCERPT ENDS -- -- -- -- -- -- -- --
GNOME.org seems to be of the opinion that the whole desktop paradigm is broken, that people are still single-taskers (Gnome Shell makes you jump through a few hoops to open more than one discreet instance of the same application), that smart tags and behind-the-scenes indexing should essentially completely replace hierarchical application/document organisation, and that second, third, etc. monitors are superfluous (Gnome Shell is at present almost completely unusable on multi-monitor rigs).
IMHO, the only advantage to GNOME.org's current slate of work is that they've gone a long way toward cleaning up GTK/GTK+ and making things more consistent at the application/component library level with GNOME 3.x. (It should be noted that GNOME 3.x does not equate to Gnome Shell. GNOME 3.x is a framework; Gnome Shell is a desktop environment/manager.)
Unity is an interesting thing "to play with," and has some neat brainstorming behind it, but still needs a lot of work. So until it has a few major revisions under its belt, I'll stick with good ol' GNOME 2.x, with its "legacy" desktop paradigm that, for all intents and purposes, pretty much works the way I want it to, without getting in the way...