As Developers, there is an all-too familiar trap where we start to become really good at what we do.
We start to become really, really good programmers.
And with that, we start to code less, because we want to put more effort into design to making sure our code is perfect and beautiful and adapting and pristine and self-healing and and and…
So we do more design, then we code, then we write tests, lots of tests to validate all these assumptions. In the end we start focusing more on design and testing then constant coding and pressing F5.
What we should be doing, what we need to be doing, more of is coding and testing, coding and testing, pressing F5 every 15 minutes to validate what we’ve done before sloughing forward with our next task.
Unit Tests are great for giving you that post check-in happiness glow of everything coming up green (and should not be discounted at all) but as developers we need to have that constant ebb and flow of success and failure in our face. It’s through those attempts and scenarios that our code gets that much stronger, hardened and bulletproof.
Code, Fail, Code, Fail, Code, Fail, Code, It works, Check it in, Code, Fail, Code, Fail, Code Fail.