Open source,
Just like a lot of words in the tech world, you might have also heard the term open source.
But What is it and how can you be an open-source guy? Let's discuss it!!
So let's understand the open source with an easy example... Ram and Shyam are friends, and they both want to start a library. But both choose a different approach, Shyam bought a lot of books and now he distributes those books to people based on a small subscription charge.
But Ram on other hand calls his friends for a meetup every Sunday and everyone exchanges their books with each other. Here Ram does not own any books and he does not require to buy anything, same with all his friends. In simple words in the case of Ram community contributes to building the library while in the case of Shyam a person or an organization owns the library and operates it on its own.
Was this example hard to understand? Let's understand in a more simple way! An open-source project is one which has its code available on the internet, anyone in the world can read and make changes to that code.
There are millions of open-source projects on the internet that are developed and maintained by developers like you and me all over the world.
This example was much easy than the library one right? Of Course, it was, who told you that technical examples are always difficult to understand 😀?
Some great Open source projects:
Blender :
Blender is an open-source 3D modeling software developed in C language… It is completely free and almost every year blender is part of Google's summer of code.
Blender is a great example of how great an open-source project which is developed and maintained by developers sitting at their homes can be.
Lichess.com:
Lichess.com is another great example of amazing work done by the open-source community. Lichess.com is probably the second-best website for playing chess online if not the best!! Millions of games are played every day on lichess.com. And because of the open source culture a lot of features that are not free on other chess websites are free on Lichess.com.
There are also a lot of other open-source projects which I like to call D to D,
Which means Developer to Developer like kubernetes, Datree, Strapi, Amplication and a lot of other projects which makes life of a developer always easy.
How you can contribute to these projects?
Contributing to open-source projects is going to give you a lot of satisfaction and joy. But it is a long process and can make you feel lost! So here are some easy steps that you can take in order to start contributing to open-source projects.
1. Learn a language
You can literally learn any language because there are enough projects written in almost all languages. But to start with you can learn JavaScript.
2. Learn Git and Github
This is the version control softwares and services which are essential if you want to contribute to open source. It’s not at all difficult and you can actually finish learning this in less than 2 Days
3.Submit your first PR in one of these projects.
Hacktoberfest-Practice → https://github.com/EddieHubCommunity/hacktoberfest-practice
Hackclub → https://github.com/hackclub/dinosaurs
Making you comfortable in the open source world and giving you a chance to test your skills is the purpose of these projects. Believe me, once you submit your first PR and see the changes in the original project it will give you next-level confidence!!
Once you are done with these basic steps now you can start contributing to real projects,
And as always start small… And what I mean by this is that you can look for some easy issues in the project, and to find them you can search for ‘Good first issue’ label.
There are also documentation typo issues which are really easy to fix. And fixing these issues and Making those PRs will give you green boxes on your Github along with a lot of dopamine 😀.
To start with you can check out this amazing repository which contains beginner-friendly open-source projects wherein you can find a lot of ‘good first issues’
REPOSITORY LINK →github.com/MunGell/awesome-for-beginners
You may also want to be part of a community where you can find like-minded people.
Following are some Great communities you can join…
Major League hacking → https://mlh.io/
EddieHub Community → https://github.com/EddieHubCommunity
WeMakeDevs → https://github.com/WeMakeDevs
At the end what I would like to say is that the world of open-source is huge and can be overwhelming!! But just keep trying... Because you don't want to miss that feeling of "I am making this world a better place" and also you do not want to miss those green squares on your GITHUB right?? #WeMakeDevs