Trying my hand at Google Code-In

Why everyone should contribute to open-source

Posted by Isaac Rowe on January 4, 2015

I’ve been into open-source for some time, ever since I brought my school’s old laptops back to life with my friend’s Puppy Linux disc. I was amazed at how a project could reach quality at or above that of it’s proprietary counterparts, and still remain free (both as in beer and as in speech). In this lies a revolution of open-source: if a project is free (of charge), then users are attracted, and if it is free (to contribute), then users who find it useful are motivated to contribute, which makes the project better and attracts more potential contributors.

I always wanted to get involved in the open-source community, but I am not technically advanced (yet!). But then I saw how Mozilla, the makers of Firefox, had ways for novices to contribute, like documentation and support. I got my feet wet by editing some articles on HTML standards. For people who don’t know what that means, I would recommend Mozilla’s Army of Awesome, where you can help Firefox users out on Twitter.

This brings me to Google Code-In. It’s no secret that I would like to become a programmer and work for a company like Google, but so far my CS and programming education has been largely self-guided and slow (Shoutout to Codecademy and my new best friend Sal Khan, seriously, their stuff is great), and I usually can’t contribute to things because they are mostly over my head. For those who don’t know, Google Code-In is a contest sponsored by Google where high school students can complete tasks for various open-source organizations for prizes. One task completed gets a certificate, three gets a T-shirt, and a completing a large number of creative tasks qualifies finalists for other prizes. Each student can only do 2 beginner tasks. So when my friend (the same one with the Linux images) sent me the link to the blog post announcing this year’s Google Code-In, I assumed I would not be able to help in any significant capacity.”Maybe I’ll try next year when I know more programming,” I thought to myself. But then I saw this on the FAQ and I was in:

#Open Source Fundamentals #You can contribute without being a coder! You do not have to be a coder to contribute to open source. There are many different skill sets needed to help an open source community thrive.

The guide went on to list ways to contribute: Documentation, Research, Outreach, Training, and User Interface. I don’t have to wait until I’m a coding master to help open source organizations, I can help now! What’s more, is that by helping in small, non-technical ways, I can still glean valuable information not only about programming, but about how to work with a community, help others, and challenge myself.

The first task I did with Google Code-In probably didn’t help Copyleft Games, the mentor organization much. It was marked “beginner”, and all I had to do was set up Copyleft’s 3D game engine on my computer, run a demo rendering, and take a screenshot. The task was really about introducing students to tools used for Linux development, but I still hit a few roadblocks. For example, did you know that you need Python 3, not 2 to install PySoy with WAF, and you need to compile Python with the --enable-shared flag in order for an interpreter to be embedded into another application? Neither did I. So here’s a thank you to Arc Riley, a mentor, as well as @ubuntor and @poxip, whose real names I may never know. Thank you for listening to my dumb questions on IRC (I also learned not to ask to ask, but to ask).

So here’s where I am now. While looking through more available task, I found a task from Sugar, the group that make software for those laptops they give to kids in Africa, titled “Introduce Yourself”. Here is what it said:

Write a blog post about why you are participating in Google Code-In, what you hope to learn from the GCI and how mariahvillarreal [a mentor] can help you. Include a picture. Share blog post through social media.

“No,” you think to yourself,”I’ve been fooled into reading this high-school kid just wrote to get a t-shirt from Google, he doesn’t care about this stuff at all!” Well, that is partly true. This post is a response to that task, and it does help me win a t-shirt. But this blog post serves as more than that. In order to express my gratitude for this task not being marked “beginner”, I have turned this in to something more, a call to action for everyone, even those not technically inclined, to contribute to open source, because that’s what Google Code-In is about. Open source is really important; nearly every piece of technology you use relies on some open source (you can find the GNU Open Source License on an Apple iPhone), and the best way to show gratitude is to give back to the community.

So in response to the prompt, I am participating in the Google Code-In because I believe in open source. I hope to learn more about programming but also about the communities behind each of these organizations. mariahvillarreal can help me by getting this word out. Thank you for giving me this opportunity, Mariah. Now show this to everyone at Sugar Labs. Judges at Google, share this to your friends. Tweet about it. Everyone can get involved in open source. I hope this little post helps inspire a few.