Farnam Street helps you make better decisions, innovate, and avoid stupidity.

With over 350,000 monthly readers and more than 87,000 subscribers to our popular weekly digest, we've become an online intellectual hub.

An Algorithm for Solving Problems

“He (Richard Feynman) was always searching for patterns, for connections, for a new way of looking at something, but I suspect his motivation was not so much to understand the world as it was to find new ideas to explain. The act of discovery was not complete for him until he had taught it to someone else.”Daniel Hillis

***

The Feynman Algorithm, which is a simplification of Richard Feynman’s technique to learn anything, is a good all purpose algorithm for solving problems. Cal Newport explains:

  1. Simplify the problem down to an “essential puzzle.” Here’s how Danny Hillis explained Feynman’s use of simplicity: “He always started by asking very basic questions like, ‘What is the simplest example?’ or ‘How can you tell if the answer is right?’ He asked questions until he reduced the problem to some essential puzzle that he thought he would be able to solve. Then he would set to work.”
  2. Continually master new techniques and then apply them to your library of unsolved puzzles to see if they help. As mathematician Gian Carlo-Rota explained when describing Feynman’s use of this strategy: “Every once in a while there will be a hit, and people will say: ‘How did he do it? He must be a genius!’”