Download - Community building lessons from Ansible
![Page 1: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/1.jpg)
Building a Community in an Accelerated World
Michael DeHaan and Greg DeKoenigsberg
![Page 2: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/2.jpg)
BONA FIDESWho are these guys, anyway?
![Page 3: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/3.jpg)
ABOUT GREGFedora, OLPC, Eucalyptus
Once upon a time, I read a paper
Modularity and Option Value
![Page 4: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/4.jpg)
ABOUT MICHAELLots of systems management tech
Cobbler, Func
Startups
![Page 5: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/5.jpg)
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
![Page 6: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/6.jpg)
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
![Page 7: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/7.jpg)
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
![Page 8: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/8.jpg)
WHAT'S CHANGED?And how do you manage an open source project in this new
world?
![Page 9: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/9.jpg)
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
![Page 10: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/10.jpg)
1. OVERCOMMUNICATE
![Page 11: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/11.jpg)
EMAIL FOR LONG-FORM DISCUSSIONSWhen someone bothers to ask a question...
any question...
they've invested time in your project.
Answer them.
![Page 12: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/12.jpg)
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.
![Page 13: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/13.jpg)
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.
![Page 14: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/14.jpg)
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.
![Page 15: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/15.jpg)
WHAT SUCCESS LOOKS LIKE900 users on IRC
3500 ansible-project
8000+ stars on GitHub
2500+ forks, 38% turn into contributions
![Page 16: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/16.jpg)
REMEMBER: QUIET PROJECTS ARE FAILED PROJECTS.
![Page 17: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/17.jpg)
2. USE GITHUB WISELY
![Page 18: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/18.jpg)
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.
![Page 19: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/19.jpg)
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
![Page 20: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/20.jpg)
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.
![Page 21: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/21.jpg)
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 :)
![Page 22: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/22.jpg)
3. DESIGN FOR FIRST EXPERIENCE
![Page 23: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/23.jpg)
CAN'T INSTALL SIMPLY IN 15 MINUTES?Keep working on it.
![Page 24: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/24.jpg)
CAN'T GET A WORKING EXAMPLE UP IN A LUNCH HOUR?Keep working.
![Page 25: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/25.jpg)
DOCUMENTATION CONFUSES PEOPLE?Keep working on it.
![Page 26: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/26.jpg)
WHAT SUCCESS LOOKS LIKEHappy users
Users starting meetups
...
![Page 27: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/27.jpg)
4. MODULARITY IS CRITICAL
![Page 28: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/28.jpg)
HUGE SCALE IS A FUNCTION OF ARCHITECTURE
![Page 29: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/29.jpg)
WHAT SUCCESS LOOKS LIKE240+ modules in core
Users/customers join development community (Gawker, Zynga,etc)
Vendors stepping up to help (Google, Rackspace, etc)
![Page 30: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/30.jpg)
5. GATHER THE RIGHT DATA FOR DECISIONS
![Page 31: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/31.jpg)
PAY ATTENTION TO WEB TRAFFICOur docs site is awesome for this
![Page 32: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/32.jpg)
WHEN IN DOUBT, ASKSurveyMonkey is free and worth it
Got a question? Ask!
![Page 33: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/33.jpg)
Finally...
DON'T BE AFRAID TO DO SOMETHING THAT'S "BEEN DONE"
![Page 34: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/34.jpg)
ISN'T CONFIGURATION MANAGEMENT KINDA DONE?Nope. Not even close.
(also, it's not all config management)
![Page 35: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/35.jpg)
TAKING ON THE INCUMBENTBy the numbers
![Page 36: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/36.jpg)
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)
![Page 37: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/37.jpg)
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)
![Page 38: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/38.jpg)
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)
![Page 39: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/39.jpg)
A GOOD IDEA IS ALWAYS A GOOD IDEA
![Page 40: Community building lessons from Ansible](https://reader033.vdocuments.us/reader033/viewer/2022060204/55a025391a28ab3b4a8b4588/html5/thumbnails/40.jpg)
THANKSMichael: @laserllama
Greg: @gregdek
Questions?