A Drupal Core Maintainer shares peer code review best practices

Presenter(s)

  • Jess (xjm)

Improve your teams' peer code review process, your code maintainability, and your Drupal contributions. Learn from a Drupal core release manager—with over ten years of Drupal core experience—how to give an efficient and effective peer code review.

Peer code reviews are essential, improving maintainability, increasing productivity, and reducing costs. They can reduce the rate of defects (bugs) introduced into a codebase by as much as 80-90 percent. Most importantly, they build a shared understanding of the application within a team, and are an opportunity for developers to mentor each other.

Drupal core's peer code review process has two phases: 

  1. An initial peer code review cycle with one or more other contributors.
  2. A final stage of code review by a Drupal core committer (one of the 15 people like xjm who can accept changes into Drupal core's production codebase). 

As a result, the core committers are exposed to all the peer review (good and not-so-good) that is done by contributors throughout Drupal core issue queue. This makes committers ideal mentors as well as subject matter experts on both best practices and pitfalls to avoid.

In this session, you will also discover research and psychological principles for when code review is effective and when it is not.  You will learn how to structure your change sets for reviewers, which can improve the whole team's code and maintainability. Finally, you will learn about automation and tooling that can help reviewers focus on what's most important.
 

Attachment Size
Code review best practices (.pdf) 36.31 MB

Who Should Attend

  • Back-end Developers
  • Front-end Developers
  • Project Managers

Prerequisites

Those who have participated in a peer code review process before, either as part of Drupal contribution or in their own organizations, will get the most out of this session. It is primarily for developers, but may also be useful to project managers, scrum masters, QA specialists, etc. who organize the peer review process for their own projects.