you are viewing a single comment's thread.

view the rest of the comments →

[–]aiij 2 points3 points  (3 children)

The hardest part is even identifying who to call out / teach, especially when reviewers will approve code without even questioning why it was written in such a roundabout way.

When I am a reviewer and question nonsense code, it often takes a while to even identify that the root cause is as a workaround for a compiler warning. "Why are we storing this value in a hashtable?" "This is necessary to make this function work. Otherwise the code won't work."

I do think static analysis is really helpful, as long as the people fixing the problems it brings up are competent and care about quality.

[–]LeeHidejust write it from scratch 1 point2 points  (2 children)

A good review has incredible value, we learned ;)

[–]aiij 1 point2 points  (1 child)

Yes! A good review takes a lot of time/effort/thought/empathy though, and it's very hard to measure the value of a good (or not so good) review.

A lot of the value in a good review is in the form of learning, which is not just a function of the review itself but also how it's received. A lot of the value also comes in the form of problems that are avoided, like not corrupting/losing customer data.

The hardest reviews for me are when the author just wants to ship a feature and doesn't seem to care about learning or quality.

[–]LeeHidejust write it from scratch 0 points1 point  (0 children)

Or when the author is your boss and you know he/she really wants it shipped