Open Source Governance Models:

From BDFL to Consensus Seeking

With your host

@MylesBorins

Linux Open Source Leadership Summit

Howdy

My Name is Myles

itsa me!

I am gainfully employed by Google as a Developer Advocate

Focusing on the Node.js ecosystem running on GCP

Google Clud Platform
The opinions expressed in this talk are solely my own

What even is open source governance

How is Node Governed?

Board of Directors

13 members

TSC

11 members

CTC

19 members

Collaborators

74 members

Working Groups

sooooo many (this is a good thing)

Trust in individuals can be replaced

With trust process and tooling

Consensus Seeking

Our Technical Governance Model

But how did we get here?

We have to go back!

Node.js was created in 2009

It was created by Ryan Dahl

First presented at JSConf.eu 2009

It was run using a BDFL model

What is BDFL?

Benevolant Dictator for Life

originally coined

as a title for

Guido van van Rossum

in a 1995 email thread

TLDR;

A governance model where a single individual

Retains the final say in decision making

Examples

Linus Torvalds

Linux

Larry Wall

Perl

Yukihiro Matsumoto (Matz)

Ruby

BDFL can be successful

if truly benevolent

"BDFLs works if they see themselves as facilitators not controllers"

- @ag_dubs

Node had 3 different BDFLs

Ryan Dahl

From initial release until v0.6

Isaac Schlueter

Starts doing releases at v0.6.5

TJ Fontaine

Starts doing releases at v0.10.13

Under corporate sponsorship

Node stagnated

Node started with alternating releases

Even was stable

Odd was unstable

It was taking a long time

for v0.12.0

Let alone v1.0.0

The project was forked in Dec of 2014

Released as v1.0.0

v0.12.0 Released

Feb 2015

Just before Node Summit

v1 - v3 were all part of the iojs project

Node was put into a foundation

The projects merged as v4.0.0

September of 2015

Consensus Seeking

How does it work?

Every commit

Semver Major Changes

We have a well defined release process

Including a Long Term Support schedule

Node.js LTS schedule

Trust in individuals

can be replaced

With trust process and tooling

CI

Smoke Testing

By putting our community first

We allow ourselves to update the process

Finding some amazing people

Rich Trott

@addaleax

William Kapke

ME

So which Governance model should I use?

Use whatever you want!

BDFL can look like lazy consensus

But it does introduce Risk

What is important

Is that you empower your community

Thank You

a surfing puppy

@MylesBorins