Skip to content

Ganglia Project

Ng Zhi An edited this page Jul 27, 2014 · 1 revision

Introduction

The Ganglia project work as a meritocracy meaning that the more you do, the more responsibility you merit. The project also tries very hard to be as open and transparent as possible. The project's purpose is to provide high quality systems monitoring software and to develop this software in an environment that is open and welcoming to all who wish to participate. The information on this page should give you a very good idea of how the Ganglia project works and how decisions are made.

Meritocracy

Meritocracy: "Govern of Merit". The basic concept behind a Meritocracy is that the more you participate, the more responsibility you merit. In the Ganglia project, there are several levels of responsibility ranging from a simple user or contributor to being a project administrator. All users or interested parties in the Ganglia project are classified as contributors. The simple definition of a contributor is a person who has an interest in the project and starts to contribute to it (such as posting code or documentation patches, contributing ideas to or replying to email on the mailing list). As their participation or contributions to the project expand and the project administrators recognize this fact, the administrators may determine that the person has "merited" the right to become a project committer. Among other responsibilities, being a project committer gives the person commit rights to the project's source code repository. The person's role or responsibilities may continue to increase as merited by their actions and participation in the project. The benefit that this has on the project itself is to make sure that those that govern the project are those that maintain a vested and sustained interest in the project, therefore ensuring that the project is always moving forward in the direction that benefits both the project and the community.

For more information on the principle of Meritocracy and how it is successfully being used visit The Apache Software Foundation.

Roles

A meritocracy enables various roles:

  • User/Contributor
  • Committer
  • Project Administrator

User/Contributor

A user is someone that uses the software. A user may also be a contributor by providing the Ganglia projects with feedback in the form of bug reports and feature suggestions. Contributors may participate in the Ganglia community by helping other users on the mailing lists and user support forums. A contributor may also contribute code or documentation to the project in the form of a patch. They usually take extra steps to participate in a project, are active on the developer mailing list, participate in discussions, provide patches, documentation, suggestions, and criticism. However, users or contributors do not have rights to commit patches directly into the source code repository nor do they hold a binding vote within the project.

Committer

A committer is a contributor who has demonstrated a sustained interest in the Ganglia project. As such, they have been invited by the Ganglia project administrators to become a committer on the project. By accepting the invitation, they are given Write access to the code repository. With Commit rights to the repository, a committer no longer needs to depend on other committers in order to commit patches to the source code repository. They are also allowed to vote on issues that involve the technical direction or design of the source code itself. However, a committer does not carry a binding vote on issues that concern the project as a whole, although their feedback and opinions are always welcome.

Project Administrator

A Project Administrator is a committer who has demonstrated a sustained interest in not only the technical aspects of the Ganglia project, but the administrative aspects and direction of the project as well. Those who merit this level of responsibility are invited by the project administrators to become an administrator. They have Write access to the code repository, the right to vote on community-related issues, and the right to propose an active user for committership as well as an active committer to become a project administrator.

Project Administration and Collaboration

Communication

Communication is done via mailing lists. Mailing lists can be thought of as "virtual meeting rooms" where conversations happen asynchronously. The asynchronicity of mailing lists allow for a geographically distributed community that covers many different time zones, to communicate in an efficient and effective manner. They also provide a public forum where in all voices can be heard and considered. In addition, a more synchronous messaging system such as IRC may be used for support questions or for synchronous discussions of predetermined topics. If there are decisions made in these discussions, they should be posted to the mailing list, either summarized or the entire IRC chat log. In general, asynchronous communication is much more important because it allows archives to be created and it's more tolerant on the volunteer nature of the various communities.

Decision Making

The Ganglia project is auto governing and driven by the people who volunteer for the job. This is sometimes referred to as "do-ocracy" -- the power of those who do. This functions well for most cases. When coordination is required, decisions are taken with a lazy consensus approach: a few positive votes with no negative vote is enough to get going. Voting is done with numbers:

  • +1 -- a positive vote
  • 0 -- abstain, have no opinion
  • -1 -- a negative vote

The rules require that a negative vote includes an alternative proposal or a detailed explanation of the reasons for the negative vote. The community then tries to gather consensus on an alternative proposal that resolves the issue. In the great majority of cases, the concerns leading to the negative vote can be addressed. This process is called "consensus gathering" and we consider it a very important indication of a healthy community.

Individuals Compose the Ganglia Community

While a few participants of the Ganglia Project participate as part of their assignments by their employer, all participants of the Ganglia Project are participating as individuals. Unless they specifically state otherwise, whatever they post on any mailing list is done as themselves. Their posts are the individual's point-of-view, wearing their personal hat and not as a mouthpiece for whatever company happens to be signing their paychecks right now.

Balancing Confidentiality and Public Discussion

e endeavor to conduct as much discussion in public as possible. This encourages openness, provides a public record, and stimulates the broader community. However sometimes internal private mailing lists are necessary in order to conduct administrative duties such and discussing the acceptance of a potential committer or project administrator.