A few days ago, my friend Gian sent me a very interesting link that I’d like to share with you.
The post describes a technique to solve complex problems or what I usually call “mystical problems”.
This technique is called by the author: “Rubber Duck method of debugging” and seems to work very well. I have tested this with a fellow programmer instead of a Rubber Duck and works!
Here you have the technique and the reference link:
There is an entire development methodology (whose name escapes me at the moment) that makes use of that very phenomenon.
We called it the Rubber Duck method of debugging. It goes like this:
1) Beg, borrow, steal, buy, fabricate or otherwise obtain a rubber duck (bathtub variety)
2) Place rubber duck on desk and inform it you are just going to go over some code with it, if that’s all right.
3) Explain to the duck what you code is supposed to do, and then go into detail and explain things line by line
4) At some point you will tell the duck what you are doing next and then realize that is not in fact what you are actually doing. The duck will sit there serenely, happy in the knowledge that it has helped you on your way.
Works every time. Actually, if you don’t have a rubber duck you could at a pinch ask a fellow programmer or engineer to sit in.