I love reviews. When it comes to new gadgets and whether they’re worth my money, it’s a blessing to have so much free advice to guide your choice. Last year I bought a new digital piano online, purely based on internet reviews since retail was locked down and I couldn’t try it out anywhere. Most reviews were favorable to raving, so I found safety in numbers there. Sure, retailers reviewing their own wares are naturally biased, but then again nobody would go to the trouble of a scathing review simply because they don’t like music in general or have it in for Casio as a company. Pianos are not controversial, unlike coding styles. And movies. Cinematic opinions are as subjective and controversial as it gets. The site Rotten Tomatoes simplifies all reviews into a thumbs up/down verdict and gives you a percentage. It works great for anything in the upper 20th percentile as well as the lower. I rarely regret watching a 90% movie and I ignore anything under thirty percent. Movie reviews are pure gut feeling. There’s no checklist by which to arrive at an objective verdict. Often reviewers are just film lovers with a gift for writing. They are seldom other directors, screenwriters, or actors. 

So why do we treat code reviews like movie reviews? A crude thumbs up/down rating exercise by someone who was not involved or even interested in the creative process. True, the analogy doesn’t hold when it comes to expertise since code reviewers are your programming peers, but that only means they should know better. The movie reviewer who shows off her literary style is like the code reviewer who likes to nitpick on small imperfections to make himself look clever. This is counter-productive, not to say toxic for team morale. You’d better not do reviews at all than do them in this way. Good teams usually do their best to be fair and constructive in their criticism towards each other if only because they need to get along and everybody knows they will be on the receiving end tomorrow. This sounds plausible, but it still misses what I believe is the true purpose of code review. That is firstly to share your work with the team, not to subject it to a quality test.

Source: DZone