Why does it matter?
So, why does all this matter? Why write more code than we have to? Because it's worth it. And to be honest, most of the time it isn't more code. As you take the time to grow your application with tests, simple solutions are produced. Simple solutions are almost always less code than the slick solution you might have come up with otherwise. And inevitably, slick solutions are error-prone, difficult to maintain, and often just plain wrong.