Archive for January, 2016

Apply Standards Consistently

In Surely You’re Joking, Mr. Feynman!, which, by the way, is a wonderful read, Richard Feynman explains how the famous gambler Nick the Greek was able to win at casinos. Knowing that casino odds are always in the house’s favor, Nick would instead make side bets with other players. It’s good life advice to avoid […]

Do Not Treat Quality as a Separate Activity

If there is only one thing to know about software quality, it is this: do not separate your efforts into shipping features and improving quality. Code that is resilient to future changes has certain properties: it is easy to understand it has effective test coverage its interfaces have been intentionally designed to deal with expected […]

Manage Causes, Not Effects

It’s practically a tautology: to produce the desired effects, the causes of those effects must be in place. Yet it can be easy to spend less time ensuring that the causes of quality are nurtured and more time reacting to the inevitable negative consequences of poorly-crafted code. Causes and effects are often separated by much […]

Wyatt’s Rules of Software Quality

I’ve been crafting software for a while now so I’ve had the opportunity to see about a dozen software companies from the inside. Over the years I’ve learned some things about managing software quality that I’d like to share. I’ve distilled them into four simple rules: Define quality Manage causes, not effects Do not treat […]