My First Open Source Contribution
So, it has been already more than two months I have started to learn programming from the ground up (Again!). And I just wanted to take this to the next level, and that’s where the most beautiful thing in the world came along and helped me.
Before that, let me tell you explicitly that I literally didn’t contributed from programming perspective but it was nice to take a good look at it and learn how things are actually happening.
How it began?
I always knew wanted to work for Open Source, but as a beginner I wasn’t sure where to begin exactly.
As simple as it is, I first created an account with Github which is THE central repository for most of the Open Source projects. Once I created an account, it had me to learn git, a version control software widely used. Github actually works on the basis of it and it provides unlimited access to created public repositories and a paid version for Private repos.
Just after learning the basics of git - how it works, I learned the Markdown syntax for Github which is essential if you think about contributing any repos in Github. There was this most useful repository which gives a cheatsheet of Markdown syntax of github.
Now, I need to pick a repo which is not heavy dose for the beginners at the same time a significant contribution I can provide. I picked up the free-programming-books repo which is one of the most starred repo on the site. The repo provides links to the free programming tutorials, books, courses out there.
Fortunately, I had the list of books, courses, tutorials, videos I have been using to learn programming for myself. So, I went ahead and checked if my links are there in the relevant sections, turns out, None of them were there..! A chance to learn, I quickly forked the repo, created smaller commits (as per the instructions of the repo) and merged into the master branch, created a Pull Request, and Waited……… Then, got my first notification of the more to come, that I have merged the commits to a wrong File :D.. Whoo, my first commit is itself a mistake.. I quickly gone through the sites and opened the file that needs to be modified, turns out the tutorial list I had was already there!!
I don’t know why, but it felt like something like of a failure (totally weird, I know), but then I realized that it’s about contributing from my part.. I then swifted through all of their files, correct spelling errors, rearranged orders, checked invalid links, provided suggestions and commited my changes in a Pull Request, and there was my second notification, It was Merged!!
Slowly and steadily, I went through some minor programming repos reading codes, and then only I came across Mozilla’s welcoming contribution for its various bugs across products.. I signed up and got assigned a first bug and solved it in the very same day (Though, the solution was provided by the mentor itself). And, it was nice to see your contribution live, which apparently is going to be viewed by millions.. It may be the tiniest of tiny changes, but I felt like I was started doing my part of what i always wanted to..
Before closing, I just need iterate about wonderful people of Mozilla, how they were helping even for my dumbest questions.. Because of those many more people only, I think the web is still isn’t one’s family business.