What Is “Rubber Ducking?”
Have you ever found yourself stuck on a problem, struggling to figure out what went wrong? For instance a tricky piece of writing, a complex creative endeavor, or maybe you’ve lost your keys. Enter rubber duck debugging.
Rubber duck debugging, also known as "ducking," is a technique that originated in the coding and programming world. The concept is simple: explain your code, line-by-line, to a rubber duck. Yes, a rubber duck.
The idea was first introduced in a book where a programmer carried around a rubber duck and spoke to it as if it were a colleague. By verbally explaining the code, the programmer was able to break down the complexity and get distance and some objectivity from the doing-ness of writing the code. This allowed them to identify errors or issues they may have overlooked before.
The beauty of rubber duck debugging lies in its simplicity. By breaking down the code and speaking to the rubber duck as if it were a 5-year-old, the programmer is forced to simplify their explanation and identify any issues that may have gone unnoticed. It's a form of self-reflection that can save hours of frustration and wasted time.
As a coach, I’ve noticed that when clients speak their problem out loud to me — an objective third party — they often end up recognizing their solution.
Next time you find yourself stuck on a problem, give rubber duck debugging a try. Whether you have a literal rubber duck or simply imagine one sitting on your desk, you may be surprised at how effective this technique can be in identifying errors and finding solutions.