by Travis McPeak and Andrew Spyker
Contributing to open source software can be a very rewarding experience that creates opportunities to learn about new problems and technologies, apply problem solving skills, meet and work with new people, and join a community pursuing a common goal. Getting started can also be confusing and full of questions:
- What should you start working on?
- Who do you ask for help or direction?
- What kind of style expectations do the maintainers of the project have?
To make it easier to get started, each of the projects featured at our recent OSS meetup (Repokid, BetterTLS, Stethoscope, and Hub Commander) provide contributing guidelines, host an online community where developers can communicate, and have tagged issues where help is wanted.
Every open source contributor starts with a first project, and we know first-hand how difficult it can be to get started working on a new project. To make the project on-boarding process easier we’re creating contributing guidelines for our projects. The contributing guidelines explain how to get started, test new features, write code that adheres to coding standards for the project, and get reviews when the change is ready.
Even with guidelines, new contributors often need a quick way to get feedback about ideas, features, or the best way to implement something. Each of the above mentioned projects has an online community chat (usually on Slack or Gitter) where developers can ask questions or bounce ideas off other project developers. Get started by finding the community in the contributing guidelines or the project README.
Finally, sometimes a contributor may want to get started on a project but not be sure what to work on. To help them get started we’re tagging issues that are appropriate for new contributors to the project (generally using the tag “difficulty: newcomer”, but please see contributing guidelines). These issues are perfect for a new developer or person unfamiliar with the project to get started. Developers already familiar with the project may also want to look at issues tagged with “help wanted”. Tackling these issues may take a while longer but will make a real difference for the project.
We hold regular open source meetups at Netflix. Our most recent meetup featured security projects that want new contributors and have taken steps to make contributing easier than ever. If these changes are successful at making it easier for new contributors, we’ll expand them to other projects in the future. We look forward to your contributions!