someone thinking real hard is as important as testing
With one caveat.
The "thinking real hard" has to happen before and as the code is written.
If you try to catch fundamental design problems and misconceptions during a code review, you're much too late. At that point there is a "status quo" i.e. the existing code, and a defensive resistance to change, even if you can demonstrate clear problems with said code. The end result is band-aids on top of band-aids, rather than a proper solution to the problems.
Edit: the article itself alludes to band-aids:
our developer had improperly patched the glitch
i.e. they attempted a quick fix, instead of understanding at a fundamental level the overall mistakes in what they were doing.
Comments
someone thinking real hard is as important as testing
With one caveat.
The "thinking real hard" has to happen before and as the code is written.
If you try to catch fundamental design problems and misconceptions during a code review, you're much too late. At that point there is a "status quo" i.e. the existing code, and a defensive resistance to change, even if you can demonstrate clear problems with said code. The end result is band-aids on top of band-aids, rather than a proper solution to the problems.
Edit: the article itself alludes to band-aids:
i.e. they attempted a quick fix, instead of understanding at a fundamental level the overall mistakes in what they were doing.