Fight the Normalization of Deviance

If you’ve worked long enough in the software industry, you’ve probably heard the claim that coding should be more like real engineering. Behind such statements lies a wish for a more rational approach with clear rules and certainty in the outcome. The software field can definitely do better, but as long as we have people in the loop, failures will happen because we people are far from rational and predictable.

A dramatic example took place in 1986 when the space shuttle Challenger disintegrated shortly after launch. If you look at the figure you see a puff of gray smoke on one of Challenger’s solid rocket boosters. That gray smoke shows that hot rocket gases have escaped and are now burning and compromising ...

Get Software Design X-Rays now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.