GSoC'18 Journey- 5 mins
No, it’s not easy but no, it’s sure not impossible.
Things you should know
Well, Flashback to the year 2017, My friend and I were walking across a pavement of my college and we see some of our fellow seniors passing by. My friend introduces me to those personalities, I add personalities cause my friend made it sound quite significant, he said, “Well, meet them, they are GSoCers”. I already had some idea about GSoC so in my head I was like, ‘Damn! I need to be there too’. And there, my journey begins! Journey into one of the biggest coding events for a college student.
The Period from April’17 to January’18 goes under the head of a buffer period as during this period, though working in a way for GSoC, I was unaware of it. Confused? Well, I was improving myself as a developer, little did I know, it helped me carve out a strong profile for GSoC.
I learned a lot! A lot believe me! Well, it was fun so couldn’t stop. I stepped into the realm of machine learning and was enthralled by the aesthetics of it. But my journey of turning into a Deep Learning expert deserves a complete post for itself (another post coming up soon).
Before getting in full throttle for GSoC I was already exploring a powerful, yet new language, Julia, having a really awesome community and with really ambitious promises (which it delivers). After learning a bit about Julia from David P. Sander’s talk from SciPy’14, I absolutely fell in love with it. (Well, David did a great job at convincing me to learn Julia even further and so I did). After watching the talk, I took some time to get acquainted with this beast of a language. I’ll be covering Julia and it’s awesomeness in another post(another post coming up soon).
Since GSoC was always somewhere in my mind and as soon as January hit the calendar, I was already checking out previous year’s organizations and the proposal, by then it was already clear to me that I’ll be applying to a project with Julia as its principal programming language. I was so hooked on Julia that despite of being a python-ista I was looking for Julia projects!
Now I knew what I had to do for the GSoC! Find a project that interests me, in Julia and hone my Julia programming. There goes January.
With the GSoC's timeline already synced with my calendar. I was ready for the organizations to be rolled out and their project, February 12, was the day when organizations were announced and I remember, the very next day sitting down creating a list of the organization in which I could apply given my repertoire.
The list had the decent amount of diverse field from web-development to Astronomy. I listed what are the best projects within my reach and made a separate list of the things that I’ve to learn about the organization and the project itself. This part was very important and crucial, listing out everything helped me focus on the areas that I really need to improve on.Check here for my list.
After scrolling through the whole organizations’ page and 5 hours later, I had a full list and plan devised and ready to be executed. Steps that followed were:
- Joined the community channel whether it was on gitter, slack or an IRC.
- Talked to the mentors and discussed with them about the plan that I would follow (remember the list).
- Took a good check of the heat in competition. (This was another important factor, as some students were with the organizations way before and chose to apply this year only.)
After talking and studying a lot I was convinced that I’ll be applying to JuliaAstro, Flux.jl and AIMA-Julia. My aim was set: read, edit and commit.
- Read: Read the codebase and understand the complete code. Check issues and try to understand how to resolve it.
- Edit: Change the code, improve or append the code.
- Commit: Send a PR.
I already read the codebase of quite a few projects and was struggling to write my first PR yet. OpenAstronomy (My organization) and some other had a solid requirement of having at least one successful PR for application acceptance. I patiently took my time started making pull requests to my projects, thanks to my mentors, Helge and Mose, I was at pace with the code. I somehow managed to hit successfully a total of 6 merged PRs. If it wasn’t for my mentors, I would’ve lost the competition before it even began. But writing the code and that too in an acceptable open source style is not sufficient. With the coding and PRs, I required a precise and well-formed proposal. Writing a proposal? puff, easy-peasy, right? NO! Writing a proposal was the most time-consuming process, took me whole March (I changed the font-size right before 10 mins of submission). You can find a link to my project here.
After a long wait from 27th March to 23rd April, finally, Google rolled out the names of the selected students! I checked my dashboard on GSoC's website, ever so tremblingly and Alas, my name was not there!
Got you! Well, I made it. I was selected in the OpenAstronomy, JuliaAstro project. April 23, 2018, will always be one of the dates that I'll cherish.
Currently, I'm in the community bonding phase and loving it so far! I got a chance to interact with some the coolest coders around the world! OPEN SOURCE ROCKS!