Open Source Governance Models Explained

Whether you want to contribute to open source projects or you want to have your own open source project, it is important to know/find out which project’s contributor has the authority to help you make a contribution, for example. In open source, this is called project governance. Project governance is a group of community-elected developers from the project’s contributor base that are able to make technical decisions about the project’s future [1]. Every open source project has a governance model. However, this model may vary from project to project. In this article, we describe some of the most common open source governance models.

Variance in open source governance models

Different projects may have different governance models. For you to have an idea, governance models can go from centralized control by a single individual or organization (also called benevolent dictatorship) to distributed control awarded in recognition of contributions (also called meritocracy) [2].

Figure 1 shows the range of open source governance models and some examples of projects in those categories. It is also illustrated in the image whether the project encourages contributions from broad sources (bazaar-style) or has a small core of dedicated contributors (cathedral style). For example, the Linux project encourages contributions from everyone and the project is often released, but the governance is done by Linus Torvalds, who has the final say on the contributions included on each release. The project GNU Emacs follows another approach. Emacs has a small team of committed contributors and less frequent releases. Although the project is governed by Richard Stallman, there are maintainers who run the project with a more open contribution model.

Figure 1: Governance models — Image extracted from [2]

Diving deeper into the different open source governance models.

We present below an explanation of the different open source governance models.

  • Do-ocracy: Projects that adopt this governance model tend to value those who do the work as those who make the decisions. That is, contributors that invest the most time, energy, and attention to the project have the most authority and influence over decisions in the project. Projects that follow this model claim that they don’t have a governance model, since the model is implicit in the everyday tasks and interactions of contributors.

How do projects apply these governance models in practice?

Projects might follow one or more than one governance model. Classical examples of projects following the Founder-leader model are Linux, Python, Perl, SciPy, Wordpress, Pandas, and Vim. Projects that are under foundations such as all Apache projects and the TARS project hosted under the TARS Foundation follow the foundation-backed, electoral, and do-ocracy.

Why should your project have a governance model?

A project governance model has many advantages for open source projects. First, it reduces the risk of project abandonment or not being maintained. Second, it eliminates single-vendor control. When projects start having a certain success, they start to realize that without a governance model, there is a great risk of the vendor making choices that are good for the company’s strategy, but not for the entire ecosystem. Finally, it’s a safe place for innovation. That is, when a project has an open governance model, developers trust that their contributions will be accepted based on merit and what’s best for the project. This allows projects to attract people with a different experience and background, making them stronger.

TLDR-summary: Adopting a governance model as early as possible is critical for the success of an open source project. Choose the best governance model for your project and document it so that other contributors know who to contact in case they need to.

About the author:

Isabella Ferreira is an Ambassador at TARS Foundation, a cloud-native open-source microservice foundation under the Linux Foundation.






Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Isabella Ferreira

Data scientist | Machine Learning Engineer | Researcher | Software Engineer