If you read my article "How open-source works?" you might have seen some reasons why people even consider open-source in the first place. Today, we are going to see how considering it will mostly make you a better developer.
To start, let's recap how open-source works in brief
Open-source software is usually stored in a public repository and shared publicly.
"Anyone can access the repository to use the code independently or contribute improvements to the design and functionality of the overall project."
So, our discussion is on the highlighted sentence of the text above. We will focus on a simple example of a contribution and how it makes you better as a developer if taken into practice consistently.
Let's run you through a simple example of contributing to a project:
So first, you have to know where to go to get these open-source projects and for that, you can check out various sources like social media, but even better you can just google "Open-source projects" and there will be a tonne of projects sent back to you right away.
We will dig deeper into how to get these projects in the next article
Now, you come across this project that shows you resources that you can use to get great cooking skills because you love cooking too ๐ด๐ฝ, for example, links to great youtube channels, and links to cooking. You also read about it thoroughly and understand how it works.
After reading through all the links and resources, you're like: "Wait a minute, there's a great chef called "Hatshimoto"(example) on Youtube that I don't see on the list yet he is one of the best cookers in the world, he should be here for sure!"
Then you decide to contribute the resource that you think is going to be helpful and can cause a great impact on the cooking community if they get to know "Hashimoto". The resource is either accepted or not, after review from the owner of the project. This is a summary in simple terms of how th contributing process happens.
How will contributing make you better?
Learn new technologies.
This is where the fun starts, you find a project and at the start, you have no idea what is going on. You may notice a programming language you have never used or another framework that you have never heard of or anything else. This is good because you get to learn new things which makes you familiar with the new stuff you learn which will take you a long way.
Better Communication skills
Throughout the whole process of open-source projects, contributors will have to communicate their thoughts at various stages, starting from the RFC or issue creating explaining proposed solutions and hence contributors' communication skills are improved.
Connect with People
Since the open-source world is large, it's very advantageous to connect with people when you contribute to a project and a comment is raised on that contribution a reply is sent back then a conversation is started and to be honest this can take a long way hence I highly emphasize it.
Impress people hiring
When you make contributions consistently towards a project just as I said in the beginning many people are watching and maybe taking note of what you contribute to the project hence this can be impressive to people hiring. Amazingly, you can be hired or even offered an opportunity for a technical interview by having consistent meaningful, and valuable contributions to projects.
Support from the Community
Many Projects have communities of learners, builders, contributors and supporters present around them. This enables even new people in tech to join and start their tech journey hence also supported by the community to grow gradually.
High Transparency
Source code is highly transparent meaning it is highly accessible and visible to all. Therefore changes made to the code which may be fixes, contributions just as the ones above, and many other things can be seen by everyone and this makes contributors and maintainers more accountable to ensure that the software is safe for everyone using the software.
Conclusion
Well, that was it for how open-source will make you a better developer, hope you got a hand of it well. Next, I will be sharing ways how to contribute to these projects and how to find projects that are meaningful to contribute to.
Thanks for reading up to this point.