Johnny.sh

Code Review

My guidelines & ideas about code review.

  • Criticise the code, not the author (“There’s a bug here” vs. “You inserted a bug here”).
  • Reach common agreement that people shouldn’t cling to code written (“sunk cost fallacy”).
  • Don’t baby any particular piece of code. Code is cattle, not pets.
  • Don’t use questions that invite discussion if you’re not inviting a discussion, instead expose the reason you believe something should be different (“Should this be like X?” vs. “I think this should be like X for reasons A, B, C.”). This avoids wasting time and reviews that turn into long discussions.
  • Don’t give orders (“Do this”, “Do that”) to your colleagues, since they are not your employees, and it doesn’t help promote learning & growth by not exposing the reasoning behind the demand.
  • Avoid bike-shedding about style/formatting/etc. If this is important where you work, automate with tools.
  • Agree previously on what constitutes a non-passable review, if there’s such a process.
Last modified: June 27, 2022
/about
/uses
/notes
/talks
/projects
/podcasts
/reading-list
/spotify
© 2024