Kharagpur Winter of Code
Website : https://kwoc.kossiitkgp.in
The world of open-source had enchanted me right after I had installed Linux in middle school. I was amazed to see all my daily needs of a computer being satisfied by free and open source software. But, I was just a mere user. I was pretty clueless as to how one could obtain, share and collaborate on the source code of an application.
I had a desire in me to explore the world of coding after coming to IIT. I wanted to see myself a developer, not just a user. I wished to get my hands dirty by altering open source codes. I contacted my mentor Kaustubh Hiware (@kaustubhhiware) for further information. He told me to commence by learning Git. I also sent a mail to Kharagpur Open Source Society (KOSS) regarding the same. Just as I started with Git from Codecademy and YouTube, my mentor informed me about Kharagpur Winter of Code. I finally had something to guide me in this new venture. Also, I was glad I knew what to do in order to make the winter a little constructive. I started off by attending a workshop on Git, organised by KOSS, which helped refresh my memory.
Kharagpur Winter of Code (KWoC) is one month long program to introduce newbies to the world of open source. Anyone could register as a student, and a mentor as well. The students had to work on source codes which were hosted on Github, a web-based version control and repository hosting service. We were to code on some of the listed issues or we could create issues on our own. We had to fork it, edit the program, and send a ‘Pull Request’, which is a request for merging the work with it’s original version. I had used Git as the local client for version control on my system.
After my NSS Camp, I made list of projects that I would be working on. I wanted to try some easy stuff first. I chose naarad-source. I was interested in Naarad not only because of the fact that the issue listed seemed easy but also because I was an active user of Naarad. It is a news aggregator for collecting all news related to KGP. Naarad subscribes to news feed from important pages related to IIT Kharagpur and serves them at naarad.metakgp.org. Naarad is really helpful for people like me who chose not to create a Facebook account. I placed a “last updated” time stamp at the top-right corner. It was heartening to see the response of the students at @metakgp. My pull request was accepted and indirectly, it gave me an incentive.
Next, I wanted to get a feel of android-development. I created a splash screen for an application by @mayank-kgp named VoiceCalculator (which was pretty much in the “Hello, world!” stage). My pull request was accepted after a few additional commits.
Next on the list was ruby-notificator by @athityakumar. It is a tool that would be able to read through one’s social media accounts and notify via emails. Two things encouraged me to take it up. First, it was in Ruby, so it gave me a scope to learn a new language. Second, it too was in its infancy. So, I could mess up with it at my will. I started preparing for Ruby from Codecademy and after a couple of days of practice, I began working on the project. I did a whole lot of work on it and created three pull requests with huge amount of editing, out of which one pull request is yet to be merged. My mentor supported me throughout and provided valuable suggestions on making the code more memory efficient. Ruby-notificator is yet to be deployed.
At the end of the month, I was glad to see myself at the second position of the leader-board, with 20 commits. My net contributions:
ruby-notificator: +1,137 -608 (in Ruby)
VoiceCalculator: +77 -1 (in Java and XML)
naarad-source: +19 -2 (in Python and HTML)
Overall: +1,233 -611
KWoC was a lot more than experience and learning. Now, that I had worked on the repositories and had interacted with their makers, I became a permanent member of the projects. The mentors of some of the projects, along with me, have decided to work on certain long term goals of the programs, and I am still working with them.
On the 16th of January, 2017 I was gifted an official Mozilla t-shirt by KOSS for being the top contributor from IIT Kharagpur. I was also allowed a direct entry into their team.
I would like to express my sincere gratitude to all the members of KOSS for taking this great initiative to introduce newcomers like me to the world of open-source. I would also like to thank my mentors for guiding me wherever required. I thank my parents for refreshing my enthusiasm throughout. Finally, I thank God, without whose desire these projects would not have been successful.
My Github handle: @americast