How to set up the governance structure of a new open source project

From DevSummit
Jump to navigation Jump to search

Two models of governance: Single leader (“benevolent dictator for life” model). Linux, Drupal, WordPress. The BDFL is often the final arbiter.

The project management committee (“PMC”) model. A council of elders that grows via election. Someone can apply/be recommended. Existing members vote on whether to include people. “Majority rules” is the way that decisions are made.

The “undefined” model. Just not specifying a model. Dangerous. Drupal only decided in 2013 that Dries was at the top of the model. Dries at the top, various working groups below him. --Let’s differentiate between no documented structure and no structure.

Corporate sponsor model. The corporation releases the source but maintains almost full control. Webkit/Apple, React/Facebook.

Consensus model – all contributors allegedly consent to changes in the direction.

Let’s differentiate between a multi-stakeholder group (developers, users, funders) and core committers (developers only)

In Backdrop, core committers are different from the PMC. Intentionally so that non-coders could make decisions about the overall direction of the project.

Core committers can decide day-to-day direction, but issues can be escalated to the PMC. The PMC could resolve disputes.

In Backdrop, any community member, big or small, can request a change for the PMC to consider.

What are the terms of the PMC members in Backdrop? Currently none. But in Drupal you have a 6-year term limit then take one year off before running again. You might not lose access privileges, but not have voting ability.

The fiscal sponsor of Backdrop requires that the management committee can’t have blocs. This is usually about multiple folks from the same committee, but Jen and Nate Lampton are married, so could reasonably be considered a bloc.

Check out for some details. Additionally Apache Foundation has good documentation – in CVS somewhere.

PMC logs policy questions as an issue in their private Github repo. Voting happens via the thumbs-up/down voting emojis. Most decisions happen remotely because of geographical dispersion.

Backdrop’s PMC is 6 people, and will grow to ~20. Some Apache projects have hundreds of PMC members.

PMC model is more democratic and brings in non-coders. However, it is absolutely critical that you define well what you as a group are trying to achieve. People have different needs; you want that diversity, but you want them to be aligned toward what you’re trying to build together. Your product might not meet everyone’s needs and you have to factor that in.

When Backdrop announced they were forking, lots of folks had ideas of what they’d do in a Drupal fork, but left when they saw the project wasn’t going in their direction. It was better they left rather than derail the project.

PMC members should check their personal opinions at the door at vote based on achieving the goals of the project, not on their personal needs.

A too-broad mission statement is like the Bible – you can pick and choose the part that fits you.

Organizations might join the PMC to influence whether a particular commit gets merged. --Response: Will they though? Is that the PMC’s job?

In Backdrop, we’ve handled about 25 questions, only one of which was a code issue.

Non-code issues include: Should we accept fiscal sponsorship from the Software Freedom Conservancy? A good move but fundamentally changes how the organization works.

Also: Discussions about changing the mission statement/philosophy. It’s easy to compare to Drupal, since they just defined their audience as “ambitious rich projects”. Backdrop would do that as the PMC.

Also: Budget discussions/spending money.

Working groups in Drupal have no (formal) authority. Their job is to establish agreement amongst themselves, which is escalated to Dries, who makes a determination. It scales your decision-making.

Some discussion about the PHP interoperability group: 30 software projects got one vote, and sometimes made decisions that were the average of what people wanted.

In CiviCRM, intiatives come in waves. Lots of energy that comes at the beginning, then tails off.

Backdrop has seen that, and they have a roadmap: Things they’d like to see in the next release. That often rallies people. Waves are a natural process of open source.

Does Backdrop have a formal legal structure? CiviCRM? CiviCRM has an LLC, with a fiscal partnership from PTP. There’s been a reorg in the last year and it’s just the LLC.

Backdrop has a tax ID (ITIN) so they do their books separately, but it’s still tied to Nate Lampton. But there’s a plan to move toward the Software Freedom Convervancy.

SFC has a percentage – 10%-ish. But that’s way less than you’d pay in taxes, and donations are tax-deductible.

Getting a 501c3 for sofrware projects is very hard.