By the medium of this post, I aim to share my first experience with open source.
I am Arnav Raman, a 16-year-old computer enthusiast with a keen interest in everything that smells technology. My childhood was spent with computers, my father being a software developer himself back in 2001. As a child, I’d see various people coming to my house and talking things over with my father, crowding around the computer screen and do things. I recall clearly how, when I was no more than four, one of my father’s friends were working on a project and my father playfully asked me “Son, can you do what he’s doing?” Somehow, I was greatly intrigued by this question posed by my father, and that was the day my interest in computers was ignited.
It was through him that I came to know about Google Code-In (GCI). I received a message from him on January 8th this year at 9:58 pm IST.
It was too late. There were only seven days left for the contest to conclude. Also, my examinations had begun and I was having tests on 9th, 10th, 11th, 12th, 15th, and 16th. However, I decided to register. That night, I got myself registered and completed one task too. I was done by 1:25 am and slept.
The next morning, there was a Gmail notification: my task had been accepted! This fuelled me and as soon as I came back from the test, I claimed another one and began working on it. I was enjoying thoroughly!
After these two, the third task I decided to do was openWISP: Build the openWISP documentation. Before claiming the task, I decided to try doing it first. I tried in my Windows-based machine but was confused beyond imagination. Then, I tried using a Linux VM, but still, I couldn’t figure things out. The instructions were very vague. I tried searching on the internet for help with sphinx and pip, but it was tedious and I had to prepare for the exams as well. This was an aspect I didn’t like.
But this, too, was an amazing learning experience for me. I came to know the basics of GitHub and Git command-line interface. I learned about Linux development a bit, and also learned about Sphinx and python in the process. Truly, failure teaches us more than success.
However, I never lost hope and driven by determination, I tried hands on another one of openWISP’s tasks, Create your own GPG key, authenticate to GitHub and sign commits. I chose this task as it was based on the skills of Git I’d learned during my previous attempt. I completed my studies and got to work on it at 1:40 am. I tried Windows but committed a mistake from an ill-written tutorial, applying a command that rendered git useless. Again, I turned to Linux. I installed git tools and got to work. I cloned the repo, added a hello world program and staged it. Next, I set up a new GPG key (my third key in a day), added it to my account, told git about it and ran the git commit –S –m ‘added’ command for signing the commits. It was executed successfully. I was elated. Then I used git push, entered my account credentials and finally, the task was completed.
That day, I realized a few things:
Hard work, determination, and persistence can help us achieve anything, and
Linux is way better than Windows for development 😉
I learned about:
Basics of GitHub like stage and branch
Creating branches and merging them with master branch once done
Signing commits using a GPG key
Creating pull requests
Learning basics of Linux command line
Learning from failures!!