If you’re looking to get started with open source contributions, it can be difficult to know where to start. To make a positive impact on a project, you need to have an understanding of how contributors and maintainers interact in the open source community, as well as their expectations and guidelines. This article will help you pinpoint how to find the right project, search for issues with Ovio’s recommended search methods and be a quality contributor to the open source community.
Get to know GitHub (for first-timers only)
In order to get the most out of your open source software (OSS) experience, make sure you have a good understanding of how GitHub works. Developers constantly make changes to their code, and GitHub manages them in a central repository. This way, everyone involved with the project can download a given piece of software, make changes and submit updates throughout the development process. This article does not focus on how to use GitHub. If you’re not familiar with the platform, we recommend reading this 10-minute guide.
Find a project
To maximize your potential for success, take time finding a project on Ovio that matches your personal goals and values. Indeed, finding an open source project to which to contribute isn’t simple. Before selecting a project, it’s important for anyone who wants to get involved to set up goals as well as define requirements such as interests, skills and time availability. Goals are very personal and can range from finding a mentor to practice communicating with developers.
1. Choose average-sized projects
It’s important to choose the right sized project for you. Oftentimes, developers try to work on a project where the code base is too robust or too many people are competing to submit issues. Keep your OSS experience as simple as you can. When there are more contributors than there are issues, it makes working on a project difficult and less productive. Targeting less popular GitHub repositories that are often overlooked can be an easy and effective way to contribute. These projects are more accessible and provide you with a greater opportunity to make a sizable impact.
2. Use Ovio curated list of contributor-friendly projects
Target projects that focus on specific technologies you’re interested in working with or learning more about to make your search process simpler. You can also look at projects you already use or enjoy. Using Ovio, you can filter your searches according to your personal skills and interests. By choosing a code language you’re interested in and a topic that matters to you, you’ll have a much more focused list of project options to explore. Once you have access to an organized list of repositories, select a project that has been updated within the past month. This is a good indicator of community health, maintainer engagement and overall dynamism. Ovio’s curated list of repositories is meant to highlight active, ongoing projects. Finally, look for projects with tags, like “good-first-issues” or “help-wanted.” Issue tagging is a strong indicator of maintainers’ efforts to attract external contributors like you!
Find an issue
Because every issue is associated with a project, when you discover errors or bugs, you’ll inevitably discover a project. This is an efficient way to get started immediately, but deciding which issues to work on isn’t easy. There are a lot of projects out there, meaning you’ll have plenty of issues to choose from.
1. Filter your search with Ovio
After you’ve filtered your search, according to code language and topics, you can narrow your results by filtering issues based on difficulty level, priority, length of work, etc. One of the easiest ways to search is by filtering issues labels. Many open source projects label their issues to conveniently track them. Make sure the issue has not been claimed yet by looking at the orange tag on the upper left corner. On Ovio, the list of issues is pre-filtered on unassigned issues to make your search easier.
2. Start Small
As you filter through issues to find a good one for you, remember to start small. Open source contribution is not a race. Small issues lead to quicker payoff and better chance of success. It will be rewarding when your first contribution is accepted by the maintainer or the community. The more complicated is an issue you select, the longer you’ll postpone getting a payoff.
3. Select the best match
If you’re interested in working on the issue, add a comment on GitHub to let the maintainer know you’re interested. You can also save the issue directly on Ovio, so you can jump right back in where you left off next time. Before you start working on the issue, don’t forget to review your selection and choose one that seems achievable considering your experience and time availability.
Read the project’s guidelines
Your impact depends upon your ability to adhere to the community’s guidelines. Above all, respect the working conditions of others in the open source community. Many projects include documents, titled “CONTRIBUTORS.md,” which present the preferred way of making contributions. If the project you wish to join does not have a similar document, check other possible places, like the “README.md” or project’s wiki page. Get acquainted with the maintainer’s rules and follow them accordingly. If your work doesn’t meet the project’s criteria, outlined in the contributor’s guidelines, it’s likely to be declined even before the review. These guidelines and conditions serve to protect the time and work of the maintainers. Respecting the rules will reflect positively on your reputation within the community, as well as your contributions.
Get involved with the community
Join Slack or Gitter. Because most projects come from an organization, they’re often linked to a community of people. The best way to get noticed and start forming connections is by joining their social network. You can do this by joining their preferred communication channel, which is often a platform, like Slack or Gitter. Some projects use Twitter or Facebook groups as well.
Show respect for others
Be inclusive, polite, and express a positive attitude when commenting, coding or discussing with other members of the open source community about a project. If you’re not compliant with the community rules, your contributions might not be integrated.
Ask questions request feedback
Don’t hesitate to ask questions or for help from other contributors or maintainers. It demonstrates your commitment to the project and expedites your contributions to the project. Asking for feedback is the best way to improve and show that you care.
Join the Hacking League (for students only)
If you are a student looking for an internship, look for the Major League Hacking Externship. Whether you’re an experienced developer or a first-time contributor, Ovio can help you throughout the process of making your contribution. Once you become comfortable navigating GitHub and interacting with others in the community, you’ll be able to support the execution of a project and make an impact. To get started today explore Ovio’s project list.
- Red Hat. (2020). The State of Enterprise Open Source. https://www.redhat.com/en/enterprise-open-source-report/2020.
- Jeff Stern. (2020). How open source software is fighting COVID-19.Opensource.com. https://opensource.com/article/20/3/open-source-software-covid19 .