The consistent objective of Ubuntu has been to attract new users and remove obstacles to ease of use, which is also the hub of Shuttleworth's argument for promoting Unity over the GNOME Shell and Wayland over X.org. Ubuntu (and the work of many individuals in other communities) has made Linux and free software an easy proposition for new users, and Unity is consistent with Ubuntu's self-imposed mandate to popularise Linux and free software.
As Shuttleworth puts it. "I've put a lot of my leadership energy into encouraging various communities – both Ubuntu and upstream – to be welcoming of those who see software through the eyes of the new user rather than the experienced hacker. This is a sea change in the values of open source, and is not something I can hope to achieve alone..."
For an increasing number of users the desktop is little more than a point of entry to the world of images, talk, text and music that is the web, and for Shuttleworth the job of a future desktop is to blur the distinction between web and desktop. "It's not about how fast you appear to boot", he has written, "it's about how fast you actually deliver a working web browser and Internet connection. It's about how fast you have a running system that is responsive to the needs of the user."
The issue is whether the minimalistic demands of a netbook or smartphone interface, which may use a keyboard, a click or a touchscreen, are equal to the demands of a conventional desktop user with an entirely different set of priorities.
The programmer, secretary or graphics designer who uses the desktop as a workbench asks a different set of questions to the user whose primary interest is connectivity with the outside world, and the challenge for a universal interface is to provide a smooth transition between the workbench and the web, without compromising the virtues of either.
The great leap forward
The promise of a freshly minted desktop (Unity) for the Spring 2011 release of Ubuntu is a brave gesture to the future by Shuttleworth and Canonical. Users can jump ship at the drop of a SUSE or a Fedora. Even though a vanilla implementation of GNOME may be available as a secondary option, judgements will be made by users on what is put before them, and Unity has a long way to go. Just as importantly, Ubuntu runs the risk of putting a distance between itself and the GNOME community, from which much of its desktop software is derived.
Separation from the GNOME development process may seem vital to Unity because it allows decisions to be made in house. Unity is top-down. GNOME is consensual. Unity is the embodiment of Shuttleworth's personal vision for the desktop, presumably enhanced and re-enforced by Canonical's in-house designers, but the cause of Unity is not helped by its abstraction from the GNOME Community.
Unity is a direct competitor to the GNOME Shell, which is the community's own approach to a similar set of problems. The ideas behind the GNOME shell came about through process and the concurrence of developers.
Dave Neary recalls that the GNOME Shell "grew from the ideas of the Pyro Desktop and the Online Desktop & BigBoard, both show-cased at GUADEC back in 2007 in Birmingham. The core design grew from a User Experience Hackfest in 2008 which happened during the Boston Summit, and has evolved in a public wiki. The source code has been public from the start, with a public mailing list, and a designer who has been openly communicating design thinking, and crying out for outside contributors."
The inference is that the Canonical developers have not played well with the upstream community. This matters to the GNOME developers because Ubuntu is the most popular Linux on the street, and the success or failure of the GNOME Shell may raise painful questions about the future direction of GNOME and the GNOME community.
The price of unity
Shuttleworth has indicated technical differences which make it difficult to bring Unity and the GNOME community together. The Ubuntu developers prefer Compiz to Mutter. Zeitgeist, which tracks and predicts user activities and preferences, is seen as an essential part of the Unity framework, but has been dropped by the GNOME developers "due to cultural differences in its development model."
From the outside looking in, Unity is the fulfillment of a personal vision and the natural culmination of Shuttleworth's mission to take free software to the masses. Unity is free software, available under the GPL, but is intrinsically top-down, presumably because in-house development and trust in Canonical designers ensures the integrity of the vision and speed of development.
Dave Neary made a peace offering to the Ubuntu developers in the shape of a 'modest proposal' to "have a bake-off, Unity vs GNOME Shell, under the big tent of the GNOME project," which served to highlight some of the philosophical differences between the Ubuntu project and the GNOME community.
"GNOME has a long and considered stance on copyright assignment, born from painful experience," he noted. Ubuntu developers sign up to a community agreement which devolves the ownership of the code to Canonical and expressly allows the code to be released under proprietary licences, which is unworkable for the GNOME developers. The Ubuntu developers use bzr and Launchpad, the Gnome developers use Git, and never the twain shall meet.
"I'm proposing building bridges and reaching resolution on an issue which could cause a lot of conflict in GNOME if left to fester...', wrote Neary in a follow-up comment. "What is the long-term benefit to the free software desktop in having Unity continue as a Canonical-owned 'experiment'?"
The troubling possibility for GNOME developers is that the bake-off is happening outside the big tent of the GNOME project, and if Unity fulfils its promise and the GNOME Shell fails to pick up users, the GNOME community may have no choice but to adopt Unity as a default shell for GNOME.
GNOME can only adopt Unity if Canonical's requirement for copyright assignment is dropped, or Unity is forked. Copyright assignment is an impossibility for GNOME developers, who see it as a disincentive to individual and third party developers, and a fork is a point of disunity.
Given these possible outcomes, Canonical's decision to go it alone can only bear fruit for all parties if Canonical relinquishes the requirement for contributors to sign its community agreement and passes ownership of Unity back to the wider GNOME community, or live with the disruption to the GNOME community that Unity might prove to be.
For other feature articles by Richard Hillesley, please see the archive.