My talk from the #AWSCommunity event about my experiences maintaining various open source projects.
What Works and What Doesn’t
Who am I?
Engineering People Lead, Operations Infrastructure Engineering @ Remind
@phobologic on Twitter
What is this talk about?
A python library that allows for
easier creation of AWS
An independently scalable
monitoring system that follows
Nagios plugin standards.
A control layer on top of Amazon
EC2 Container Service (ECS) that
provides a Heroku like workflow.
An AWS CloudFormation Stack
Starting Your Project
Why open source this?
What will make this project feel “successful” to you?
Is this a problem area you feel engaged with? Is it something you’ll likely be
engaged in for the foreseeable future?
What issue does it solve?
What is the goal?
How common is the issue?
This will also help you focus, and make hard design decisions.
How focused is the problem area? Tighter focus usually means it’s an easier
project to maintain, whereas broad focus can require more work.
Choosing a License
I Am Not A Lawyer!
https://choosealicense.com/ is your friend
What do you want to do with your project/who do you want to use it?
Code of Conduct
“When a project seems hostile or unwelcoming, even if it's just one person
whose behavior is tolerated by others, you risk losing many more contributors,
some of whom you may never even meet. It's not always easy to adopt or
enforce a code of conduct, but fostering a welcoming environment will help your
community grow.” -- https://opensource.guide/code-of-conduct/
Most Important: Picking a Name
If eyes/users/contributors are important to you, it may take active promotion to
make your project a success.
Join relevant slack teams
Offline - go to meetups/conferences/give a talk!
How much effort/time are you willing to put into supporting your users?
Start a Slack team or Gitter Community (and make it easy to find!)
Be kind, be helpful
Be polite, be gracious, be responsive
Sometimes you have to say no
Rule #1 of open-source: no is temporary, yes is forever. -- @solomonstre
It can take time
Time to first PR:
● Empire: ~1day
● Troposphere: 3 months
● Stacker: 9 months
Having a team makes all of this a lot easier. Special thanks to @markpeek,
@bobveznat, and @vesirin who I interact with on most of the open source
projects I work on these days.
Getting paid for software you give away
Getting paid to work on stuff you give away
Figure out your (potential?) employers outlook on Open Source
Show that you engage in Open Source outside your work
Talk about the benefits of Open Source
Be up front about the costs of Open Source
Other ways to get involved