Skip to content

Instantly share code, notes, and snippets.

@tpavlek
Created January 6, 2015 17:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tpavlek/6272835051d01ee1e1e6 to your computer and use it in GitHub Desktop.
Save tpavlek/6272835051d01ee1e1e6 to your computer and use it in GitHub Desktop.
Reply to @ircmaxell

Maybe the studies know a lot more than I do and perhaps I'm wrong, but from where I'm sitting people who espouse the value code reviews act like it exists in a black-and-white vacuum; code reviews are either mandatory for absolutely every commit, or your team doesn't do code review. People who champion unit testing also have a similar mindset.

We're professional developers. It would be absurd to suggest that we shouldn't perform code reviews, nor test our code. What I'm arguing is that with a team of highly-competent developers there is no need to handcuff them with mandatory processes to slow them down and come between them and releasing software. I work at a university and it's absolutely soul-sucking that a CSS colour change takes at least 3 weeks with a minimum of 4 hours of overtime to hit production.

What I'm saying is that a team of competent developers can decide what to review, what to test. If I'm doing a big refactor, I should obviously have tests for that before starting the refactor, and I should review it after. But the majority of the code that is written on a day-to-day basis is both simple and not mission critical. If I'm adding a button to a page, I can add a button to a page and commit it. I'm an adult. If this button is misaligned by two pixels because of a weird CSS rule that would have been caught in code review, then so what. The business did not crash and burn because the button was misaligned. And I would say that in 99% of those trivial cases, the button isn't misaligned, because I'm adding a button. The argument that I should code review this is so ridiculous to me.

Same with unit testing. I'll unit test my eCommerce. I'll unit test domain logic. I'm not going to unit test that a button is on the screen (unless of course there's some complex authentication logic associated with the button appearing).

I think what you should take away from this is that we're mostly on the same side. Your team should do code reviews. Technology circles are just rife with people taking things to absolutes and extremes that really have limited returns.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment