Chapter 11. The Ubuntu Community

Community is a word often used in discussions of Ubuntu. Early articles about Ubuntu bore subtitles asking, “Would you like some community with that?” The earliest press releases and communiqués from the project emphasized a “community-driven approach” to operating system development and distribution. In fact, the highest-level governance board in Ubuntu is called the Community Council and Canonical, Ltd. and employs a full-time community team. It is to that end that we have made a very conscious decision to spend an entire chapter of this book describing the Ubuntu community. In fact, every edition has been dedicated to the Ubuntu community!

Still, while the Ubuntu community is important, it is not always easy to succinctly describe it. Ubuntu is, in large part, developed and funded by Canonical. The community, almost by definition, extends far beyond Canonical. The Ubuntu project has Members and self-declared activists, but the Ubuntu community is more than even those with such explicitly declared relationships. The project contains a wide variety of venues for participation. But while the community is active in each of these areas, its scope is even wider.

The Ubuntu community is the collection of individuals who build, promote, distribute, support, document, translate, and advocate Ubuntu—in myriad ways and in myriad venues. Most people in the Ubuntu community have never met, talked with, or heard of each other. Members of the community are linked by their contributions, both technical and nontechnical, and by Ubuntu itself. These contributions have built Ubuntu as a distribution, as a social movement, as a set of support infrastructures, and as a project. In short, they have built Ubuntu as a community. While any active software development project has a number of people making contributions, not every project has a community.

Community is also a term that represents a promise by the Ubuntu project to remain inclusive. The focus on community means that volunteers are not only welcome but also essential. It means that Ubuntu is a “place” where individuals can come together to create something greater than the sum of its parts. The word community gives a nod to the fact that while much development work is paid for by Canonical, and while some people contribute more hours, more effort, more code, more translations, more documentation, or more advocacy work to Ubuntu than others, no individual or subgroup can take credit for everything that Ubuntu has become. In Ubuntu, no contribution is expendable. Having a community also reflects Ubuntu’s goal to provide a low barrier for entry for these contributions. Anyone who cares about Ubuntu can contribute to the project and can, in whatever ways are most appropriate, become a participant in the Ubuntu community.

This chapter provides a bird’s-eye view of the venues and processes in which the Ubuntu community is active. First, it takes a tour through the venues through which the Ubuntu community both consumes and communicates information. It continues by looking at the way the community is organized and the processes by which that organization works. Finally, it walks you through the ways you can participate in the Ubuntu community and contribute to its success.

Venues and Events

As we described in Chapter 1, transparent and public communication was an early goal of the Ubuntu project. Technical and community decisions are made publicly and are accessible to all interested parties. When this is impossible (e.g., when there is a face-to-face meeting and it’s simply not possible for everyone interested to attend), the community attempts to publish summaries and minutes and to provide avenues for feedback. The Ubuntu community contains no “member only,” “developer only,” or “decision maker only” back-channels except to preserve individual privacy or security—and the Ubuntu community refuses to create them. All work in Ubuntu occurs in places where everyone can view the work, and anyone who agrees to engage constructively and respectfully can participate.

Of course, this activity is public only to those who know where to find it. This section tries to document the venues for communication in Ubuntu as completely as possible. It describes the places where discussions of development, support, and advocacy take place. While nobody can engage in communication in all of the venues described, knowledge of what exists allows participants to be more informed when they need to choose the right place to ask a question or to make a suggestion.

Ubuntu Community Web Site

The Ubuntu Community Web site (http://community.ubuntu.com) is the main portal for learning about the Ubuntu community. This site provides links that explain how you can contribute to various parts of the project. Areas for collaboration include current programs in which the community is participating, such as the Google Summer of Code. The Web site shares details about specific areas in which you can get involved, such as Documentation and Translations.

An overview of community structure is also provided on this Web site, explaining the governance structure and the councils and boards. Finally, the site provides an overview of the support and documentation options for users of Ubuntu.

Mailing Lists

The single most important venue for communication in Ubuntu is the Ubuntu mailing lists. These lists provide the space where all important announcements are made and where development discussions take place. There are, at the time of this writing, more than 300 active, public e-mail lists. This number is constantly growing. However, great care is taken by the Ubuntu Community Council to ensure that this list stays current as the community continues to enjoy its growth.

An up-to-date, full page of mailing lists for Ubuntu can be found at https://lists.ubuntu.com, where users can see a list of available mailing lists, view archived discussions, and subscribe to lists through a Web interface.

Lists are one of the oldest forms of communication by e-mail. A mailing list provides a single e-mail address that, when mailed to, will then relay the received message to a large number of people. In Ubuntu, lists are topical, and individuals can subscribe to a mailing list if they want to receive information on the list’s topic. All mailing lists at Ubuntu are hosted at http://lists.ubuntu.com.

With a few exceptions (e.g., the e-mail list for the Community Council), anybody can subscribe to any Ubuntu list. In most cases, the capability to send e-mail to lists is restricted to list members (membership in lists is, of course, open to anyone). This means that all e-mail sent to a list from someone who is not a member of that list is put into a queue to be reviewed by a human moderator before it is broadcast to list members. This is done as an antispam measure. Users can subscribe to lists and then configure the system to never send e-mail. For several e-mail lists, all messages are moderated. This is largely to ensure that lists remain “low volume” or “announcement only.”

Ubuntu’s mailing lists are run by the popular Mailman software, which may be familiar to some users. Mailman makes it simple to subscribe to lists, to unsubscribe, and to configure any number of options about mail delivery. One popular option is to receive a daily digest of messages rather than a separate e-mail each time a new message is sent. This is all available through a Web interface at https://lists.ubuntu.com. Users can also subscribe to lists by sending an e-mail with “subscribe” in the subject line to <mailing list name>-[email protected].

While each list plays an important role in the Ubuntu community, the following central lists warrant a little more detail. You might find it a good idea to subscribe to them.

ubuntu-announce This fully moderated list relays all important announcements for the Ubuntu project and usually contains less than one e-mail per week. It is the place where new releases are announced and where other important information can be found first. If you use Ubuntu, you may want to consider subscribing to this list. If you subscribe to only one list, this should be it.

community-announce This fully moderated list provides announcements that the general community may find valuable. Announcements may include details about when the next Ubuntu Developer Summit is being held and how to get involved or details of upcoming community elections, like that of the Ubuntu Community Council. No technical expertise is required to read this list, and it’s recommended you subscribe to keep track of events in the community.

ubuntu-devel-announce This fully moderated list contains announcements related to the development of Ubuntu. It is low volume and contains one to three e-mails per week. If you work with code in Ubuntu, use a development release, or contribute on any technical level, you should be on this list. This is the list that everyone involved in development for Ubuntu is expected to read.

ubuntu-devel-discuss This list is the primary open list for general-purpose discussion of Ubuntu development. If you are looking to contribute to Ubuntu in any technical way, you should subscribe to this list and begin to follow the discussion. The list has a relatively high volume of e-mails.

ubuntu-devel This list is a moderated list for discussion of Ubuntu. While subscribing remains free, posting to the list is restricted to those who are Ubuntu developers or to chosen other developers. Others may post, but all posts are checked by a moderation team.

Internet Relay Chat

While mailing lists provide the primary venue for asynchronous communication (i.e., not at the same time), there is still an important need for synchronous, or real-time, collaboration. Internet Relay Chat (IRC) fills this niche. While it was designed primarily for group (i.e., many-to-many) communication in channels, it is also equipped with private messaging capabilities that facilitate one-to-one communication—all instantaneously. IRC is very similar to instant messaging or chat room communication. While time zones and a round globe make it difficult for the global Ubuntu community to meet at the same time, many users and developers take advantage of IRC’s capability to let anyone chat about an issue in real time or to ask a question and have it answered immediately.

Like mailing lists, IRC channels provide a venue for many different types of communication in many different subcommunities in Ubuntu. There are many different channels, including channels in a variety of languages.

All official Ubuntu IRC channels are located on the freenode IRC network, which also hosts a range of other free and open source software projects. Users can connect to IRC using several pieces of software in Ubuntu, including Empathy, Hexchat (successor to XChat; Figure 11-1), Irssi, and a freenode webchat client is available for users who aren’t using a local application on their machine for IRC but would like to join the channels from time to time (Figure 11-2). Mailing lists such as [email protected] will assist users in finding the right help and support; #ubuntu is designed for help and support. When joining any channel, users should carefully read the topic, as many frequently asked questions are answered there, and moderators of the channel can be annoyed by users who ask questions the moderators have already taken the time to answer in the channel’s topic.

Image

Figure 11-1 Hexchat is an IRC client that allows Ubuntu users to connect to the Ubuntu IRC channels.

Image

Figure 11-2 The freenode webchat client sign-in screen and view of the #ubuntu-community-team IRC channel on freenode.net

Currently, the #ubuntu channel is usually the biggest channel on the freenode network, with more than 1,500 simultaneous users at most times, and it’s continuing to grow—especially around releases. Another important channel is #ubuntu-devel, which is reserved for discussion of Ubuntu development. Support for development releases has moved to #ubuntu+1. Maintaining channels with specific purposes has allowed the support community to stay focused and help as many people as possible. A full list of channels can be found at https://wiki.ubuntu.com/IRC/ChannelList.

Web Forums

The official Ubuntu forums are the most frequently used venues for communication in Ubuntu. For a number of reasons, many users prefer communication through a Web-based forum or bulletin board over mailing lists. The Ubuntu forums were created to satisfy this group and have done so with amazing success.

The forums are accessible online at http://ubuntuforums.org and have shown an impressive amount of usage. The forums boast more than 2 million registered users, with approximately 5,000 online at any given moment. The topics discussed in the forums run the gamut in categories like these:

Image Support discussions, including spaces for questions about specific hardware (e.g., computers with Ubuntu preinstalled, or networking and multimedia cards) and specific use cases (e.g., desktop or server users)

Image Ubuntu community discussions, including spaces for discussions by people working on art for Ubuntu, those working in science and education, and those developing new documentation and tutorials

Image Forum-specific community discussion spaces, including several social spaces and places for administrative and community governance discussions

By covering such ground, the Ubuntu forums provide an impressive support resource. They offer an excellent venue for both asking questions and answering questions, and both receiving support and making important contributions to the Ubuntu community. If you are interested in any of these, the forums are a good place to begin.

The only caveat regarding the forums worth mentioning is that they are not frequently used by those developing Ubuntu—although there are exceptions to that rule. If users want to get involved in technical contributions to the project, they will, in all likelihood, have to augment their forums’ patronage with the use of mailing lists or Launchpad.

The forums were founded by and are moderated and maintained entirely by volunteers, and are governed by the Forums Council (discussed later in this chapter).

Wikis

Since nearly day one, a large chunk of Ubuntu documentation and support has taken place in the official Ubuntu wiki. In case you don’t already know, a wiki—pronounced “wik-ee”—is a Web site where any viewer can add, remove, or edit content.

There are several Ubuntu wikis, but two are central to the community. The first is the Community Help wiki at https://help.ubuntu.com/community (Figure 11-3). It is edited and directed by the Ubuntu Documentation Team and focuses on issues of community-produced technical documentation for Ubuntu. The second wiki is at https://wiki.ubuntu.com and is meant to be used for everything else. The Community Help wiki can be thought of as a project to build an expansive manual through community contributions and editing. The general-purpose wiki is used for specification writing and traffic, conference organization, meet-ups, pages for teams and individuals involved in Ubuntu, and absolutely anything else that is in written form and relevant to the Ubuntu community. Both wikis can be edited, added to, or reorganized by anyone in the community who creates an account, and edits are unrestricted. Since registration is required, each change can be traced to a particular user.

Image

Figure 11-3 Front page of the Ubuntu community support and documentation wiki

Unlike other documentation that ships with Ubuntu, anyone can fix an error, inaccuracy, or out-of-date fact in the wiki. As a result, there is no good way to determine whether information in the wiki is correct. It cannot be subjected to the same type of quality assurance workflow that a document such as this book might be. However, it is also much more likely to be up-to-date in the quickly changing world of Ubuntu development, where there is a new release every six months. The wiki provides a venue for this level of up-to-date information with a low barrier to entry and, as a result, acts as an invaluable resource for the community.

The Fridge

The Fridge (https://fridge.ubuntu.com) is the quirky community portal for Ubuntu. In many Western cultures, refrigerators provide a central sort of “bulletin board” in a family’s home. Because refrigerators are magnetic, children and parents can use magnets to hang pieces of paper that they want to share with the community of people who come in contact with that fridge. For children, this often includes good grades, news reports, or other information that someone is proud of or wants to share. The Fridge tries to create such a shared resource within the Ubuntu community. The Fridge home page is shown in Figure 11-4.

Image

Figure 11-4 The Fridge home page

The Fridge is perhaps best described as the community portal for Ubuntu. It is part news site, part grassroots marketing and advocacy site. It hosts news, interviews, calendars with lists of upcoming events, polls, and much more. The core content on the site is arranged as a Weblog. Users frequently set The Fridge as their home page or subscribe to the site via its RSS feed. The Fridge is unique in the community in that it appeals to a wide variety of Ubuntu participants—developers, advocates, translators, users—and provides a venue where each group can share information with others. There is a story every two to three days on The Fridge. Users can comment and discuss each story in the comments section on The Fridge.

Anyone can contribute content to The Fridge. If you would like to contribute, you can do so by sending your suggestions for features, articles, or even a piece of original work (such as an article, photo, or event review) to [email protected] or by following any of the suggested ways on the https://wiki.ubuntu.com/Fridge/Submit.

AskUbuntu.com

Ask Ubuntu at http://askubuntu.com is a free and community-driven question-and-answer site designed to make it easy for users to get answers to Ubuntu-related questions. It’s also a place for users to share their knowledge about the Ubuntu platform.

The site concentrates on answers that are voted on by the community and peer reviewed by other members of the site, which can keep the information up-to-date and topical.

The Ask Ubuntu Web site features the ability for users to ask and answer questions, and, through membership and active participation, to vote questions and answers up or down and edit questions and answers in a wiki fashion. Users of Stack Overflow can earn reputation points and “badges”; for example, a person is awarded 10 reputation points for receiving an “up” vote on an answer given to a question, and can receive badges for their valued contributions. All user-generated content is licensed under a Creative Commons license.

From here users will have access to answer or ask questions as well as search and view all the questions that have already been asked. Users do not have to register or log in to have access to the site. For those users who wish to register, there are several ways this can be accomplished. If you have an account on Google, Yahoo!, myOpenID, Facebook, your Ubuntu account, AOL, or OpenID, you can associate that account to your AskUbuntu account and sign in using any of those accounts.

Social Media

Social media sites such as Facebook, Twitter, and Google+ are also used to disseminate information to the community as well.

Facebook: http://facebook.com/ubuntulinux

Twitter: http://twitter.com/ubuntu

Google+: https://google.com/+Ubuntu

Online Summits and Sprints

Since Ubuntu was first released, there have been several public developer summits and sprints organized and funded by Canonical. Highlights include:

Image The Mataró Sessions in Mataró, Catalonia, Spain, in December 2004—the first Ubuntu development summit

Image The two named Ubuntu conferences in 2005: Ubuntu Down Under in Sydney, Australia, in April and the Ubuntu Below Zero in Montreal, Canada, in November

Image Ubuntu Developer Summit Mountain View at Google Headquarters in Mountain View, California, in November 2006

Image Ubuntu Developer Summit-R in Copenhagen, Denmark, in October 2012

As the community has grown, it has become increasingly difficult for Ubuntu Developer Summit (UDS) events to accommodate everyone who wants to attend in person. In 2013, the Ubuntu Developer Summits moved to being online-only events that are held over video chat. These new events are called Ubuntu Online Summits (UOS).

With the support of Canonical, Ubuntu tries to organize the Ubuntu Online Summits so that they occur twice per release. Usually the first occurs toward the very beginning of a release cycle, so that the specifications and goals for the forthcoming release can be discussed, thrashed out, and decided upon. A second UOS then takes place mid-cycle so that tasks can be formally reviewed and plans adjusted prior to release as needed. While the format changes slightly each time, these meetings have been between three days and two weeks in length.

At UOS, attendees describe features that they would like to see in the next Ubuntu release. At an arranged time or in a series of meetings, a small set of interested community contributors and developers work to draft a written specification. This process of drafting involves brainstorming and ends up with a formal, approved spec that describes a problem or need and provides a detailed description of how it will be fixed or implemented. While these specifications are often technical in nature, they are also used to describe goals that may pertain to localization, documentation, or community building. For example, both The Fridge and the planning of each summit began as a specification. With time, these specifications are categorized in terms of priority for the upcoming release. Later, individuals will claim or be assigned some set of these specs. Each specification is written up and improved as a blueprint on Launchpad so that Ubuntu developers and contributors who cannot attend the summit are still able to participate.

These summits also address issues within the community. For example, many of the Ubuntu leaders participate to discuss how they could help grow not only their own leadership abilities but those of the Ubuntu community as well.

In addition to these summits, Canonical organizes a number of in-person, invitation-only sprints each year. These sprints tend to be one- to three- week intense collocated work sessions that involve a team or subteam tasked with a well-defined goal. They provide a time when team members can write code, write documentation, make plans, or do whatever else is necessary to fulfill that goal. The sprints tend to involve fewer than 100 people, and their attempts to squeeze large amounts of work into a short period of time have earned them a reputation for being exhausting, fulfilling, amazingly productive, fun experiences. These sprints are work sessions and are usually limited to a group of Canonical employees; however, on occasion, they may also include volunteer attendees.

UbuCons

Online summits and sprints are effective but are primarily of interest to technically minded people or individuals who are already very actively involved in the Ubuntu community. Their goal is to accomplish work through high-bandwidth interaction among existing teams. User conferences, known as UbuCons, try to provide an alternative space for users who are not yet actively involved in the community. These conferences attempt to bring people up to speed on Ubuntu and to provide a space for community building, support, and networking.

While many local community teams have regular meetings and their own Ubuntu events, several larger-scale UbuCons have been held to date, and several more are currently being planned. The first two UbuCons took place at Google headquarters, in Mountain View and in New York City, and others are designed to coincide with the much larger Linux World conferences that many other Ubuntu users attend. Attended by a group of a few hundred users and a handful of developers, UbuCons have provided a simple way for users to connect with one another. Additionally, some UbuCons have provided space for “installfests” where users can bring computers and have Ubuntu installed on their machines by other Ubuntu users, developers, and aficionados.

Any active group of Ubuntu users can plan a UbuCon, and UbuCons have taken place in a variety of locations around the world. For example, UbuCons now take place in conjunction with such events as the Southern California Linux Expo, Ohio Linux Fest, Southeast Linux Fest, and others. This piggybacking onto the larger events worked so well that in 2010, several other organizations permitted a UbuCon to be organized as a smaller part of their larger event, and the practice is expected to continue in the future. When these UbuCons are collocated with conferences, they are well attended because Ubuntu users are already attending the larger events. Local Community teams (LoCos, covered later in this chapter) can afford to organize these UbuCons because the venue costs are quite low and can usually be covered by only one sponsor. Such gatherings are free events, and popular Ubuntu speakers often are already attending the larger event and are willing and happy to add some participation in the UbuCon to their schedule.

With the move to online-only summits, community-organized UbuCons became even more popular. In 2016, the first UbuCon Summit was held in Pasadena, California. A collaboration between a LoCo and Canonical, the UbuCon Summit grew out of an existing UbuCon that had been hosted by the California LoCo in the past. The UbuCon Summit featured a user track and a developer track on the first day, and an unconference for developers and other Ubuntu contributors on the second day. This was the first summit-type event to have strong funding, planning, and collaboration between Canonical and the community, and also featured external sponsors, including GitHub, Dell, and Hewlett-Packard Enterprise.

While conferences and summits act as a site for major technical advances in brainstorming and development, they are also fun and enjoyable experiences. They provide a venue for users to put faces to names, IRC nicknames, and e-mail addresses, and they provide for enjoyable, humorous, and productive interaction.

Planet Ubuntu

For a window into the people and teams who make Ubuntu what it is, the blog aggregator Planet Ubuntu (http://planet.ubuntu.com) is a great place to start (Figure 11-5). A blog aggregator is basically a blog of blogs that retrieves the latest posts from Ubuntu members who have chosen to add their blogs to the system and then publishes a single blog in reverse chronological order. Although much of the content in Planet Ubuntu is about Ubuntu, as a window into the Ubuntu membership, Planet Ubuntu also includes information from the personal lives of community members. In this way, Planet Ubuntu provides a good way for participants to put their stamp on the Ubuntu community and for others to see what the Ubuntu community is doing.

Image

Figure 11-5 Planet Ubuntu

Teams, Processes, and Community Governance

Ubuntu operates under the famous hacker mantra of “rough consensus and running code.” The project attempts to forge consensus, to make good technical decisions, and to move forward. It attempts to minimize politicization wherever possible and to distribute power to those who are best at getting good work done. Mark Shuttleworth explains, “This is not a democracy, it’s a meritocracy. We try to operate more on consensus than on votes, seeking agreement from the people who will have to do the work.”

The project attempts to keep disagreements from spiraling out of control by enforcing mutual respect at all times with its Code of Conduct, described in Chapter 1. Disagreements, of course, are inevitable and can be technical or nontechnical in nature. The community needs to be able to deal with these and, toward that end, has created a lightweight governance system that aims to ensure that disagreements are resolved carefully and that the project always has a strong, fair, and responsive direction.

The Ubuntu Web site describes the goals of its community governance system as threefold.

1. Ensure that a process is defined that allows people to contribute to decisions regarding the Ubuntu community and distribution.

2. Ensure that decisions regarding the Ubuntu distribution and community are made in a fair and transparent fashion.

3. Ensure that necessary decisions are actually made, even when there is no clear consensus among the community.

With these goals in mind, Ubuntu’s system is based on the delegation of decision-making power to small and medium-sized teams. When disagreements arise, they are handled within a relevant team. In the cases of some larger teams, team councils handle a variety of dispute resolutions in a very structured fashion. When teams cannot resolve their own disagreements or when there are disagreements between teams, issues are forwarded to the council or board governing that area of the community and at times can and may be escalated to either the Community Council or the Technical Board, depending on whether the issue is technical in nature. As the financier and the project’s progenitor, Shuttleworth sits on the Community Council and occupies a special position as the self-appointed benevolent dictator for life (SABDFL). Users can participate in the Ubuntu governance structure by serving on teams, and as Ubuntu members and maintainers, they have a voice in approving members of both the Community Council and the Technical Board.

Teams

Most work in Ubuntu is delegated to a set of teams, each responsible for a particular area of work in Ubuntu. A sample of important teams (which is by no means complete) might include the forums, news, documentation, kernel, server, laptop, and translation teams. Anyone with an interest in a particular aspect of the Ubuntu project can join a team’s discussion and contribute to its decisions.

When participants feel that a particular area is under-served, they can go ahead and build a new team by drafting the details of the team in the Ubuntu wiki and recruiting contributors to help with their efforts. Teams should always involve the participation of several individuals. There are no one-man or one-woman teams in Ubuntu.

Several teams are so large and important that they have built their own more advanced governance structures in the forms of team councils. These councils are either appointed by the Community Council from active members and leaders within the team and act as delegates of the Community Council for that team and its domain in the project, or they are completely-self run. These team councils have regular meetings, resolve conflicts, report to the Community Council each cycle, and in some cases even grant Membership on behalf of the Community Council.

The Ubuntu Community Team at Canonical

As mentioned at the beginning of this chapter, Canonical understands and appreciates what an important part the Ubuntu community plays in the success and growth of each Ubuntu release. The Ubuntu community team at Canonical is made up of several Ubuntu community managers, employed by Canonical, who work directly on various segments of the Ubuntu community, including developer relations, quality assurance, and the cloud.

The community team members each specialize in and work with their area of the community to help educate, encourage, and ignite greater participation. This also helps establish trust relationships with Canonical, upstream software projects, news and blog writers, and the wider community, which helps maintain a healthy and inclusive community that is empowered to develop, design, and influence the direction and growth of the Ubuntu project.

The Ubuntu community team has implemented the following new opportunities to engage the Ubuntu community:

For the Ubuntu Developer Community

Ubuntu Packaging Guide: http://packaging.ubuntu.com/

Ubuntu App Developer Web site: http://developer.ubuntu.com

Facebook: www.facebook.com/ubuntudev

Twitter: www.twitter.com/ubuntudev

Google +: https://plus.google.com/u/1/107265043789873157543/posts

For the Cloud Community

Ubuntu Cloud Web site: www.ubuntu.com/cloud

Juju Charms: https://jujucharms.com/

Twitter: www.twitter.com/ubuntucloud

Local Community Teams

Local community teams, affectionately referred to as LoCos in the community, are an extremely important type of team. Each LoCo is responsible for promoting, supporting, and representing Ubuntu in a particular locale. These locales are usually geographical and frequently countrywide, although in some situations they may overlap geographically. Ubuntu tries to encourage LoCos to work together whenever possible.

LoCos are like Linux User Groups (LUGs) and may often work closely with or be associated with a LUG. LoCos are often involved in localization or translations of Ubuntu into local languages and in advocacy in local schools, public administrations, and communities. The best LoCos meet regularly for social events, talks, and discussion. Often, they meet for installfests, where team members help new users install Ubuntu onto their computers. Representatives of LoCos are asked to assist with localization matters, to speak on behalf of the Ubuntu project at local conferences and trade shows, and to organize a booth or presence at such events.

Canonical, Ltd., provides each team with a mailing list and a domain name (usually in the form of ubuntu-<CC>.org, where CC is the country’s two-letter country code). Canonical also is willing to host LoCo Web pages, wikis, forums, blogs, download areas, and additional mailing lists. LoCos are open to participation by anyone.

Want to find a Local Community team near you? All you have to do is go to the Ubuntu Local Community Team Portal at http://loco.ubuntu.com/ and begin by selecting your region of the world on the map or clicking the teams tab at the top of the page. Either action will bring up a list of current LoCo teams.

MOTUs

Another very special type of team that deserves an in-depth description in this book is the MOTU. The MOTUs are the maintainers of Ubuntu’s Universe software package repository, and the acronym stands, jokingly, for Masters of the Universe. MOTUs call themselves “the brave souls who try to keep the Universe section of Ubuntu in shape.” They are community members who spend their time adding, maintaining, and supporting as much as possible the software found in Universe.

MOTUs are package maintainers. They maintain, as a group, the vast majority of packages in the Ubuntu archive. Several of the packages that have been well maintained by the MOTUs have, with time, migrated into the main component and become an official part of the Ubuntu distribution. Because Ubuntu does not make support or quality promises regarding the packages in universe, the MOTU team provides a way for maintainers to sharpen their teeth and (since it’s sometimes unavoidable) make mistakes before jumping into the higher-responsibility packages in main.

The roles and responsibilities of the MOTUs are many. Some important ones are that MOTUs

Image Understand packaging concepts and have substantial experience uploading packages through a sponsor.

Image Apply this knowledge by uploading new packages and updating existing packages in the universe component.

Image May contribute to the main component in cooperation with a core developer.

Image Answer questions of other developers to expand their understanding of packaging work.

Image Provide guidance for prospective Ubuntu developers regarding technical issues.

MOTU contributors are the people who are interested in contributing to Ubuntu and are learning how to package and work in the Ubuntu development community. They primarily work by using MOTUs as sponsors for their work. There are no requirements or exams to pass to become a MOTU contributor, just a willingness to learn and a commitment to the Ubuntu Code of Conduct. Many of these contributors do graduate to full-fledged MOTUs, and many MOTUs eventually are granted full-core developer status. This three-step system is the process by which almost all new maintainers learn to maintain packages in Ubuntu.

The Community Council

The Community Council and the Technical Board are the highest-level governance structures within Ubuntu. The Community Council, as it pertains to all Ubuntu members and activities, is arguably the most powerful team within the Ubuntu project. The Community Council is charged with supervising the social structures, venues, and processes of the project.

The Community Council’s day-to-day work involves five major areas in Ubuntu. The first, and the most straightforward, is the maintenance of the Ubuntu Code of Conduct. The Community Council is the only body that can approve revisions to the code. Because the Community Council does not ask each member to “reagree” to the code when it is changed, each of these revisions must be fully within the spirit of the previous drafts.

The second charge of the Community Council is the arbitration of disputes that cannot be handled within a particular team or that arise between teams. These are generally disputes about the Code of Conduct that may require clarification of a part of the Code of Conduct or a description of whether any of the code was, in fact, violated by a particular action or behavior. However, the Community Council’s purview is not limited to Code of Conduct violations, and the Community Council is available to handle disputes in any nontechnical situation. In most situations, the Community Council does not take action against individuals, but rather helps group members come to agreement or consensus among themselves. If this fails, the Community Council can ask a maintainer or other member of the community to apologize and refrain from particular behavior or to leave the community. The Council promises that no one will be asked to leave without a substantial review and an opportunity to defend himself or herself.

A third area of Council work is assisting teams with any blockers they may encounter in the running of their team. This may include, but is not limited to, assisting with getting access to resources lost due to a contributor stepping away, moving away blockers that the team may have in the community, and assisting with appointment of new leadership should the need arise. To this end, the Community Council works to meeting with key teams in the community each cycle during their regular meetings to see if they can assist the teams in any way.

Fourth, the Community Council is ultimately responsible for approving and welcoming new members to the project, described in more depth in the upcoming subsection on membership.

Finally, the Community Council is responsible for all community-related structures and processes. New types of teams, requirements for membership, and core philosophical documents should first be approved by the Community Council. Community members who wish to suggest new structures or processes can submit their proposal to the Community Council for discussion and approval.

The Community Council meets twice a month on IRC. Any community participant can submit an item or proposal for discussion by the Community Council. Meetings are open to the community, but the Council seeks only consensus or votes from Council members—although it consults representatives from the team that submitted the proposal and other community members. If an open meeting becomes too noisy, the Council reserves the right to moderate the channel so as to regain order. Full transcripts of meetings are published following a Community Council meeting. The current members of the Community Council can always be found at https://launchpad.net/~communitycouncil. Appointments to the Council are overseen by Shuttleworth, and a final vote among all Ubuntu Members is taken to select nominees from a list. Appointments last for a period of two years.

The Technical Board

The Ubuntu Technical Board is responsible for the Ubuntu project’s technical direction. By handling all technical matters, the Technical Board complements the Community Council as Ubuntu’s highest rung of project governance. In particular, the Technical Board is responsible for three major areas of Ubuntu policy: package policy, release feature goals, and package selection. Also, the Technical Board is available to arbitrate any technical disagreements or issues within or between teams in a manner similar to the one described earlier in relation to the Community Council.

The Technical Board’s first responsibility is Ubuntu’s package policy. The Technical Board maintains the policy document, which describes the processes and standards to which all Ubuntu packages are held. Since the policy is constantly evolving, each Ubuntu release is associated with a specific version of the Ubuntu package policy as determined by the Technical Board. Any suggestions or proposals about policy are suggested to and considered by the Technical Board.

Also, the Technical Board is responsible for maintaining Ubuntu’s feature goals for each release. During each release cycle, there is a date defined as Feature Freeze, after which no new features are added. The Technical Board sets these dates and decides when and if the rules can be bent for a particular feature or piece of software.

Finally, the Technical Board is responsible for maintaining the list of pieces of software (i.e., packages) in Ubuntu. In this capacity, the Technical Board determines which software is installed in the default desktop installation and which packages qualify for full support as part of the main component of Ubuntu. Users and developers can propose a particular piece of software for inclusion in main, the base install, or a desktop install. In all cases, the ultimate decision will be made by the Technical Board.

Like the Community Council, the Technical Board meets at least twice a month on IRC. Also like the Community Council, any user can submit an item or proposal for discussion by the Technical Board prior to the scheduled meeting. Meetings are open to all interested parties, although decision making and voting are restricted to Technical Board members. Full transcripts and rules about noise, as they pertain to the Community Council, also apply to the Technical Board. You can always find the current list of the Technical Board members at https://launchpad.net/~techboard. Appointments are made by Shuttleworth but are subject to confirmation by a vote among the maintainers instead of all members. Appointments are made for a period of two years.

Other Councils and Boards

Ubuntu Forum Council The Ubuntu Forums (http://ubuntuforums.org) are led by the Forum Council, which sets rules, manages moderators and administrators, and can grant Ubuntu Membership to key contributors.

Launchpad team: https://launchpad.net/~forum-council

Wiki page: https://wiki.ubuntu.com/ForumCouncil

Mailing list: [email protected]

Ubuntu IRC Council The IRC Council is the group that is ultimately responsible for governing the IRC channels and interfacing between IRC and the rest of the Ubuntu community and governance systems. The IRC Council also has the ability to grant Ubuntu Membership to key contributors.

Launchpad Team: https://launchpad.net/~ubuntu-irc-council

Wiki page: https://wiki.ubuntu.com/IrcTeam/IrcCouncil

Mailing list: [email protected]

Ubuntu LoCo Council The LoCo Council governs the LoCo community, makes decisions on resource allocations, deals with conflict resolution, and makes decisions about where the project should move forward.

Launchpad team: https://launchpad.net/~ubuntu-lococouncil

Wiki page: http://loco.ubuntu.com/loco-council/

Mailing list: [email protected]

Ubuntu Developer Membership Board The Ubuntu Developer Membership Board is the group responsible for considering and approving applications to become Members of the Ubuntu Core Developer team.

Launchpad team: https://launchpad.net/~developer-membership-board

Wiki page: https://wiki.ubuntu.com/DeveloperMembershipBoard

Mailing list: [email protected]

Ubuntu Membership Approval Board The Ubuntu Membership Approval Board is made up of a geographically distributed team that is responsible for considering applications for Ubuntu Membership.

Launchpad team: https://launchpad.net/~ubuntu-membership-board

Wiki page: https://wiki.ubuntu.com/Membership/Boards

Mailing list: [email protected]

The Ubuntu flavors (e.g., Kubuntu, Edubuntu) may also be governed by a council, but this is determined by each project and may change over time as the projects change and evolve.

The SABDFL

Mark Shuttleworth jokingly refers to himself as Ubuntu’s SABDFL—self-appointed benevolent dictator for life. He plays an admittedly undemocratic role as the sponsor of the Ubuntu project and the founder of Canonical, Ltd. Shuttleworth has the ability, with regard to Canonical employees, to ask people to work on specific projects, feature goals, and bugs. He does exactly this.

Shuttleworth also maintains a tie-breaking vote on the Community Council and has publicly said that he will not use it lightly. In situations where the boards are split and there is no one “right” answer, the SABDFL will provide a decision instead of more debate. The SABDFL exists to provide clear leadership on difficult issues and to set the pace and direction for the project. In exchange for this power, he has the responsibility to listen to the community and to understand that the use of his SABDFL authority can weaken the project.

Ubuntu Members

Membership in the Ubuntu project is one official way that the project recognizes sustained and significant contributions. Official Membership is available to anyone who has signed the Ubuntu Code of Conduct and has demonstrated a significant and sustained set of contributions to the Ubuntu community. These contributions can be of any kind—technical or nontechnical—but need to be of a form that can be represented to the Ubuntu Membership Board, under the authority of the Community Council. The Membership Board before which a candidate appears will consider each application individually. A non-exhaustive list of some of the types of contributions that qualify appears in the following section on getting involved. The Membership Boards try to be flexible in the various types of contributions that will be accepted in consideration of Membership.

Ubuntu Members are responsible for confirming, by voting, all nominations to the Ubuntu Community Council. They also may be asked by the Community Council to vote on resolutions put to the general membership. In exchange, Members gain the right to an @ubuntu.com e-mail address and the right to carry Ubuntu business cards. Membership lasts for two years and is self-renewable. Members who fail to renew their membership will be marked as inactive but, with renewed activity and a simple procedure that involves approval of the Membership board, can be easily reactivated.

The process to become a Member is relatively straightforward and is documented in depth at https://wiki.ubuntu.com/Membership. Most important, it requires that users document their contributions on a wiki page that includes links to code, mailing list messages, specific forms of documentation that clearly demonstrate their involvement, and/or other relevant material. Membership applications also need to include testimonials on work and involvement in Ubuntu.

Getting Involved

Users can participate in the Ubuntu community on a variety of levels and in a multitude of ways. The following subsections, adapted largely from a page with links to relevant resources online on the Ubuntu Web site (http://community.ubuntu.com/contribute), provides a good list of ways in which people can get a running start in the Ubuntu community.

Ubuntu Online Events

A series of video-based events are regularly organized by the Ubuntu On Air! team, which often include interviews and question-and-answer sessions with key members of the community. Details about current and upcoming Ubuntu on Air! events can be found at http://ubuntuonair.com/.

Advocacy

The easiest way for someone to contribute to the Ubuntu community is simply by telling others about Ubuntu. Advocacy frequently occurs in a variety of ways. One good method involves joining or starting a LoCo team. LoCos, described earlier in this chapter, provide a method through which you can get involved in Ubuntu activities. If users do not have a LoCo and do not have the critical mass of users to start one, they might help build support by giving a talk about Ubuntu to a local Linux User Group or other technical group. Through these and other means, advocacy provides a great way to spread the word about Ubuntu and offers a low-barrier opportunity to make contributions to the community. Many community members share resources such as fliers, posters, CD covers, and banners on the Spread Ubuntu Web site (http://spreadubuntu.org). Spread Ubuntu is an official Ubuntu resource that is community driven and dedicated to helping provide various tools and resources to users, teams, and community members to aid in advocacy efforts.

Support

One of the most meaningful ways that users can contribute to Ubuntu is by helping others use the software. Users can do this by joining the support-oriented mailing lists, IRC channels, or forums, as described in detail earlier in this chapter. By responding to requests for help in each of these venues, users can help other users get up and running on Ubuntu. Even if users are themselves beginners, the knowledge they gain in solving even simple problems enables them to help users who run into the same issues. Community member Fabián Rodríguez sums this ethos up quite nicely: “Every user is someone’s guru.”

Ideas and Feedback

Another way to contribute to Ubuntu is by helping steer the direction of the project by describing a vision or providing ideas. This can be done by participating in discussion and brainstorming sessions at conferences and on the Ubuntu wiki. By monitoring specifications as they are written and creating feedback, especially at early stages, users can make meaningful contributions. However, users contributing ideas should remember that talk is cheap. Users are wise to work with others to help turn their visions into reality.

Documentation

When a user is stumped by a problem, chances are good that other users will also be frustrated by it. If users are not in a position to write code to change the situation, they may be able to help others by writing up their experiences and documenting the solution. Ubuntu has a vibrant documentation team and community, and writing documentation is a great low-barrier way to make meaningful contributions to the Ubuntu community.

Users aiming to contribute to Ubuntu’s documentation would be advised to take notes as they puzzle through problems and to document solutions when they find them. Before writing, users should also check to see whether documentation for a particular problem already exists. When it does, users would be wise to choose to improve or augment existing documentation rather than write a new document. Similarly, users can make meaningful contributions by reading through existing documentation and fixing factual, technical, stylistic, spelling, and grammar errors. Users who spend a large amount of time working on documentation may, with time, also want to join the Ubuntu Documentation Team, which can help organize and coordinate this work in terms of Ubuntu documentation goals.

Translation and Localization

The discussion of LoCos should have already made it clear that translation is a great way that anyone with a firm understanding of English and another language can contribute to the Ubuntu community. Translation tools (described in Chapter 9) allow users to translate as little as a single string or as much as an entire application. Through its easy interface and Web-based nature, translation provides a low-barrier road to contribution. Serious translators should join a local community team and the ubuntu-translators mailing list so that they can stay in touch with other Ubuntu translators.

Quality Assurance and Bugs

Quality assurance (QA) is something for which many companies hire special engineers. In Ubuntu, the Development Team relies on the Canonical QA team and the community to test software before it is released to let developers know about problems so that the bugs can be squashed before the vast majority of users ever see it. Users can contribute to testing of software in a variety of ways, from testing the latest builds of ISOs for an upcoming release, to testing packages individually before updates are released to the wider community.

Trackers for ISOs and packages are available through the Ubuntu Quality team. When users helping out with QA find bugs, they should report them in the Ubuntu bug-tracking system. They can also help by “triaging” bugs, closing or merging duplicates, or verifying bugs and adding information to a bug’s description. If you intend to become involved in QA, you should subscribe to the ubuntu-devel-announce mailing list and the ubuntu-quality mailing list, consider monitoring ubuntu-devel, and join the #ubuntu-quality IRC channel on irc.freenode.net.

Programming and Packaging

The final way that users can contribute to the Ubuntu community is through the production of code. Because Ubuntu is free and open source software, users can get access to every piece of software that Ubuntu supports. This allows users to package additional software for inclusion in Ubuntu, to fix bugs, and to add features. Developers, like people testing software, should subscribe to the ubuntu-devel-announce mailing list and should consider monitoring ubuntu-devel, too. The best way to begin making contributions is then through the MOTU team as a MOTU hopeful, as described earlier. Users can also look through a list of specifications to find a project that they find personally interesting.

With the rise of cloud-based software, infrastructure packaging is also available in the form of Juju Charms (https://jujucharms.com/). Juju Charms use the Juju service to specify and orchestrate dependencies and relationships among specific services that run on a server. For instance, a piece of blogging software may require a Web server and a database; these can be defined in Juju and launched on separate servers or with additional features, thereby making them highly available.

Summary

Ubuntu is a vibrant and diverse community that is active around the world and in many languages. Its activities happen primarily online in a variety of virtual venues, including mailing lists, IRC, Web forums, wikis, social media, upstream videocasts, developer and cloud portals, as well as two special Web-based community portals known as The Fridge and Planet Ubuntu. Ubuntu complements this virtual activity with real-life meetings and conferences. The Ubuntu community is broken down into a variety of teams and processes. At the top of this government structure is the Ubuntu Community Council, the Technical Board, and SABDFL Mark Shuttleworth. Through a variety of ways, this community is designed to facilitate contributions easily. Ultimately, these contributions are recognized through a process culminating in official project membership and enfranchisement.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.109.234