Interested in contributing to open source, but not sure where to start? As a developer advocate working on Intuit Open Source, I hear this quite a lot from our community. To help you get over that cold start problem, we've compiled a beginner-friendly FAQ to jumpstart your first open source contribution.
If you prefer video, consider checking out our OSS beginners video guide as well!
Where can I find good active projects to contribute to?
- firsttimersonly.com has a listing of various first-timer resources
- GitHub issues search: #good-first-issue
- awesome-for-beginners (categorized by language)
- Nontechnical contribution resources: awesome-for-non-programmers
Our #1 tip: just do it! Don't get too stuck looking for the ideal first project, just choose something you can do and start getting your feet wet.
How do I feature OSS work on my resume or portfolio?
You can list open source contributions under the "Projects" or "Volunteering" headers on your resume. Rather than listing every contribution you've ever made, focus on the projects you're most associated with, and highlight the number of contributions you made to each of those projects.
Even if it's just one pull request, it's worth showing off your work to potential employers. An open source PR demonstrates that you're able to get up to speed with an unknown codebase quickly, a valuable skill for any technical role in the industry.
What technologies do I need to know to contribute to open source?
A working understanding of Git and GitHub is essential, but beyond that, the specific technology stack and tools you'll need will depend on the project you want to contribute to. If you're looking to deepen your expertise in a particular skill set, take a closer look at the open source libraries out there leveraging the tools or languages you’re hoping to learn, and find one that fits your learning goals.
E.g. As a frontend developer looking to improve my TypeScript fluency, I could search GitHub for good first issues tagged on projects that use TypeScript.
What happens when multiple people want to work on the same issue?
Most maintainers will typically have a "first come, first serve" policy when it comes to assigning issues to contributors. If you see an issue you'd like to tackle, make sure it's up for grabs before starting work by commenting on the issue and getting a confirmation from a maintainer on the project. It’s also common that someone may claim an issue and then not make progress on it for a while, at which point you’re welcome to step in and take over (with the maintainers’ blessing, of course).
When should I stop taking good first issues?
The beauty of open source is that there's always something new to learn and contribute to. Take good first issues as long as you feel like you need to, but don't be afraid to move on when you outgrow them.
How can I generate interest in a new open source project?
Building a strong community around your project is key to its success. Offer good first issues, participate in events and open source conferences, create clean documentation and video guides, and don't hesitate to ask for feedback from others in the field. Remember that it takes time and consistency to build community momentum, and there are entire teams and OSPOs dedicated to this specific problem, so don’t be too hard on yourself if things don’t take off immediately or if you can’t achieve the perfectly consistent cadence. Little by little, you’ll get there!
What other resources can you recommend for beginners?
- Here's a good Git workflow walkthrough, or you can step through the first-contributions guide
- Conventional commits
Let us know in the comments if you have any other questions, and we’ll answer as much as we can. If you’re still looking around for a project, our Intuit Open Source projects can also be a great place to start.
Happy coding, open-sourcerors!
Top comments (0)