Charlie Gordon was a student participant in the Google Highly Open Participation Contest, an earlier version of Google Code-in that pairs high school students with mentors in open source projects. Here he discusses his recent experience as a Mentor for the 2010-2011 Google Code-in.
There were so many great stories from Google Code-in that it's hard to pick out just a few. I'm always so excited to get young people involved in open source - I remember how excited I was when I participated in the Google Highly Open Participation Contest myself back in 2007-2008. The program opened many exciting doors for me, including going to Drupal conferences, becoming involved in Drupal core development, and even eventually going to college at MIT, where I am now. It brings me great joy to be able to help open the same doors for the next generation of bright young open source enthusiasts.
Now for the stories! I'm always impressed when students, who are used to doing only what they're specifically told to do for school assignments, go above and beyond. Especially in the format of a contest where the incentives lead students to do the bare minimum, I find those students who put in a real effort to go above and beyond are those who really care about the open source project, and are those who are most likely to stick with it after the contest ends. Here are some of these students:
A student from Thailand, "chalet16", worked on five complex coding tasks for Drupal's style guide module. Over many iterations with the tasks' mentor, the quality of chalet16's code improved, and he also became more comfortable with using drupal.org's issue queue, a key part of our development process. Not only were the tasks well done, but when chalet16 encountered software bugs in parts of the code that he wasn't working directly on, chalet16 had no problem taking the initiative and opening new issues for the bugs, even submitting additional patches to those issues that fixed the problem. That's exactly the kind of participation that we want to attract to our project, and to open source software development in general.
Despite not having very much experience in PHP, “aantn,” a student from Israel, found ways to contribute to the Drupal project, such as by writing a Python script to survey test coverage statistics for Drupal core and the top 50 or so modules. We now have a much better idea of where and to what extent our automated testing system is being used, and making such statistics public will hopefully encourage module maintainers to write more test coverage for their code.
We specified a task that called for a Drupal core patch to allow a "full preview" button on the content submission form. Halfway through the task, Romanian student "bluman," encountered big roadblocks to that patch. After discussing the issue, we realized that the task would not work as a patch for Drupal core, but would have to be rewritten from the ground up as a contributed module. However, rather than give up, bluman worked hard to redo the task as a module, and came up with fantastic results.
Finally, we set a task to translate a small to medium sized module into another language. Another student from Romania, “ungureanuvladvictor," went way above and beyond the task description, translating one of the largest and most widely used contributed Drupal modules into Romanian. The translation file had more than 1,000 translations in it, a very impressive feat for such a short period of time. I had to scramble to find a Romanian speaker willing to review such a large translation!
Really, there are so many impressive students out there.
By Charlie Gordon, Drupal.org mentor
We always hope that the students who participate in programs like Google Code-in and Google Summer of Code develop a bond with the open source community they work with during the program and continue to contribute to the community long after the contest ends. Charlie Gordon is a prime example; he not only continues to be actively involved in the Drupal community but he is also sharing his experience and wisdom with younger developers and helping them become contributors to open source.