Contributing to Open Source Software
What it takes and why you should consider it
What is Open Source Software?
Imagine a Chef writing a recipe book. He uploads his manuscript to Google Drive, grants write access, and shares the link so that other chefs can contribute to it. Open source software is software with source code that anyone can inspect, modify, and enhance. If you have a smartphone or a PC, chances are you've used open-source software once or twice e.g. Mozilla Firefox, VLC media player, WordPress, Ubuntu, Blender, etc.
Who Can Contribute to Open Source Software?
Contrary to popular belief, you don't have to write code to contribute to open source. Documentation, discussions, UX, advocacy, and other forms of contribution are often overlooked and equally important. Therefore, anyone with an interest can contribute to Open Source.
Why Should I Contribute to Open Source Software?
I asked a few open source contributors in CHAOSS Community and here's why they think you should consider contributing to Open Source today:
Ruth Ikegah (CHAOSS Africa Community Lead):
- Collaboration: The transparency in open source fosters collaboration. By contributing to open source, you get to work with like-minded folks to build up an idea from scratch to a live product.
Elizabeth Barron (CHAOSS Community Manager):
- Learn valuable tech skills through practice (doesn’t have to be just code!)
Meet and connect with interesting people from around the world who have similar interests
Learn to collaborate and work asynchronously with distributed teams (which is a very helpful skill for the workplace)
Use your skills to make someone’s life better (especially if the project is for a non-profit, or if it has a socially impactful or DEI aspect to it)
Build a portfolio of your work to show potential employers
Help others grow their skills by welcoming them to a project and helping them find their way
How Can I Become an Open Source Contributor?
You can find a curation of open source projects at Up For Grabs, Aviyel, OpenSauced and similar platforms. Once you've identified a project you would like to contribute to, you should read their documentation (they usually have a contribution guide). Most of these projects have communities centred around them, it is best to join the community for support.
You don't need to be an expert to begin, they usually welcome beginners and direct you towards beginner-friendly tasks. However, to be an amazing open-source contributor, you must be able to communicate effectively, dedicate some time, and be open to diversity and inclusivity, as you would be collaborating with people of diverse ethnicity and beliefs. For more tips on navigating open source contribution, read this article on how to overcome the challenges of open source contribution.
You don't typically get paid for open source contributions, but some mentorship and internship programs pay people to contribute, such as Google Season of Docs, Google Summer of Code, Conthributhon by SheCodeAfrica and Outreachy. This is also a great way to get involved if you're just starting in your field and you need guidance.
Conclusion
Contributing to open source can seem daunting, and that is normal. Lots of open source contributors feel the same way in the beginning! I contributed to open source for the first time last month (May 2022), and here's how that went. Read how Rizel Scarlett conquered their fear of contributing to Open Source. Rizel also shared quick tips to navigating Open Source like a pro.