Baby Steps | Beginning My GSoC Research

Most babies take their first stumble a year from the time they’re born. Considering I’ve been programming in some form or the other since the Fourth Grade, I’m a ten year old just crawling out of his diapers;  it’s never too late to take that first step!

After the years of self-learning coupled with academic injections of C and Java, I’ve finally set my sights on tackling the Google Summer of Code 2010.  A familiar piece of advice given to anyone embarking on the Olympian task of GSoC research is to Hang out on the IRC.

Deciding to take this a little seriously, I got IRC working on Pidgin and proceeded to join a few chat-rooms. A few days after the initial excitement had worn off had me wondering what exactly I was supposed to gain by watching sparsely populated public chat rooms buzz with random talk every now and then; when I was presented with a pleasant surprise.

3AM, IST. I’d apparently peeved someone off by my constant joining and leaving the chat room.

“Hey, phoenix”

Apprehensive, unsure of what to do, little did I know that this one hour would lead to enlightenment I’d never experienced to date! Humphrey, a teacher at Seneca, had caught me lurking on a chat-room I now know was intended for his students. This didn’t stop him from giving me my most practical tutorial on diving into open source software development.

To summarise his roadmap:

  • Create an account on Bugzilla.
  • Find a bug you like.
  • Follow it!

I took the plunge buy stalking a few Javascript bugs in Fennec, Mozilla’s mobile browser, after which I realised the limitations of my coding knowledge. But I finally knew what to do!

Going with the idea that you need to start with:

  • Identifying a project you can contribute to, and want to,
  • Then looking for unsolved bugs where you can pitch in.

A few hours of research followed and I came across a number of resources I found immensely helpful to the total noob open source developer. The best resource I came across was Google Code. Browse through all the working projects, identify the level of skill and programming language requirements and conceive a short list of potential contribution targets.

Another great resource was the GSoC home page, where the list of mentors for 2008 mentions the project ideas for each organization, and a whole lot of other stuff. But all of this had me wondering, where exactly do I start</strong>, after getting a nice IDE and C/C++ working on my computer? Enter GHOP!

GHOP, short for Google Highly Open Participation, is a junior version of GSoC. Though open to pre-university students only, it is an amazing resource for budding developers! Take a look at the “Results” links on the right side of the page; these point to the various tasks undertaken by past GHOP”ers given to them by the respective companies. A look at these tasks presented a delightful change in scenario; the daunting “Bug#3453 DOM modal window component not working” style bugs you see around normally were replaced by simpler stuff that was, most importantly, written in English.

Each bug is documented by what exactly the problem is, what are the resources the student can refer to, what are the skills he needs to have and a whole lot of other easy to decipher advice. Though this won’t have you jumping head first into anything live yet, you could put yourself into the GHOPer’s shoes and follow the company’s advice to them step by step; basically a mock bug-squashing session. This should have you getting a much clearer picture of the whole big mush in no time!

Here is where I stand on my road to GSoC 2010. I plan to document my research and activity on this front every week or so; feel free to comment and critique, and possibly advise, though I’d prefer any death threats to be directed to my mailbox.