All concepts

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