Open source software has taken over the world. From the early days of Linux and MySQL, open source is driving innovation like never before, with more than 180,000 public repositories on GitHub alone.
For those of you who have not yet ventured into the open source world, here are the three reasons to start today.
Build your confidence as a developer
If you're young, early in your career, or are even just learning a new programming language, open source is the best way to get started.
By contributing to an open source project, you receive immediate feedback on your development and programming skills. You may get suggestions about the choice of a function name, the way you used conditional logic, or how using a goroutine you didn't know about speeds up the execution of your program. This is all invaluable feedback to receive when you're learning something new.
Moreover, as you create more pull requests and apply what you learned from previous submissions, you begin to learn how to write good code and submit great pull requests for code review. Finally, many open source projects offer mentorship programs to help guide you through your first few contributions. It is a very welcoming, safe environment to build your confidence as a developer.
For an example story, read about Allan Guwatudde's experience in open source as a self-taught developer.
Build your resume or CV
Even if you're a seasoned developer, you may want to build your resume to help with career development and future job searches. Perhaps you're interested in exploring a new cutting-edge framework or a new programming module, and you don't have opportunities to do either at work.
You may be able to get experience by registering for a course or finding a way to introduce these concepts at your day job. But when those options are not available (or desirable), open source provides the perfect opportunity! In addition to building your skills and increasing your confidence, all of your open source contributions are public and demonstrate the skills you have mastered and the projects you've tackled. In fact, your open source profile by itself could provide you with a strong portfolio that sets you apart from other job candidates.
Moreover, many open source projects—such as Mattermost—allow you to add yourself as a Contributor on LinkedIn to directly promote your professional profile.
Read about Siyuan Liu's journey from the first open source contribution to becoming a two-time MVP of the Mattermost project.
Build your professional network
Building a strong professional network can help you achieve your career goals, learn more about your own or adjacent fields, and help with a job search. Contributing to open source is an excellent way to build that network. You join a welcoming community of hundreds or thousands of contributors, interact with likeminded developers in the open source space, and build connections along the way. You might even get introduced to key people in the industry, like the maintainer of a high-profile open source tool. Such relationships can turn into career-changing connections.
Finally, contributing to an open source project may even land you a job! For example, Mattermost has hired several contributors from its open source community to work full-time on the engineering team.
Start contributing to open source today
Open source empowers you to build your confidence as a developer, build your resume, and build your professional network. Moreover, your contribution—no matter how big or small—makes a direct impact on the future of the open source project. That's why many projects send gifts as a thank you to contributors (e.g., a customized mug to all first-time contributors).
Ready to get started with open source? Check out these open source projects for first-time open source contributions or find out how to contribute to Mattermost to get started.
This article was originally published on opensource.com.
Top comments (2)
I'm sure all of those are great reasons for you to start but as an open source maintainer I would much rather you contributed because there is a gap or a problem in my project that you want to fill to make your life easier or better or more fulfilled.
If you are just going to make a drive by patch to boost your CV and then I'm never going to see you again then I'd rather you didn't bother.
Thank you! Good feedback, agree that's certainly a great reason to get involved in open source and contribute to a project.