Adam first showed up on my radar as he was taking a dive into the radioactive, vampire shark-infested waters of the Project and Project issue tracking module's issue queues, contributing bug reports and fixes. These modules are notoriously fraught with legacy issues (since they're almost as old as Drupal itself, but have about 1/100,000th of the eyes/hands on them), and they also happen to be the cornerstone of drupal.org, providing both the downloads of Drupal core and contributed modules and themes, as well as the developer tools that we use every day to build them.
Anyone who helps our esteemed Derek Wright tame these wild animals gets a medal of honour, in my book. And, incidentally, if you're looking for a fast-track to becoming a Drupal hero, head over to the Issue tracking and software releases group to find out how you can help.
But it doesn't stop there!
Along came the Google Highly Open Participation Contest, which opened the doors for dozens of secondary-school students to get their start in open source by taking on bite-sized tasks for the Drupal project. While the contest has been a rousing success, it was obvious early on that the administration of GHOP was completely overwhelming the small group of volunteers we had initially assembled.
I put out a desperate plea for help; Adam answered, with gusto! Not only did he help come up with some of the initial tasks for the program, he has he been in #drupal-ghop daily to talk with students and help answer their questions, and he's also been reviewing students' work and rallying others to do the same. He's even taken a lead on the tedious-but-all-important administrative "plumbing" that keeps the contest running. Want to help usher in the new generation of Drupal contributors? Find out how you can help with GHOP.
Is Adam some kind of saint, who we should all gaze upon with awe and amazement? A masochist who just enjoys the very worst punishment we as a project can devise? You decide! ;)
Here's what he had to say for himself in an interview.
So, tell us a little about yourself.
I live in Chicago and am currently enrolled in a combined M.D./Ph. D. graduate program in which after 9 *short* years I should have an additional 5 letters, and four periods, after my name. Right now I'm in the research phase of the program and I am studying how different neurons in the retina (the piece of neural tissue at the back of the eye that lets us see) communicate with one another to form circuits that selectively carry different types of information about the visual world to the brain. I spend most of my time recording electrical signals from individual cells in the retina and analyzing the resulting data, but I try to make time for Drupal since it's fun and relaxing.
How'd you get your start with Drupal?
I first started using Drupal for a student-run website associated with my university after first trying Joomla, and I felt like Drupal was better suited to the task. After becoming familiar with Drupal, I started developing a Drupal based web site that allows users of a scientific data analysis and programming platform called Igor Pro to share and collaborate with one another.
What motivated you to start digging into this kind of work?
For the site I was building, we wanted to have similar project functionality to what is present on drupal.org, but we wanted to use Subversion instead of CVS for version control. At the time, there was already a Subversion module but it had not been ported to D5 and given the huge changes in project land around that time I thought it would be best to modify project* (mostly the cvslog module) as minimally as possible to get Subversion to work with project*. Along the way I got to be very familiar with project* and started to get more interested in working to make it even better.
As for GHOP, Angie dragged me into the secret IRC channel of people creating GHOP tasks before the program had officially been announced. Given my love of secrets and inside information, I couldn't help but to help out with the creation and administration of tasks.
How do you think we could help engage more people to take on this work as well?
As pointed out above, project* is quite complicated and is difficult to figure out at first. Though it's not used on as many sites as other modules, the entire development process of Drupal depends on features provided by project*. So improvements in project* directly lead to helping everyone who develops for Drupal to do so more effectively and efficiently.
In addition to being an important module, project* has great maintainers (Derek and Chad) that have high standards but are great to learn from. I don't have any formal training in programming and Drupal is the first open source project in which I have participated, and feel like I have learned a lot about Drupal, programming, and project management by participating in the project* issue queues.
We're currently planning to "outsource" a lot of the functionality in project* to other modules, thus simplifying the code base of project* itself. This has already happened with project issue follow ups, which are now standard Drupal comments. With the upcoming conversion of project* to use the Views module, we should be able to get rid of a lot of the really nasty, complicated code in project*, and I think the plan is to eventually integrate project issues with the newly rewritten Subscriptions module so that we can eliminate the project issue subscriptions and mail handling code that is currently in the project issue tracking module. There has also been discussion of how we can present project nodes in a more meaningful way, including providing metrics that help potential users to better evaluate each project. We've had some great feedback and suggestions for how to improve the information provided, and getting help with the actual coding will be key to moving project* forward to be even better than it already is.
Anything else you'd like to add?
I want to put in another plug for the GHOP program. We've had some amazing work done by students in the program already, and there are still several weeks left in the program. I'm surprised by how quickly students have gone from not knowing Drupal at all to completing a difficult task well. I think we're limited right now by getting reviews of work the students have completed. We have several students who submit work much faster than we can review it. If we had more people reviewing work, I think we could really get the students to crank out more work here at the end of the program. I encourage everyone who reads this to get involved (if you aren't already) by reviewing or suggesting a task. Also, the more successful the program as a whole is, the more likely it is that Google will decide to try it again next year (or some time in the future), and we definitely want that to happen.