SlideShare utilise les cookies pour améliorer les fonctionnalités et les performances, et également pour vous montrer des publicités pertinentes. Si vous continuez à naviguer sur ce site, vous acceptez l’utilisation de cookies. Consultez nos Conditions d’utilisation et notre Politique de confidentialité.
SlideShare utilise les cookies pour améliorer les fonctionnalités et les performances, et également pour vous montrer des publicités pertinentes. Si vous continuez à naviguer sur ce site, vous acceptez l’utilisation de cookies. Consultez notre Politique de confidentialité et nos Conditions d’utilisation pour en savoir plus.
In the last few years open source has transformed the software industry. From Android to Wikipedia, open source is everywhere, but how does one succeed in it? While open source projects come in all shapes and sizes and all forms of governance, no matter what kind of project you’re a part of, there are a set of fundamentals that lead to success. I’d like to share some of the lessons I’ve learned from running two of the largest commercial open source projects, Docker and MongoDB, as well as some very successful community projects.
This presentation was delievered at sinfo.org in Feb 2015.
Chief Operator @ Docker
Former Chief Developer
Advocate @ MongoDB,
Author of Hugo, spf13-
vim, Cobra, Afero, Viper
Mainframe Era :
60s & 70s
• Computer companies sold hardware
• Software was free
• Software was colloborative
• IBM dominates
The Software Era:
80s - 90s
• Software as a business emerged
• Software companies sold “bits”
• Software was private and proprietary
• Microsoft dominates
The Internet Era:
• Internet changes everything
• Open source movement gains traction
(Linux, Apache, MySQL, PHP)
• Tech selling ads, bits, hardware & services
• Google Dominates
The Free Source Era:
• Technology companies sell Hardware & Services
• Software is becoming free ($$) (Windows 10,
OS X, Android, IOS)
• Game companies still sell bits
• Virtually all software companies are now
participating in open source
• Requires time
• Requires editing
• Requires effort
• Requires practice
Users will have questions
• Need to establish a place for them to
• Public is ideal:
• Others can respond
• Others benefit from the response
Forums & mailing lists
• Google groups ok, but hard to search
• Stack Overflow will happen, but not focused
• Forums work best, Discourse is pretty good
• IRC also works well, but realtime and
without integrated search.
• Your single most important file
• First thing everyone sees
• Most projects don’t spend enough time
on a readme
• Where you convey your purpose & values
A Good README
Vision, concrete examples, installation instructions, etc
You need users
• No matter how good a project is, it
can’t succeed without users
• Unless you tell the world about your
project, people will not come
• Unnatural behavior for most engineers
To: Newsgroups: comp.os.inix
Subject: What would you like to see most in minix?
Summary: small poll for my new operating system
Message-ID: <mailto: 1991Aug25.205708.9541@klaava.Helsinki.Fi
Hello everybody out there using minix — I’m doing a (free) operating system (just a hobby,
won’t be big and professional like gnu) for 386 (486) AT clones. This has been brewing since
april, and is starting to get ready. I’d like any feedback on things people like/dislike in minix, as
my OS resembles it somewhat (same physical layout of the file-system (due to practical
reasons) among other things).
I’ve currently ported bash (1.08) and gcc (1.40), and things seem to work. This implies that I’ll
get something practical within a few months, and I’d like to know what features most people
would want. Any suggestions are welcome, but I won’t promise I’ll implement them :-).
Linus (mailto: firstname.lastname@example.org)
PS. Yes — it’s free of any minix code, and it has a multi-threaded fs. It is NOT protable (uses
386 task switching etc), and it probably never will support anything other than AT-harddisks,
as that’s all I have :-(.
Focus on the User
• Success depends on a good user
• Contributions come from happy
• Starts with installation
• What are the first 10 minutes like?
• What could turn a user away?
• When someone shows initative and
history of good contributions make them
• Resist tempation to control
• If you aren’t able to be responsive,
appoint more committers
• Don’t ever say no.
• Teach contributors how it can
become a yes
• Newly empowered contributors
contagiously help others
Docker’s Birthday Open-source-a-thon
18 Cities + Online. Mentorship by Go & Docker. Save Whales.