The Pickles Solution
The Pickles solution is – discovering the solution to a problem through the act of explaining the problem to somebody else.
This is very common in programming where a developer spends a lot of time on his own trying to fix a problem to no avail. He calls over another developer and starts explaining the problem. In the middle of the explanation the developer immediately then realizes what the solution is.
I think the reason this happens is that when a developer is trying to find a solution his brain breaks things down into:
- things that could be causing the problem
- things that are assumed as working
A lot of the time the problem lies in the things that are assumed working and the developer is not considering them as a possible solution to the problem.
Explaining the problem to another developer forces him to break the problem down into a series of simple statements and also forces the developer to think about both the “assumed working” and “not assumed working” parts of the problem.
As a developer I uses this tool all the time. I’ll say to another developer “come over here so I can explain this problem to you and figure out what the solution is.” I searched for an existing name of this technique and I couldn’t find it so I’m naming it after myself.
– Mike “Pickles” Piccuirro
UPDATE: After this article was released it was pointed out that I’m not the first person to come up with this idea. So credit where credit is due. It turns out this technique was first called out in 1993 in Steve McConnell’s Code Complete: A Practical Handbook of Software Construction. But I have a rule to never let reality ruin my fun, so long live The Pickles Solution! Also stay tuned for my new groundbreaking totally original novel about a boy attending wizard school.