Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
In IT, the slang term “rubber duck debugging” has been created to describe an often effective yet simple strategy for debugging code. In rubber duck debugging, the programmer sits a small rubber duck (or other inanimate object) near them on a desk or near a computer, and explains the code to the duck line by line.
Rubber duck debugging is also known as rubberducking.
The idea behind rubber duck debugging is simple – by explaining the process out loud, the programmer is able to better understand the nature of the code, the purpose of individual lines or modules, and what code is intended to do, in contrast to what it actually does. This idea is similar to the idea of proofreaders reading text aloud in order to catch errors, or mathematicians explaining an equation step by step in order to understand how the process works.
With rubber duck debugging, the idea is dressed up in a humorous way – the duck does not actually play any active role in the process. Again, it is the idea of verbal explanation that helps the developer to catch bugs in the code. For instance, the programmer could be “showing the duck” how a loop aggregates a certain string variable, and realize that one of the parameters is set wrong. Programmers can recognize fencepost errors and other types of errors while they are verbally going through the code and explaining it out loud. Rubber duck debugging has become somewhat commonly used term to describe this kind of explicatory process and why it is valuable to IT pros.