Skip to content

1. The Xerte Project Community

thexerteproject edited this page Oct 21, 2014 · 7 revisions

The Xerte Project Community is a diverse group of users and developers working together to advance the software.

Roles And Responsibilities

Users

Users are community members who have a need for the project, and they are the most important members of our community. Without them the project would have no purpose. Anyone can be a user and there are no special requirements.

The project encourages its users to participate in the project and community as much as possible. User contributions enable the project team to ensure that the software is meeting real world needs of those users. Common user contributions include evangelising about the project in the user’s various networks and providing feedback and moral support to the developers. Users who continue to engage with the project and its community will often become more and more involved. Such users may find themselves becoming contributors.

Contributors

Contributors are community members who contribute in concrete ways to the project. Anyone can become a contributor, and contributions can take many forms – you do not need to write code to contribute. There is no expectation of commitment to the project, no specific skill requirements and no selection process. To become a contributor, subscribe to the xerte-dev list.

In addition to their actions as users, contributors may also find themselves doing one or more of the following:

  • supporting new users (existing users are often the best people to support new users)
  • hosting face to face or online events
  • testing and reporting bugs
  • identifying requirements
  • providing graphics and web design
  • programming
  • assisting with project infrastructure
  • writing documentation
  • fixing bugs
  • adding features

Contributors engage with the project through the github issue tracker and xerte-dev mailing list. They submit changes to the project itself via pull requests which will be considered for inclusion in the project by existing committers. The xerte-dev mailing list is the most appropriate place to ask for help when making that first contribution. As contributors gain experience and familiarity with the project, their profile within, and commitment to, the community will increase. At some stage, they may find themselves being nominated to become a committer.

Committers

Committers are community members who have shown that they are committed to the continued development of the project through ongoing engagement with the community. Commit rights allow contributors to more easily carry on with their project related activities by giving them direct access to the project’s resources. That is, they can make changes directly to project outputs, without having to submit changes via pull requests. This does not mean that a committer is free to do what they want. In fact, committers have no more authority over the project than contributors. While committership indicates a valued member of the community who has demonstrated a healthy respect for the project’s aims and objectives, their work continues to be reviewed by the community before acceptance in an official release. The key difference between a committer and a contributor is when this approval is sought from the community. A committer seeks approval after the contribution is made, rather than before.

Seeking approval after making a contribution is known as a commit-then-review process. It is more efficient to allow trusted people to make direct contributions, as the majority of those contributions will be accepted by the project. The project employs various communication mechanisms to ensure that all contributions are reviewed by the community as a whole. By the time a contributor is invited to become a committer, they will have become familiar with the project’s various tools as a user and then as a contributor.

Anyone can become a committer; there are no special requirements, other than to have shown a willingness and ability to participate in the project as a team player. Typically, a potential committer will need to show that they have an understanding of the project, its objectives and its strategy. They will also have provided valuable contributions to the project over a period of time.

New committers can be nominated by any existing committer. Once they have been nominated, there will be a vote by the project management committee. Committer voting is one of the few activities that takes place in private. This is to allow PMC members to freely express their opinions about a nominee without causing embarrassment. Once the vote has been held, the aggregated voting results are published on the public mailing list. The nominee is entitled to request an explanation of any ‘no’ votes against them, regardless of the outcome of the vote. This explanation will be provided by the PMC Chair and will be anonymous and constructive in nature.

Nominees may decline their appointment as a committer. However, this is unusual, as the project does not expect any specific time or resource commitment from its community members. The intention behind the role of committer is to allow people to contribute to the project more easily, not to tie them in to the project in any formal way.

It is important to recognise that committership is a privilege, not a right. That privilege must be earned and once earned it can be removed by the PMC in extreme circumstances. However, under normal circumstances committership exists for as long as the committer wishes to continue engaging with the project. A committer who shows an above-average level of contribution to the project, particularly with respect to its strategic direction and long-term health, may be nominated to become a member of the PMC. This role is described below.