4 ms·
Not sure how I’m fortunate enough to work on a project that lets me use TDD most of the time. meshes with but none of them [agilists] have any experience what c
by locopati 16y ago
Not sure how I’m fortunate enough to work on a project that lets me use TDD most of the time. meshes with but none of them [agilists] have any experience what companies whose survival depends on shipping software have to go through to organize huge code bases
He admits the benefits of TDD and the next paragraph turns on the proponents of TDD (which is not all there is to agile, but that's another story).
Every shop I've worked in, I've had to sell TDD, and every time it's been varying degrees of slog, and at the same time, we've been able to develop faster: random things weren't breaking since we had tests to catch things like that (and if things did break, we wrote more tests to catch that too); having developers leave or hiring new developers were less of a risk because there were examples of working code and because there were tests to buffer the learning curve; major refactors were less scary because end-results could still be validated even if a large part of under-the-hood had changed.
Sure you have to be sane - the one-off prototype doesn't need the same degree of TDD as the platform that's going to be around for 5 years, but you still need a way to validate your results. And yeah, sometimes the tests come after the code, but the tests still need to be there.