In this edition of Insight’s summer blog, Manish Goregaokar talks about how he got selected for Google Summer of Code despite not being from the CSE department and his work with Mozilla thereon.
The content on this website is strictly the property of Insight and the Students’ Gymkhana IIT Bombay. If you wish to reproduce any content herein, please contact us:
Chief Editors: Anshul Avasthi, Chirag Chadha
A typical day at this intern involves a short commute to my place of work, followed by a good breakfast at the workplace, and then some intense coding. Lunch is just as good as home-cooked food. [pullquote]That’s right, I get to work remotely for this intern.[/pullquote] I can come and go as I please, and work very flexible hours, as long as the work gets finished. Of course, this is all possible because my place of work is home. That’s right, I get to work remotely for this intern.
So what is Google Summer of Code?
GSoC is an initiative by Google to help increase student involvement in open source. One can apply with a project proposal under various organizations (like Mozilla, Mediawiki, Drupal, WordPress, Sympy, etc), and if chosen, one gets to work on the proposal during the summer. Students are selected by the organizations based on their proposal. Previous open source experience is a plus but it is not necessary, though if you already have interacted with the community or submitted patches, it’s a good boost for your proposal. Usually a proposal contains an overview of what you wish to implement, and a timeline of how you plan to do it. These sections help the mentoring organization learn how much you already know about the project, and putting effort into writing a robust timeline is very helpful for selection. For example, this is my proposal, based on Mozilla’s template; I spent a couple of weeks going through the code and submitting small fixes before writing it.
GSoC is a great opportunity, especially for 1st and second year students, and I would encourage everyone to try for it. [pullquote]GSoC is a great opportunity, especially for 1st and second year students, and I would encourage everyone to try for it.[/pullquote] It gives a good taste of how software is written in the real world (sans all the management and administrative hassles), and is a valuable experience for programmers in general. Aside from that, there’s a really good stipend and Google goodies along the way. Unlike most programming interns, non-CS students usually have an almost equal opportunity for getting selected (many of my acquaintances who have been selected are not CSE students, and neither am I). Starting preparation for it in the winter by getting acquainted with various communities and the codebases can go a long way in helping one write a good proposal and get selected.
Work at Mozilla
Working with the people at Mozilla is an awesome experience. Everyone else is really, really good at what they do, and dedicated, too. It’s not just employees and interns – there is a sizeable number of volunteers as well, and there’s not much of a status divide. [pullquote]Sometimes a volunteer will have more privileges/access than an employee, even![/pullquote] Sometimes a volunteer will have more privileges/access than an employee, even! The project I’m working on doesn’t have too many people so one sees less of this equality, but it’s still there and becomes more evident in larger projects like Firefox (where I occasionally contribute as a volunteer).
My own project is to implement XMLHttpRequest in Servo – a small project that aims to make a more modern browser engine that best utilizes the capabilities of modern hardware. It’s written in Rust, a new programming language intended to solve the memory safety and security issues in existing low level languages. Since Servo is still very much a work-in-progress, a lot of my work involves implementing many other features that my project depends on, so there’s a lot of variety in the work.
Working from home is rather fun. While there are (non compulsory) weekly meetings, there aren’t any fixed timings for when I have to be contactable, as long as work is getting done. I stay in touch with my mentor (and the rest of the team) through IRC (Internet Relay Chat), a mode of communication that has been used in the open source world for more than a decade now. [pullquote]I can choose to stay involved as a volunteer if I wish, and continue to make a difference in the project. [/pullquote]
Being open source, the doors don’t close for me after my project is finished. I might not have as much time, but I really hope that I’ll be able to keep a modicum of involvement with this amazing team in the future.
If you would like to share your internship stories on Insight’s Summer Blog, feel free to email us at firstname.lastname@example.org. To read (dis)similar internship stories written by IIT Bombay students over the years visit http://summerblog.insightiitb.org/.