So I've been pretty busy the past few weeks coordinating efforts for Drupal's participation in the Google Highly Open Participation Contest (GHOP). This is a contest which gives pre-university students (age 13-18) tasks to work on from various open source projects, both to get them "real world" experience in the open source community, and to win prizes such as t-shirts, cash, or even a trip to Google Campus.
So far the contest has been going on for about a week, and it's been quite a blast hanging in #drupal-ghop and the GHOP group, getting to know some of the students.
Some of the highlights include...
Highlights
- Modules page gets some usability love. This was a great task, with coordination from UI greats EclipseGc and alpritt, which brings over more of the administrative tasks right to the modules page itself. GHOP Superstar ezyang has now set his sights on some much-needed developer documentation.
- ddcc compiled an amazing and comprehensive report on various penetration testing options for Drupal. Tools covered include Nikto and WebScarab.
- Code Filter module ported to 6.x. This is a required module for drupal.org's port to Drupal 6, so it's great to have this finished up. Having conquered this task, corsix is now working on fixing a bug in Code Filter's parser.
- We tentatively put out a call for a brochure to talk a bit about what Drupal is, not really knowing what to expect. But the results from designer extraordinarie mbossino have been nothing short of fantastic.
- CorniI is simply whipping through the tasks, with two new simpletests done and Drupal 6 profiling work well in hand, it won't be long until he's started his third task! :)
- Super translators Etinin and tkunisky translated the Rolling Patches in Drupal video into Brazilian Portuguese and Russian, respectively. This is a huge boon, as this will directly help us to invite more developers from those countries to work on Drupal development. Great job!
- dstelljes wrote up a witty, creative, and screenshot-filled recipe guide to building a School Newspaper Website. Perfect for Drupal beginners or other students who want to know how to use Drupal in a practical way.
Lessons learned
- 13-18 year olds today are way smarter than you were at 13-18. ;) When we were trying to come up with the initial set of tasks, we did so by assuming that students probably would be kind of timid, and would need a bit of time to come up to speed on Drupal's internals, and probably have little to no experience with actual code, and would need a good deal of hand-holding. We wrote our initial tasks with those assumptions, so they tended to be fairly minor tasks that would take someone who knew what they were doing a day or or, and so we figured would take a student between 3-5 days.
Turns out, we have students that have been involved in the Drupal community since before many of our "core" contributors now, students that have developed their own open source projects before outside of Drupal, and those who are whipping through those 3-5 day coding tasks in an afternoon with excellent quality. These folks have been absolutely amazing.
- Drupal people hang out on drupal.org, not code.google.com. ;) Probably the best thing we did was make duplicates of all the tasks in our own issue queue, and direct students to work there instead. This was instant promotion for the contest, as there are now issues with "GHOP: #xx" popping up all over the queues, and because we can now place tasks directly in whatever queue is more appropriate, we get a far more targeted set of eyes on them, and can review the tasks much faster.
- Coming up with good task ideas is hard! I've tried to set a pretty high bar for tasks so that the ones that make it through to the official list should be challenging/interesting, of high impact to the project as a whole, expose students to skills that are applicable outside of Drupal, and most of all, are fun. ;) I want us to avoid "wildcard" tasks like "Go fix any old bug in the issue tracker" and don't want to see us mis-using the contest as "slave labour" to get students to work on remedial tasks just because no one else wants to do them. We also need to find tasks that haven't already been done by someone in the community.
And it's really hard! I've tried putting up a request for GHOP task suggestions, which a few people have responded to (thank you, folks!!!), but we're going to need many more if we're going to keep our task list nice and healthy. If you have ideas, please, please don't hesitate to add them there so we can get them spiffed up and put into the task list officially.
We also can use help with just keeping up on the Google issue status changes and making them appropriately to the Google tracker and the d.o tracker, and more importantly simply reviewing student-submissions as they come in. So if you have some free time during the day, please feel free to jump in and help!