All concepts

Accidental Complexity

Programming tasks which could be eliminated with better tools (as opposed to essential complexity inherent in the problem being solved).

EverydayConcepts.io

Origin

Fred Brooks introduced the distinction in his 1986 paper No Silver Bullet — Essence and Accident in Software Engineering, delivered at the IFIP Tenth World Computing Conference in Dublin. Drawing on Aristotle's philosophical categories, Brooks divided software difficulties into "essential" — inherent to the problem — and "accidental" — imposed through tools, languages, or architecture. The paper was later reprinted in the anniversary edition of his landmark book The Mythical Man-Month, cementing both terms in software engineering discourse.

Updated February 22, 2026