Open Source is very powerful that is encouraging and empowering, but students today are not really aware of what power the Open Source world really holds, how motivating the community is, and what opportunities it brings as most of the students do not know much about Open Source and how engaging the community is.
If you are here then Kudos to you for making your first step into the amazing Open Source world.👏
Now with no more delays let's get right into what Open Source really is, how inspiring the community is, what all opportunities it brings to students and how you also can make a little change to the community and empower others too.
Open Source, when you think of this term what might come to your mind is anything that is freely available, well that's what it exactly is.
Open Source can be explained as source code of any software that you might be currently using or will be using in the near future as the Open Source thing is only going to grow more and more and which is made available to everyone so that every single one of us can have a look, help making it better if we think that particular software is missing this feature and if we add that feature to it then the software would become much more better than before.
So, I hope you got a little idea of how things work in Open Source world.
Some of the most commonly used open source softwares are Mozilla Firefox, VLC Media player, Image editing tool Gimp and the list is simply endless.
As now we have known so much about open source let's get right into how you can help make a change and make your first contribution.
If you know about Open Source I believe that you might be aware of GitHub to, but if do not let's know a bit about Git and GitHub to.
Git is a version control system that lets you manage and keep track of your source code history.
GitHub is a web-based Git version control repository hosting service. GitHub provides all the functionalities of Git along with some of its own features as well.
Now we will be covering some steps so that you can download Git on your system and get started to contributing to your first repository.
We will be downloading Git bash, through Git bash you will be able to type Git commands that make source code management easier through versioning and commit history.
Download Git on your system from here.
After downloading, you need install it on your system. So for installation click on run then click on next, after that do not change the Destination location and simply click on next, after that while selecting components check the boxes with 'In the Quick Launch' and 'On the desktop'. After that keep on clicking next.
After installation, uncheck the box with 'View release notes' and check the one with 'Launch Git bash'
To get involved with Open source projects you need to have a basic understanding of how git commands work and how one has to use those commands to make a valuable contribution.
Reference for git commands:
This is the most crucial and salient part of your contribution. You need to find a project that interests you and that matches your skillset. And this need not to be a very large contribution. For someone who is just starting with open source it is highly recommended to start with Fixing typos, modifying documentation files in large and even small projects. Well as of now if you are reading this you might be looking to contribute as a beginner. first-contributions can prove to be a really good start for you. Hacktoberfest-practice and awesome-for-beginners can really help you as well.
You can filter the issues tab according to your skillset let's suppose you have basic knowledge of Java and you want to contribute to projects written in Java language then you can search good first issues by going to the issues tab and searching the issues with labels like 'label:"good first issue" ' and 'language:Java'
In a similar manner you can filter issues by replacing 'good first issues' with 'first-timers-only', 'beginner', 'good-first-bug' and 'easy'.
Go to your own GitHub account and there you will see a forked version of that project under your account. Now click into this repository that is forked and and we will make a copy of it on your machine by hitting the code button.
Copy the HTTPS URL.
Open your terminal or git bash window.
Move to the location on your computer where you want to create a copy of this project.
Run the following command:
git clone https://github.com/userid/first-contributions.git
Substitute your GitHub username for userid.
You now have a local copy on your computer.
The folder on your computer will have the same name as the remote repository on GitHub.
Create a new branch by running the following command:
git checkout -b add-your-name
cd into first-contributions.
Then cd into Contributors.
Now open the Contributors file in your Text editor.
Add your name alphabetically into the file along with your GitHub profile URL.
git status in the terminal
You should see this:
Changes that you made need to be staged and committed.
So to add your changes run the following:
git add .
Now your changes have been added and you are needed to commit your changes and push it to your remote repository that is on your GitHub account.
To commit your changes run the following:
git commit -m "add-your-name-to-contributors-list"
It is always important to write a good commit message while working in large codebase projects. So there you have to take care of writing an explainable and not too long message that describes what your contribution fixes and which can be easily understood by the maintainers of the project.
Now you have to push your changes to your remote repository so run the following command:
git push origin branch-name
When you will head over to your GitHub account you will be able to see a message with compare and pull request button.
Click on the button and now you will be creating a pull request that will be visible to maintainers of the project.
Yay!!!🎉 You just created your first pull request.
Thanks for following along. You are awesome and I am so proud of you!
NOTE: While contributing to any large codebase project or even smaller you can always ask your doubts in Slack channels, mailing lists that are there to help you.
Open Source community is really encouraging and inspiring and inclusive so if you ever feel overwhelmed about such large projects that you want to contribute to you can always ask your doubts and queries in mailing lists and slack channels.
Remember do not give up ever, people in different groups are more than happy to help solve your queries and all you got to do is reach out to them and explain your query.
If you have followed along then Congratulations 🎉 on starting your Open Source journey because that is really awesome and I really appreciate your efforts.
Also mentioning some other resources that will help you in your Open Source, programming journey and the amazing Computer Science Field :
Hope you found this helpful. If you did then do share this with people who are beginners like you and want to make their first contribution in Open source.
Thanks for reading and hope you have a great day!!😃
Say Hello! Twitter