Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Open Source: What Works, What Doesn't

Open Source: What Works, What Doesn't

My talk from the #AWSCommunity event about my experiences maintaining various open source projects.

Michael Barrett

June 15, 2017

More Decks by Michael Barrett

Other Decks in Programming


  1. Who am I? Michael Barrett Engineering People Lead, Operations Infrastructure

    Engineering @ Remind https://github.com/phobologic @phobologic on Twitter
  2. troposphere A python library that allows for easier creation of

    AWS CloudFormation templates. https://github.com/cloudtools/troposphere
  3. Empire A control layer on top of Amazon EC2 Container

    Service (ECS) that provides a Heroku like workflow. https://github.com/remind101/empire
  4. Engagement Is this a problem area you feel engaged with?

    Is it something you’ll likely be engaged in for the foreseeable future?
  5. 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.
  6. Focus How focused is the problem area? Tighter focus usually

    means it’s an easier project to maintain, whereas broad focus can require more work.
  7. 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?
  8. 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/
  9. Promotion If eyes/users/contributors are important to you, it may take

    active promotion to make your project a success. Twitter/HackerNews/Reddit/Medium Join relevant slack teams Offline - go to meetups/conferences/give a talk!
  10. Support 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 Encourage feedback
  11. Handling contributions Be polite, be gracious, be responsive Sometimes you

    have to say no Rule #1 of open-source: no is temporary, yes is forever. -- @solomonstre
  12. It can take time Time to first PR: • Empire:

    ~1day • Troposphere: 3 months • Stacker: 9 months
  13. The Team 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.
  14. 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