In software engineering, one of the most frequent communication channels is Pull Request (PR) review. Over the years, I have distilled a list of guiding principles for myself when reviewing PRs, apart from double-checking for correctness. The goal is, as one of my mentors put it, to apply human decency in the review process. I have expanded “H.U.M.A.N” into an acronym, which stands for Helpful, Understanding, Meticulous, Appreciative and Necessary:
- Helpful: strive to be helpful, not critical. Comments like “This is completely useless”, “This is a very stupid way of doing things”, etc. might be factually correct but not helpful.
- Understanding: strive to understand why someone implemented something the way they did, especially when it contradicts with your pre-conceived ways of doing things. You might learn something or change your mind.
- Meticulous: strive to pay attention to details, especially if you have more context around the code being changed.
- Appreciative: positive reinforcement trumps everything else when it comes to encouraging behavioural change. So when you think someone has a clever way of doing something in a PR, drop a compliment or when you learn something new from someone else’s PR, drop a TIL.
- Necessary: strive to only bring up what’s necessary in the context of a PR and reserve other comments for different communication channels.
Sharing in case someone else might find this useful.