UbuntuDevelopers

Revision 63 as of 2009-06-16 09:08:14

Clear message

Did you mean ...

If you have arrived here trying to find out how to take part in the development of Ubuntu, then you may find these pages more useful at first:

Introduction

Ubuntu developers represent an important part of the creation of Ubuntu. They have a direct influence on the software included in Ubuntu and whether it meets the needs of end users. They are responsible for ensuring that Ubuntu works, and works as well as it can with the resources available. There are four types of Ubuntu developers:

ubuntu-developers6.png
Please note that the "dashed routes" may require strong evidence of your involvement in Ubuntu Development.

The figure above illustrates the relation between the different developer groups. The increasing intensity of colors in the Ubuntu tricouleur represents the required skills, experience, and responsibility for the Ubuntu software archives.

Applying for team membership

To join the ubuntu-universe-contributors, ~motu or ubuntu-core-dev team, the MOTU/Council needs to review your application first. In the case of ubuntu-core-dev the MC speaks out a recommendation for the TB, in all other cases it will make the final decision. (Read more about the individual teams and the differences below.)

  • Set up a personal wiki page for your application. Please make use of UbuntuDevelopment/DeveloperApplicationTemplate.

    • Talk to your sponsors beforehand and ask them to add some information to the wiki page. In a regular application your will have 3-5 sponsors.

  • Add your application details to MOTU/Council/Meeting, give a quick heads-up on the motu-council list and pick a meeting time you'll be able to attend. Please allow at least one week of time for the MOTU Council members to review your application. (If you can't make it to one of the meetings, please email motu-council@lists.ubuntu.com for either a different meeting time or to process the application on the mailing list.)

  • Attend the meeting.

All members of the development community are welcome to attend and ask questions, add your feedback (even if unsolicited) to the wiki page in question or ask questions on the motu-council list.

The MOTU Council will have prepared for the meeting (reviewed the application details, checked a few examples of your work, talked to sponsors, etc.) and ask questions to make sure the applicant qualifies for the team. During the meeting the MC members will cast their votes and if quorum is reached (4 of 7 currently), will add the applicant to the team or ask to re-apply in due time.

After your successful application

Your application was approved and your member of one of the development teams?

  • You will now enjoy all the benefits of Ubuntu Membership.

  • Add yourself to Planet Ubuntu and let the world know about your experience in the team and that you're part of it now. Smile :-)

Ubuntu Prospective Developers

This is where you should start if you are interested in joining the development team. Prospective developers:

  • Work on bug fixes and new packages
  • Gain experience with Debian-format packaging
  • Request sponsor review of suggested changes, where sponsors:
    • review the packages prepared by the prospective developer
    • provide constructive feedback
    • upload the package when they are satisfied with its quality
    • for more information, please read SponsorshipProcess

Ubuntu Contributing Developers

  • Are members of the universe-contributors team in Launchpad

  • are collectively responsible for the maintenance of most of the packages in Ubuntu (the universe and multiverse components)

  • merge new versions from Debian, work on bugfixes and new packages
  • continue with sponsored uploads
  • participate in technical discussions with other Ubuntu developers, providing ideas and feedback

Joining the universe-contributors team

  • Check out the general requirements for Ubuntu Membership.

  • Follow the process above.

  • The outcome of this will be decided by the MOTU Council, and reported to the Community Council.

Ubuntu Developers (MOTU)

  • are members of the motu team in Launchpad

  • understand packaging concepts, having substantial experience uploading packages through a sponsor
  • apply this knowledge by uploading new packages, and updating existing packages, in the universe component

  • may also contribute to the main component in cooperation with a core developer

  • answer questions of other developers in order to expand their understanding of packaging work
  • provide guidance for prospective Ubuntu developers regarding technical issues
  • are encouraged to

Joining the MOTU team

  • Check out the general requirements for Ubuntu Membership.

  • Follow the process above.

  • The outcome of this will be decided by the MOTU Council, and reported to the Technical Board.

Ubuntu Core Developers

  • are members of the ubuntu-core-dev team in Launchpad

  • are collectively responsible for the maintenance of packages in the main and restricted components

  • have a strong working knowledge of packaging concepts and techniques, refined through experience
  • have a strong working knowledge of Ubuntu project procedures, especially those related to the release process and support commitments, and an understanding of the reasons why they exist
  • are able to apply this knowledge to a variety of packages and subsystems
  • have a history of substantial direct contributions to the distribution
  • take a leading role in new development projects to improve Ubuntu
  • specify, develop and deploy new features for the default installation of Ubuntu
  • exercise great care in their work, with the understanding that their efforts have a direct impact on others, including:
    • every Ubuntu user
    • the Ubuntu release team
    • corporate partners who provide support for Ubuntu
  • feel a sense of personal responsibility for the quality of Ubuntu releases and for the satisfaction of Ubuntu users

Joining the ubuntu-core-dev team

Per-package Uploaders

  • are developers with a specialisation in a specific set of packages in Ubuntu,
  • are granted direct upload to the Ubuntu archive for that set of packages.
  • are Ubuntu developers (ie: have a vote when the TB and CC are polling Ubuntu developers) and implicitly members of Ubuntu.
  • have sufficient technical knowledge of the package(s) in question from documented work in the package through sponsorship, work in other distributions, or work upstream.
  • have an understanding that such an access grant does not permit sole-maintainership, but rather the right to participate in the maintenance of the package as part of a team.
  • have an understanding of the broad strokes of the release schedule, relevant freezes that would affect the package in question, and appropriate means by which to handle any exceptions.
  • need to show advocation and support of existing developers indicating that previous work on the package demonstrated that unsupervised upload is warranted.
  • need to have documented previous concern for the packages in question in Ubuntu, including previous uploads, effective bug management, and similar previous work.
  • need to show a history of effective collaboration with other developers in Ubuntu.
  • are specialist maintainers, not generalist maintainers. They are not expected to understand packaging best practices applicable to a wide variety of software or large number of packages in the archive, but they are expected to have exceptional technical expertise with the package(s) for which access is requested.

Where a developer is a generalist with an interest in a wide variety of packages, that developer is encouraged to strive for ubuntu-core-dev or MOTU membership. In cases where a given small set of packages attracts the interest of more than one specialised developer, the Technical Board may recommend the foundation of a team.

Joining the Per-package Uploaders


CategoryProcess