Why Software Estimation Is Broken

Software estimation fails because we estimate effort instead of uncertainty. A task isn’t hard because it takes many hours — it’s hard because we don’t know what we don’t know. The honest answer to most estimates is a probability distribution, not a number.