Ansible - 1,000,000 Downloads and Counting

40
Building a Community in an Accelerated World Michael DeHaan and Greg DeKoenigsberg

Transcript of Ansible - 1,000,000 Downloads and Counting

Building a Community in an Accelerated World

Michael DeHaan and Greg DeKoenigsberg

BONA FIDESWho are these guys, anyway?

ABOUT GREGFedora, OLPC, Eucalyptus

Once upon a time, I read a paper

Modularity and Option Value

ABOUT MICHAELLots of systems management tech

Cobbler, Func

Startups

WHAT IS ANSIBLE?Config mgmt, App deployment, Cloud, Orchestration

just manages machines over SSH

expresses configuration and processes in YAML

based on Python, but supports other languages

LINUX REACHED 100+ CONTRIBUTORS A MONTH IN YEAR 11

1 contributor (Linus Torvalds), August 1991

102 contributors, March 2002

https://www.openhub.net/p/linux

ANSIBLE REACHED 100+ CONTRIBUTORS A MONTH IN YEAR 2

1 contributor (Michael DeHaan), February 2012

115 contributors, March 2014

https://www.openhub.net/p/ansible-ssh

WHAT'S CHANGED?And how do you manage an open source project in this new

world?

KEYS TO OUR SUCCESS1. We overcommunicate

2. We use Github wisely

3. We design for first experience

4. We design for modularity

5. We gather the right data for decisions

1. OVERCOMMUNICATE

EMAIL FOR LONG-FORM DISCUSSIONSWhen someone bothers to ask a question...

any question...

they've invested time in your project.

Answer them.

IRC FOR REAL-TIME DISCUSSIONSWhen people need help now, be present.

This takes commitment until you have a community of users.

Almost 50% of our time in early stages of the project

Do allow your community to become self-sufficient.

TWITTER FOR BUZZChatter and banter are great,

but problems can't be solved in 140 characters.

Drive discussions to the mailing list.

Review Twitter daily.

DON'T TAKE CRITICISM PERSONALLYRespond to what requires a response.

Don't feed the trolls.

Don't do drama, and don't be afraid to ban problem users.

WHAT SUCCESS LOOKS LIKE900 users on IRC

3500 ansible-project

8000+ stars on GitHub

2500+ forks, 38% turn into contributions

REMEMBER: QUIET PROJECTS ARE FAILED PROJECTS.

2. USE GITHUB WISELY

THE OLD WAYS ARE GONESix million users are on Github.

Other issue trackers and code systems require different logins.

They all use the same tools.

They all have the same expectations.

And they contribute way more freely.

USE THE ISSUE TRACKERThe ticket system is flexible (and kind of horrible). Use it.

Prioritize issues quickly.

Ask for more information.

Template your responses.

Enlist bots if needed

DO NOT MERGE EVERY SINGLE REQUESTYou are the upstream.

You are responsible for quality.

Review patches even if it takes time.

Mentor contributors where possible.

Take the time to figure out your trusted contributors.

WHAT SUCCESS LOOKS LIKESuccess is having too much work

Several dozens of new pull requests, tickets, and emails a day

~900 people on IRC!

Hundreds of tweets in Japanese you don't understand :)

3. DESIGN FOR FIRST EXPERIENCE

CAN'T INSTALL SIMPLY IN 15 MINUTES?Keep working on it.

CAN'T GET A WORKING EXAMPLE UP IN A LUNCH HOUR?Keep working.

DOCUMENTATION CONFUSES PEOPLE?Keep working on it.

WHAT SUCCESS LOOKS LIKEHappy users

Users starting meetups

...

4. MODULARITY IS CRITICAL

HUGE SCALE IS A FUNCTION OF ARCHITECTURE

WHAT SUCCESS LOOKS LIKE240+ modules in core

Users/customers join development community (Gawker, Zynga,etc)

Vendors stepping up to help (Google, Rackspace, etc)

5. GATHER THE RIGHT DATA FOR DECISIONS

PAY ATTENTION TO WEB TRAFFICOur docs site is awesome for this

WHEN IN DOUBT, ASKSurveyMonkey is free and worth it

Got a question? Ask!

Finally...

DON'T BE AFRAID TO DO SOMETHING THAT'S "BEEN DONE"

ISN'T CONFIGURATION MANAGEMENT KINDA DONE?Nope. Not even close.

(also, it's not all config management)

TAKING ON THE INCUMBENTBy the numbers

CONTRIBUTORSThe people who help build the software

Puppet: 41 per year of life (8 years, 329 contributors)

Ansible: 450 per year of life (2 years, 899 contributors)

FORKSThe people who might help build the software in the future

Puppet: 147 per year of life (8 years, 1181 forks)

Ansible: 1253 per year of life (2 years, 2507 forks)

STARSThe people who rate the software highly

Puppet: 330 stars per year of life (8 years, 2653 stars)

Ansible: 4033 stars per year of life (2 years, 8066 stars)

A GOOD IDEA IS ALWAYS A GOOD IDEA

THANKSMichael: @laserllama

Greg: @gregdek

Questions?