Thoughts on software, testing, and craftsmanship
Technical Debt is a term that means different things to different people...
For years now, I've held the belief that effective automated test suites have four essential attributes.
Laziness, Impatience, and Hubris don't seem like virtues, but the nature of programming means they are. However, I think there is something missing some Larry's list...something most people would agree is actually a virtue. I've come to believe that empathy is likely the most essential great virtue, because empathy will not only make you a better programmer, but it can keep you from becoming a terrible person.
Microservices have problems. Monoliths have problems. How do you wind up in a happy middle? Here's what I do.
To run across a lake, you only have to do one thing: Run fast. The same is true in software development.
Revert your coworkers changes because you want them to be happy