hofstadters-lawlisted
Install: claude install-skill The-Artificer-of-Ciphers-LLC/skills-from-the-artificer
# Hofstadter's Law
> "It always takes longer than you expect, even when you take into account Hofstadter's Law."
> — Douglas Hofstadter, 1979 (Gödel, Escher, Bach)
## The core idea
Software projects almost always take longer than estimated — and this isn't just because people are bad at estimating. The law's self-referential structure is the point: **even when you know about the tendency to underestimate, you will still underestimate.** The bias is deeper than awareness alone can fix.
## Why this happens
**1. Optimism bias.** Humans naturally plan for the best-case scenario, not the median. We imagine things going right.
**2. Unknown unknowns.** You can estimate the work you can see. You can't estimate the work you don't know exists yet — and software always has more of that than expected.
**3. Complexity is non-linear.** Adding features to an existing system is slower than adding them to a greenfield one. Each new piece interacts with everything already there.
**4. Integration and testing always take longer than the coding.** Developers estimate the coding time, then implicitly assume everything else is "not much." It's always much.
**5. Interruptions and context switching.** Calendar time is not development time. Meetings, incidents, code reviews, and dependencies eat calendar days without appearing in estimates.
**6. The planning fallacy.** People plan based on how similar past projects went (not well) while estimating based on an idealized version of the current