Rubber Ducking Out of a Dilemma
Psychology may not be the realm of software developers but here’s a simple super trick that depends on behavioural science that has helped many a programmer and could be the answer to taking complex decisions or resolving a dilemma.
Get a rubber duck, yes a toy duck. Place it on your desk and now try to explain your problem as simply as possible. Outline to your rubber duck the issue at hand and then walk your duck through your thought process. And quite magically the silent non-responsive duck will show you the path.
Rubberducking was a technique that first appeared in the book, ‘The Pragmatic Programmer’ in 1999 when Andrew Hunt & David Thomas, suggested that a programmer should carry around a rubber duck and debug their code by forcing themselves to explain it, line by line, to the duck.
Many other terms exist for this technique, often involving different (usually) inanimate objects, or pets such as a dog or a cat. Teddy bears are also widely used.
Explaining a problem to someone else, possibly even to someone who knows nothing about your domain can help you in hitting upon the solution in the process of explaining the problem. In trying to explain to an ignoramus forces you to simplify it and thus allows you to unravel the complexity and see things more clearly.
And because this technique does not involve another human you can do this discreetly and independently at your own pace. The next time you go round in circles, try “Rubberducking”.
Here’s the extract from the book.
Mohammed Sutarwala, Managing Director, emQube