At last week’s GUADEC (GNOME Users’ And Developers’ European Conference), held in The Hague, Netherlands, Neary Consulting published the results of a very interesting GNOME Census study exploring "who develops GNOME." Of course, readers will already know that GNOME is the default desktop environment for Fedora and Red Hat Enterprise Linux, as it is for many other desktop Linux distributions, such as Debian and Ubuntu.
The study makes interesting reading for the GNOME community and customers. With a breakdown of leading contributors by name, it allows credit to be given to the large number of unsung developers who have worked for many years to make GNOME a powerful and rich desktop environment, able to hold its own against competing proprietary desktops. Equally important, the study allows end users and customers to identify which vendors are committing time, resources and development/support funds to work with the GNOME community to advance the desktop. For the prudent customer who is planning to deploy an open source/Linux/GNOME desktop it makes a lot of sense to choose a vendor with the engineering capabilities, financial commitment and support infrastructure to enable a successful deployment.
The study defined GNOME as all modules in an official GNOME 2.30 release set (Platform, Desktop, Platform bindings, Admin, Developer tools), or is an external dependency of GNOME that was developed primarily for use in the GNOME or KDE desktop environment. As with any study, there were tradeoffs to be made about how data should be analyzed, for example how to assess contributions from developers using their private email addresses and also their work addresses – or voluntary and paid development work. Also, how to handle contributions from volunteers who submitted their work using an email address provided by a third party (which might then gain undeserved credit). The study organizers tried hard to ensure that these complexities didn’t undermine the results.
A snippet from the study outlines the size of the GNOME project: The GNOME 2.30 release and external dependencies consists of 189 modules, including 28 modules in the platform, 104 modules (mostly applications) spread across the developer, admin and desktop suites, and 57 external dependencies. Combined, this represents 13 years of coding, and over 468,000 individual changesets. Since the project’s inception, over 3,000 individuals have committed changes.
The study identified that while over 70 percent of GNOME committers are unpaid participants in the project, 70 percent of the code commits for GNOME come from paid participants. This effect is explained by the fact that paid participants contribute more than unpaid participants, as their employers will be pleased to hear! To further complicate matters, many contributors consider some of their contributions to be part of their paid work and other contributions to be voluntary unpaid work. The following table, extracted from the report, pulls everything together, showing per-vendor contributions for the past 10 years:
This table clearly shows the power of the open source development model, with just over 40 percent of code commits being made through voluntary efforts or by organizations that could not be identified from contributors’ email addresses or other sources. It also shows how Red Hat and Novell combine to contribute over 25 percent of the code commits, both being far ahead of other organizations. The showing of other companies is revealing, with some tiny outfits impressively punching above their weight, while other big names are essentially contributing very little.
In addition to listing contributing companies, the study contains a list of the leading individual contributors. It is interesting to note that nine of the top twenty contributors are Red Hat employees.
The study also has an interesting section on GNOME maintenance. As it says: Most developers prefer writing new features or developing new applications over maintenance of existing code. It is interesting to consider where the maintenance burden falls for bug fixes, regular releases and maintenance updates when code has been part of GNOME and has been stable for some time. As mentioned earlier, this is an important consideration for a customer who is looking to deploy an open source desktop in their business.
The picture speaks for itself, highlighting the scope of the professional Linux vendors – Red Hat and Novell – on the core components, combined with the important work done by volunteers.
We are obviously very pleased to see the results of the study, which highlights the importance we place on contributing technology advancements back to the community. The GNOME Foundation hopes to conduct additional studies in the future and we expect that Red Hat will continue to show leadership in the development and support of the open source desktop – for example, Red Hat is playing a large role in the development of the GNOME Shell, an important part of the upcoming GNOME 3 release.