Consensus Building

In some cases there is no obvious path to take or you might want to have reassurance for the path you want to take. In these cases people will often need to build consensus by making proposals and eliciting responses.

We want to avoid unnecessary discussion and the creation of significant amounts of unnecessary mail that everyone in the community needs to read. That is not to say that we want to avoid constructive discussion. This is the lifeblood of a successful project. However, there is a shorthand notation for showing support, or otherwise, for a proposal.

Sending out a Proposal

Proposals shall be filed as a pull request. It is common to indicate proposals by adding the label proposal to make it easier for the community to identify that the PR contains an important proposal.

Expressing Approval or Disapproval

First of all, it is important to understand that everyone is invited to express their opinion of any given action or proposal. Opencast is a community project in which no single individual has more power than any other single individual (except in a very few procedural situations).

The notation used is +1, -1 and 0. It is also common to see +0 and -0.

So, what do these notations mean?

Many people will use fractions to indicate the strength of their feelings, e.g. +0.5. Some will even indicate this is a definite yes with something like +1000.

The important thing is that this is not an exact science. It is just a shorthand way of communicating strength of feeling.

Consensus Building is Not Voting

The confusing thing about this notation is that it is the same notation used in a formal vote. Knowing when something is a vote and when it is a preference is important. It is easy to tell though, if the email's subject does not start with [#vote] then it is just an opinion. We try not to call votes, consensus building is much more inclusive.

The reasons for this notation being common is that when someone wants to summarise a discussion thread they can mentally add up the strength of feeling of the community and decide if there is consensus or not.

Once there is a clear consensus members of the community can proceed with the work under the lazy consensus model.