Rubber Ducking
Rubber Ducking
A debugging method in software development where a programmer explains their code line-by-line to an inanimate object, such as a rubber duck, to identify errors through the process of articulation.
EverydayConcepts.io
Origin
Popularized by Andrew Hunt and David Thomas's The Pragmatic Programmer (1999), which recounts a developer who debugged code by explaining it line-by-line to a rubber duck. The practice of talking through problems aloud likely predates the book, but the duck became its iconic symbol.
Updated February 22, 2026