Rubber duck problem solving

Rubber duck problem solving

Rubber duck problem solving describes the phenomenon where you realize the solution to a problem in the middle of explaining it to someone else. The name stems from apocryphal stories in which stumped engineers are advised to get help from inanimate objects, including a literal rubber duck.

The technique works because communication forces us to arrange our thoughts and prevents us from taking shortcuts that would leave our audience behind.

When you force yourself to verbalize something, you take poorly formed mind-stuff and slot it into discretely packaged concepts (words) whose meanings are agreed upon by other humans. This alone adds an important layer of organization to your thinking by taking non-verbal soup and giving it shape.

Joseph Pacheco [1]

In practice, the helpful "rubber duck" is usually a close friend, a distant colleague, or the Stack Overflow question box — someone who is familiar enough with your field to have a deep discussion, but not so familiar that you are tempted to take shortcuts.

I sometimes struggle with arranging my thoughts verbally, so my favourite rubber duck is my written work journal. When I'm tackling a tough problem, I start writing as though I were preparing a seminar talk, textbook, or research paper, and that structure often helps me find the answer — and save it for my future self!

  1. My guide for rubber duck debugging: A better process (with no rubber ducks). TripleByte. Joseph Pacheco (2020-08-06). ↩︎