Canonical and the Ubuntu Foundation
While Ubuntu is an organization driven by a community, several organizations play an important role in its structure and organization. Foremost among these are Canonical Ltd., a for-profit company introduced as part of the Ubuntu history description, and the Ubuntu Foundation, which is introduced below.
As mentioned above, Canonical Ltd. is a company founded by Shuttleworth with the primary goal of developing and supporting the Ubuntu distribution. Many of the core developers on Ubuntu—although no longer a majority of them—work full-time or part-time under contract for Canonical Ltd. This funding by Canonical allows Ubuntu to make the type of support commitments that it does. Ubuntu can claim that it will release in six months because releasing, in one form or another, is something that the paid workers at Canonical can ensure. As an all-volunteer organization, Debian suffered from an inability to set and meet deadlines—volunteers become busy or have other deadlines in their paying jobs that take precedence. By offering a subset of developers paying jobs, Canonical can set support and release deadlines and ensure that they are met.
In this way, Canonical ensures that Ubuntu's bottom-line commitments are followed through on. Of course, Canonical neither funds all Ubuntu work, nor could it. Canonical can release a distribution every six months, but that distribution will be much better and more usable through contributions from the community of users. Most features, most new pieces of software, almost all translations, almost all documentation, and much more are done outside of Canonical. Instead, Canonical ensures that deadlines are met and that the essential work, regardless of whether it's fun, gets done.
Canonical Ltd. was incorporated on the Isle of Man—a tiny island nation between Wales and Ireland that is mostly well known as a haven for international businesses. Since Canonical's staff is sprinkled across the globe and no proper office is necessary, the Isle of Man seemed like as good a place as any for the company to hang its sign.
Canonical's Service and Support
While it is surprising to many, fewer than half of Canonical's employees work on the Ubuntu project. The rest of the employees fall into several categories: business development, support and administration, and development on the Bazaar and Launchpad projects.
Individuals involved in business development help create strategic deals and certification programs with other companies—primarily around Ubuntu. In large part, these are things that the community is either ill-suited for or uninterested in as a whole. One example of business development work is the process of working with companies to ensure that their software (usually proprietary) is built and certified to run on Ubuntu. For example, Canonical worked with IBM to ensure that their popular DB2 database would run on Ubuntu and, when this was achieved, worked to have Ubuntu certified as a platform that would run DB2. Similarly, Canonical worked with HP to ensure that Ubuntu could be installed in the factory on their laptops for sale in Europe as an option for their customers. A third example is the production of this book, which, published by Pearson's Prentice Hall imprint, was a product of work with Canonical.
Canonical also plays an important support role in the Ubuntu project in three ways. First, Canonical supports the development of the Ubuntu project. For example, Canonical system administrators keep servers that support development and distribution of Ubuntu up and running. Second, Canonical helps support Ubuntu users directly. Canonical does this by offering phone and e-mail support to users and by arranging for support contracts with larger companies and organizations. This support is over and above the free (i.e., gratis) support offered by the community—this "commercial support" is offered at a fee, and is either part of a longer-term flat-fee support contract, or is pay-per-instance. Finally, Ubuntu supports other support organizations. Canonical does not seek or try to enforce a monopoly on Ubuntu support; it proudly lists hundreds of other organizations offering support for Ubuntu on the Ubuntu Web pages. Instead, Canonical offers what is called second-tier support to these organizations. Because Canonical employs many of the core Ubuntu developers, the company is very well suited to taking action on many of the tougher problems that these support organizations may run into. With its concentrated expertise, Canonical can offer this type of backup, or secondary support, to these organizations.
Bazaar and Launchpad
In addition to support and development on Ubuntu, Canonical Ltd. funds the development of Bazaar-NG, a distributed version control tool, and the Launchpad project. Bazaar-NG is a tool for developing software that is used heavily in Ubuntu and plays an important role in the technical processes through which Ubuntu is forged. However, the software, which is similar in functionality to other version control systems such as CVS, Subversion, or BitKeeper, is useful in a variety of other projects as well. More important, Bazaar-NG acts as the workhorse behind Launchpad.
More than half of Canonical's technical employees work on the Launchpad project. Launchpad is an ambitious Web-based superstructure application that consists of several highly integrated tools. The software plays a central role in Ubuntu development but is also used for the development of other distributions—especially those based on Ubuntu. The Launchpad consists of the following pieces:
A Web-based system for easily translating almost any piece of free software from English into almost any language. Rosetta is named after the Rosetta Stone, which helped linguists finally crack the code of Egyptian hieroglyphics.
The bug-tracking system that Ubuntu uses to manage and track bugs. It both tracks bugs across different versions of Ubuntu and allows the Ubuntu community to see the status of that bug in other places, including other distributions and potentially upstream. Malone is a reference to the gangster movie musical Bugsy Malone.
The distribution management part of Launchpad that now controls the processes by which Ubuntu packages are built, tested, and migrated between different parts of the distribution. Soyuz is a reference to the type of Russian rocket that took Mark Shuttleworth to space. The word soyuz, in Russian, means "union."
Launchpad and its components are discussed in more depth in Chapter 9. The importance of Launchpad in the Ubuntu project cannot be overstated. In addition to handling bugs, translations, and distribution building, Launchpad also handles Web site authentication and codifies team membership in the Ubuntu project. It is the place where all work in Ubuntu is tracked and recorded. Any member of the Ubuntu community and any person who contributes to Ubuntu in almost any way will, in due course, find themselves creating an account in Launchpad.
The Ubuntu Foundation
Finally, in addition to Canonical and the full Ubuntu community, the Ubuntu project is supported by the Ubuntu Foundation, which was announced by Shuttleworth with an initial funding commitment of $10 million. The foundation, like Canonical, is based on the Isle of Man. The organization is advised by the Ubuntu Community Council.
Unlike Canonical, the Foundation does not play an active role in the day-to-day life of Ubuntu. At the moment, the foundation is little more than a pile of money that exists to endow and ensure Ubuntu's future. Because Canonical is a young company, many companies and individuals find it difficult to trust that Canonical will be able provide support for Ubuntu in the time frames (e.g., three to five years) that it claims it will be able to. The Ubuntu Foundation exists to allay those fears.
If something bad were to happen to Shuttleworth or to Canonical that caused either to be unable to support Ubuntu development and maintain the distribution, the Ubuntu Foundation exists to carry on many of Canonical's core activities well into the future. Through the existence of the foundation, Ubuntu is able to make the types of long-term commitments and promises it does.
The one activity that the foundation can, and does, engage in is receiving donations on behalf of the Ubuntu project. These donations, and only these donations, are then put into action on behalf of Ubuntu in accordance with the wishes of the development team and the technical board. For the most part, these are spent on "bounties" that are given to community members who have achieved important feature goals for the Ubuntu project.