Governance - acquaman/acquaman GitHub Wiki

The Acquaman project is big enough to require some formalization of responsibility but not so big as to require strict codification. If continued growth creates a situation that requires more strictly defined systems, we’ll cross that bridge when we come to it. Like other open source projects, Acquaman is a meritocracy where consensus and creativity are the desired avenues. However, to borrow from the Ubuntu governance page:

“[It] is not uncommon in the open-source world for there to be multiple good arguments, no clear consensus, and for arguments to divide communities rather than enrich them. The argument absorbs the energy that might otherwise have gone towards the creation of a solution. In many cases, there is no one 'right' answer, and what is needed is a decision more than a debate.”

To this end, the Acquaman project recognizes two governance roles: a Project Team Leader and a Programming Team Leader.

The Project Team Leader is David Chevrier and he is responsible for the administration of the project as a whole. Setting the project’s direction, priorities, and pace, David has the ultimate responsibility for making decisions on what will be done in the project. Most of the time the group can easily make decisions with little friction; however, if consensus cannot be reached within the group, David has an obligation to step in and make a clear decision. On a sunnier note, if you have questions about Acquaman as a project or ideas on how to make it better, David is the guy to talk to.

The Programming Team Leader is Darren Hunter and he is responsible for the actual code that gets incorporated into the framework. Setting the best practices and code conventions, Darren is responsible for making decisions on how features and systems will be implemented in code. While it’s often obvious how ideas should be implemented, if disagreements arise Darren has the final say on both how to implement solutions as well as what becomes part of the official framework. Also on a more pleasant note, if you have questions about how to do something in Acquaman then Darren is the guy to talk to.

Both Team Leader positions exercise the power to “tell people what to do” in their respective areas. This is a responsibility rather than a privilege and it is not used lightly. It’s also the responsibility of a Team Leader to recognize if it’s time to “pass the torch”; however, the decision to step aside or step down is entirely within the purview of that Team Leader. Again, if circumstances arise in the future that require the current arrangement to be reconsidered, we’ll cross that bridge when we come to it.

The Acquaman project is still small but we’re planning for the future. We have scarce time and resources, so we choose to focus our efforts on working efficiently and collaborating effectively. We accept that we need a chain of responsibility to handle abnormal circumstances but, in the main, our project governance can still follow a simple maxim: govern yourself. If each of us treats our collaborators with respect and comes to the table with an open mind we can expect that neither Team Leader will have to exercise their powers with any frequency.