Slide 1

Slide 1 text

Fostering a culture of collaboration Ben Balter @benbalter ben.balter.com ben.balter@github.com

Slide 2

Slide 2 text

Roadmap • Open source (in the enterprise) • Best practices (internal, external) • Community building (internal, external)

Slide 3

Slide 3 text

Open source in the enterprise

Slide 4

Slide 4 text

The open source maturity model • Consuming - Using open source software • Releasing - Creating a new open source project • Contributing - Contributing to upstream projects • Embracing - Strategically participating in open source

Slide 5

Slide 5 text

Conway's law “organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations ”

Slide 6

Slide 6 text

How you work is as important as What you work on

Slide 7

Slide 7 text

How closed source projects can work like open source projects

Slide 8

Slide 8 text

Open source ≠ Published source

Slide 9

Slide 9 text

Open source is a philosophy Not a type of software

Slide 10

Slide 10 text

Process is shared to the widest extent practical One team — your organization — the entire world

Slide 11

Slide 11 text

Open Source (software)
 software that can be freely used, modified, and shared 
 (in both modified and unmodified form) by anyone

Slide 12

Slide 12 text

Open Source
 a philosophy of collaboration in which working materials are made available for 
 others to fork, modify, discuss, and contribute to.

Slide 13

Slide 13 text

Adopting open source Code & process

Slide 14

Slide 14 text

Friction (n) - the time it takes to go from "I want to contribute" to "I have"

Slide 15

Slide 15 text

Open source best practices

Slide 16

Slide 16 text

Inside the firewall

Slide 17

Slide 17 text

1. The technology is the easy part

Slide 18

Slide 18 text

2. Start small, go through the motions

Slide 19

Slide 19 text

3. Minimize information imbalance procedurally — day-to-day — long term

Slide 20

Slide 20 text

4. Embrace the constraints of open source Electronic — Available — Asynchronous — Informal

Slide 21

Slide 21 text

5. Open source problems, not solutions

Slide 22

Slide 22 text

Outside the firewall

Slide 23

Slide 23 text

1. Expand your definition of stakeholders (Potential) users — (Potential) contributors — Subject matter experts

Slide 24

Slide 24 text

2. Be the hub, encourage spokes

Slide 25

Slide 25 text

3. Minimize contributor friction

Slide 26

Slide 26 text

4. Decentralize governance Community management — Code review — Leadership

Slide 27

Slide 27 text

5. Encourage contributions In advance — day-to-day — going forward

Slide 28

Slide 28 text

Open source community building

Slide 29

Slide 29 text

1. Make open source an explicit expectation Open source Fridays — Hack Weeks — upstream improvements

Slide 30

Slide 30 text

2. Solve a shared problem

Slide 31

Slide 31 text

3. Link to the repository from your project’s distribution channel Topics — Good first issues — Help wanted

Slide 32

Slide 32 text

4. Add community documentation Common license — CONTRIBUTING — Community Profile

Slide 33

Slide 33 text

5. Publish technical documentation Marketing docs — End-user docs — Technical docs

Slide 34

Slide 34 text

6. Document how to contribute (And that you want contributions)

Slide 35

Slide 35 text

7. Clarify support vs. development SUPPORT file — troubleshooting/FAQ — dedicated channels

Slide 36

Slide 36 text

8. Welcome new contributors Hand holding — Saved replies — Linking to other issues

Slide 37

Slide 37 text

9. Set up automated tests (CI) To provide instant feedback without human intervention

Slide 38

Slide 38 text

10. Enforce code standards (and community standards too)

Slide 39

Slide 39 text

Bonus: Automate (or outsource) community management Probot — Adoption — Archived repositories

Slide 40

Slide 40 text

Resources • Open source guide: opensource.guide • FOSS Maturity model: github.com/github/maturity-model • Best practices - Internal: bit.ly/5bpos-internal • Best practices - External: bit.ly/5bpos-external • Best practices - Community: bit.ly/foss-community • Contributing template: github.com/nayafia/contributing-template

Slide 41

Slide 41 text

These slides: http://bit.ly/foss-innovation-culture

Slide 42

Slide 42 text

Fostering a culture of collaboration Ben Balter @benbalter ben.balter.com ben.balter@github.com