We have a guest post from former Google Code-in student, David Li, discussing his inspiring Google Code-in experience. Enjoy.
Panic. Confusion. Bewilderment.
Scrolling down the infinite list of tasks, my face shifted from a merely quizzical expression to one of befuddlement as I saw task after task involving C, Perl, or some other knowledge that I did not understand.
And then I saw SymPy. Hey, that's written in Python, right?
For me, Google Code-in was an easy way to get involved in real programming - in writing code that other people would use - as a high school student. The competitive nature of the program naturally held my interest, and the mentors were perfect for novices like me, as I began knowing barely git commit and git status. And even though I still couldn't handle many of the tasks - "Implement ODE solvers", with my two months of calculus was rather intimidating to see listed - I found a niche that I could contribute to.
My first tasks were not that exciting: formatting docstrings and cleaning up warnings and then I moved on to Sympy's website. I felt much more confident with HTML than with Python and found that I enjoyed these tasks the most. Other students and I fixed bugs, implemented a mobile website, and most noticeably, redesigned the theme of the site. I was proud of our contributions.
After the competition concluded I felt that we had unfinished work left. SymPy Live had bugs and the mobile interface we wrote was rather unpolished. Naturally, I couldn't let those bugs stand, especially after having put in so much effort implementing some of those features in the first place...and so I submitted another pull request. And then another. SymPy's developers didn't have the time to focus on their websites, so I began to maintain them, fixing bugs and adding features.
While digging through SymPy's repositories, I found an abandoned website - SymPy Gamma. The site had had no updates in years. But its premise interested me - an open source Wolfram|Alpha competitor - and I began to dream up and implement new features: basic plotting, a new design, steps for differentiation. By now open source had become my hobby, more so than just programming for its own sake had been; I could contribute to and work with a community, and that was rewarding beyond the task of simply writing code.
I am glad Google offered this opportunity to get involved in open source. I learned more about software development than any school could have taught, and I was introduced to a welcoming community, one that appreciated any contribution made. I hope that the users of the myriad projects of Google Code-in enjoyed the improvements that we, the students, made, and I hope other students take the opportunity to involve themselves with open source communities.
By David Li, former Google Code-in 2011 student and current Sympy contributor
Google Code-in 2013 just started last week and will continue until January 6, 2014. Interested pre-university students (13-17 years old) can register at
google-melange.com and start earning prizes. Good luck students!