GNOME
In 1996, Miguel de Icaza embarked on an adventure that would transform the landscape of free systems: creating a complete graphical desktop environment for GNU/Linux. The GNOME project (GNU Network Object Model Environment) addressed a very real frustration. UNIX systems ran smoothly on servers, but their user interface remained rudimentary. How could they hope to attract the general public with such austere tools?
The situation became more complex with the emergence of KDE, which relied on Qt, a library whose license conflicted with free software principles. The community faced a dilemma: should they recreate Qt as free software or pursue something else? The GNOME team chose the latter. Emulating an existing API seemed like a dead end, as demonstrated by the difficulties of projects such as GNUstep, Wine, or LessTif.
The choice fell on Gtk+, a graphical library created for GIMP’s needs, the image editing software developed by Peter Mattis and Spencer Kimball. Written in C but designed with objects in mind, Gtk+ provided a solid foundation. Components like Gdk Imlib for image management and VFS for file manipulation were built around it.
The project’s beginnings reflected the spirit of free software: open discussions on mailing lists, source code shared via CVS, direct repository access for proven contributors. Version 0.0 was released in August 1997. March 1999 saw the arrival of version 1.0, immediately adopted by Red Hat Linux as its default environment.
GNOME was built in a modular fashion. Libraries like libgnome and libgnomeui coexisted with basic applications and development tools. This organization provided flexibility because everyone worked on their component without getting in each other’s way. The interface followed strict style rules to ensure overall consistency.
From the outset, internationalization was among the priorities. The GNU gettext system translated interfaces into numerous languages. GNOME became accessible to users worldwide, far beyond the English-speaking sphere.
The year 1999 saw the birth of two companies around the project: Eazel and Ximian, the latter founded by Miguel de Icaza. Eazel developed Nautilus, the file manager, but closed its doors in 2001. Ximian fared better by offering an enhanced version of GNOME and tools like Evolution, before Novell acquired it in 2003.
A milestone was reached in 2000 with the creation of the GNOME Foundation. This structure coordinated the efforts of various stakeholders and preserved the initial objectives. The foundation combined a democratically elected board of directors and an advisory board that brought together companies and non-profit organizations.
That year, Sun Microsystems made a notable choice: GNOME replaced CDE on Solaris. The project gained recognition in the professional world. Sun went further by creating a laboratory dedicated to accessibility, opening the environment to people with disabilities.
The technical architecture relied on CORBA (Common Object Request Broker Architecture) to enable component communication. This technology allowed interaction between applications written in different languages. The developers created ORBit, a streamlined version of CORBA tailored for GNOME’s needs.
The project encouraged the use of scripting languages like Scheme and Perl. This openness simplified application customization and automation. The GNOME card game used Scheme to define the rules for different solitaire variants.
Red Hat established itself as a major contributor, notably through its advanced research laboratory. The company implemented daily compilation that improved code quality by quickly detecting problems. Novell, Collabora, and Intel also contributed to the effort.
GNOME established a rigorous development cycle with major releases every six months. This sustained pace, innovative for the time, included phases of progressive freezes: first features, then the interface, and finally translations. This method stabilized releases without rushing.
The 2.0 version of 2002 consolidated the project’s architecture. It improved component integration and further harmonized the interface. Subsequent versions continued this work of consistency while adding new capabilities.
GNOME demonstrated that a free project can bring together volunteers and companies around common objectives. Its balanced governance, blending community democracy and economic stakeholder participation, inspired other initiatives. The project proved that a free alternative to proprietary environments could achieve a professional level, both in quality and functionality.