I left one contract position due to the toxic code review culture. Code review participation was part of the annual review process and this company tended to hire legions of fresh grad developers from second and third tier schools. The one upsmanship, and competition for most arcane one liners was truly something to behold. These kids were really competitive and thought they were proving themselves to the bosses/leads.
I remember one time in particular, I put in a pr, then made their stupid changes, updated my pr, more code review comments, I made more changes etc.. for a month and a half until the lead finally said, yeah go ahead and merge that. The ironic thing was, the project had loads of bugs that weren’t caught until UAT.
I find the present article makes a lot of good points, it does ramble a bit though. I personally think the thing that’s the most important, and most difficult to communicat about is; what is the appropriate level of abstraction? Ie YAGNI
Pointing out the same type of error multiple times can be helpful. At least, I am not offended by a reviewer doing that. I consider it as a checklist that I haven’t forgotten something. You can learn to give AND receive feedback in a constructive way.
Of course, humans are different and my opinion isn’t better than the author’s. That said I don’t think that it encourages an open & calm discussion to label such practices as “toxic”.
(I am not a native speaker but toxic seems like a really strong negative label.)
I’m not so sure that tone has a lasting effect on the toxicity of code review – though I’ve never dealt with something as extreme as a vomit emoji in a code review so maybe my experience is skewed.
Every time I join a new team, or start on a new codebase, the reviews on that team seem to coalesce around a common tone. Sometimes that tone is brusque (“call this variable foo”), sometimes less so (“consider calling this variable foo, as it’s consistent with bar”.) I’ve definitely noticed the difference when joining a team that was more brusque than not, but it’s something that you can adjust to easily – so long as the tone doesn’t translate to real life.
What really sticks out in the long term are the other things the author mentions – “while you’re at it” type requests, style reviews that should really be caught by tooling, flat out ignoring reviews, etc.
I’ve felt some of the toxic behaviors written here, some teams I’ve left and others I’ve tried to change the behaviors. Especially because we’re a mixture of native and non-native English speakers (writers?), so sometimes even though it sounds cordial in Spanish it may not in English.
I think in the end, you just have to talk things, if you don’t like the tone of a comment then say it for improvement.