Denver: Core office day? (Drupal core office hours update)
What are Drupal core office hours?
The Drupal core office hours have a simple goal: Help people help with core. If you've missed out so far, here's the skinny:
- Office hours are held twice a week in the #drupal IRC channel:
- People of all experience levels are welcome to participate.
- Experienced core contributors help each participant find and work on tasks.
- Typical office hours tasks include:
- Co-authoring change notifications and issue summaries.
- Triaging issues (including finding steps to reproduce, clarifying the issue's status, locating duplicates, closing those that are no longer relevant, etc.).
- Testing patches that need manual testing.
- Adding automated tests for existing patches.
- Rerolling patches.
- Exchanging patch reviews.
Why do we do this?
- Participating in the Drupal core issue queue for the first time can be confusing or intimidating.
- Providing a real-time way to contribute helps connect new contributors with the Drupal community as well as with the issues.
- Talking about core development in #drupal helps open the community's "silos".
- There are over 9000 open issues filed against Drupal core.
- Many of these open issues simply need triaging.
- Many others will move forward with summaries, testing, review, etc.
- Core has a chronic shortage of patch reviewers.
How has it been going?
I'm usually asleep during the Tuesday timeslot, but I've been keeping track of office hours participation on Wednesdays. A few interesting statistics:
- 47 different people have participated in the Wednesday timeslot alone.
- These people have worked on 71 separate core issues.
- Experience levels have ranged from novices participating in a core issue for the first time to active core developers and even webchick. ;)
- There have been participants on 16 of 20 Wednesdays (80%).
- The highest number of participants on a single day so far was seven on Sept. 28. (That was a busy day for me.)
- Many new contributors go on to work on the core queue on their own time after they participate office hours.
What can we improve?
- A stated goal is for office hours to be self-sustaining. This hasn't really happened yet; the one week I was unavailable on a Wednesday, there weren't any office hours.
- Attendance has tapered off over the past two months; there have been no attendees for four of the past seven weeks. I see two possible causes:
- The holidays.
- The time change. (The UTC timeslots are an hour earlier for the Northern hemisphere now that daylight savings time has ended).
- The Tuesday slot has been somewhat quiet and sporadic, and might benefit from more activity. I've spoken to a few people who have want to participate, but can't make the Wednesday time. (We could particularly use another facilitator who can commit to being available regularly during the Tuesday timeslot.)
- Having a prepared list of possible tasks helps things go more smoothly and makes it easier to "recruit" out of #drupal.
- It would be beneficial to have a couple participants who work on core regulary each week, if only to commit to an hour or two of issue queue work and talk about what they're doing in the channel.
- And, of course, more participants. I've noticed that at a certain point the office hour activity reaches a "critical mass" where other people in the channel ask what's going on and end up participating.
How can I help?
- Come to office hours!
- Tell your friends and coworkers about office hours. Mention them on your blog, twitter, or IRC when you see someone asking how to contribute.
- Show my Core and you slideshow at your local Drupal user group.
Denver core office day!
I'd like to propose a sprint for Drupalcon Denver that takes the core office hours idea and expands it into a whole day. I'd imagine:
- A bit of a "core queue orientation" for those just getting started in core development.
- Talking about how to do a good patch review, write a good summary or change notice, etc.
- A list of targeted issues in various categories.
- Prioritizing backportable issues.
- A place where people could get help with setting up a LAMP stack, git, etc. (Actually, it would be great to have this station on the code sprint day regardless.)
- Novices and experienced contributors who don't necessarily want to stay all day dropping in for an hour or two to chip in.
- Maybe a fun counter of the number of issues triaged, summarized, reviewed, etc., and before-and-after snapshots of the core queue. :)
I'd love to hear your ideas or suggestions; just leave a comment. I also will need some sprint co-leads if I propose this. (It's a required field on the sprint proposal form.) cweagans has already said he'd be interested. Anyone else? A good co-lead would have some experience doing patch reviews, know the core queue's "rules," and be willing to help novices get oriented and find tasks.