Help mentor new contributors on drupalofficehours.org
Two months ago, tim.plunkett and I launched drupalofficehours.org, a tool for managing Drupal.org issues for sprints, initiatives, and other Drupal contribution efforts. We use the site to facilitate weekly core contribution mentoring as well as "Get Involved with Core" contribution sprints at Drupal events. Other subdomains support work on:
- the Drupal Ladder site,
- the Views in Drupal Core initiative,
- the File Management initiative,
- and Core Wind Sprints.
The site is not a part of Drupal.org; it's just a tool Tim and I cobbled together in our spare time. (Zivtech is contributing the site's hosting.)
Two weeks ago, we used the site to facilitate a sprint at DrupalCon Munich. Well over 150 people attended the sprint, including 126 who were participating in core mentoring for the first time. (Others attended the three-hour contribution workshop led by the drupalize.me team.) Our awesome trainers and sprint mentors included: add1sun, Albert Volkman, aspilicious, BrockBoland, damiankloip, eojthebrave, jthorson, jvns, kay_v, KHofmeyer, letharion, techgirlgeek, tim.plunkett, webchick, Xano, and YesCT! Thank you all (and I hope I didn't miss anyone; this was by far the biggest sprint we've ever done)!
The net result of such a successful sprint is that dozens of tasks completed by sprint participants are in need of review! What follows is a brief tour of the site and how you can help.
How it works
Facilitators for a given domain of the site add tasks to their subdomain. A task is a discrete bit of work that is often (but not always) associated with an issue on Drupal.org. For example, a core mentoring task might be to reroll the lastest patch in a particular issue. (There can be multiple tasks for a given issue, e.g., that same issue might also need an issue summary, manual testing, etc.).
Metadata for the issue (like its title, status, etc.) is automatically imported from Drupal.org's issue JSON using the Feeds JSONPath Parser module. The issue importer is available as a feature in a Drupal.org sandbox project.
For core mentoring, we organize tasks with a taxonomy of task types. (The task types are also listed on a Drupal.org handbook page and available in a sandbox.) These are all the various ways to contribute to a Drupal core issue that I've identified during a year of core mentoring.
We group these task types into three levels:
- Level A tasks do not require any special tools or technical skills beyond familiarity with Drupal.
- Level B tasks require some of the "tools of the trade" (a local development environment, git, basic familiarity with PHP, etc.).
- Level C tasks require programming skills.
A sidebar of information about the task type will be displayed on the task's node page. The sidebar includes a link to instructions on Drupal.org, the task level, any specific notes, and a link to other tasks of the same type.
Task pages may also include specific notes and comments in addition to what's on Drupal.org:
Note that information about the issue itself should always be on Drupal.org, but some parts of mentoring (e.g., suggestions on how to write a better issue comment) would just add noise to the Drupal.org issue.
Once submitted, the task is listed on the front page for the given subdomain and available for participants to work on.
Site users can assign tasks to themselves by clicking the + Yes link, or mentors can assign tasks to one or more users. This adds a new task attempt to the task (a field collection item). There is also a "mentor" field for the task attempt to indicate who is helping the participant with the task.
Once the participant has completed their work on the task, a facilitator marks the task for mentor review. Tasks that are ready for mentor review are listed under the Review tab.
This is where you come in. Even if you can't help during mentoring sprints or office hours, you can help new contributors (and their mentors!) by reviewing the work that they do. One of the goals of core mentoring is to provide more detailed, personal feedback than is normally available through the Drupal.org issue queue. Check out the core mentoring reviewer instructions and contact me if you'd like to help!