Famous physicist Murray Gell-Mann is supposed to have suggested that Richard Feynman solved problems with the following cutting edge technique:
- Write down the problem.
- Think real hard.
- Write down the solution.
Usually when people quote this, it’s to make a joke about how smart Feynman was. (If I tried this, I wouldn’t come up with quantum electrodynamics! I must not be able to think hard enough.) That’s one reading, but I prefer a different one.
When I started programming professionally, I was really excited about figuring out how to become a better programmer. (I still am!) So I asked a lot of people, “how can I become a better programmer?” But nobody gave me very satisfactory answers. They would tell me to play around with obscure programming languages, or study algorithms, or read papers, or do a bunch of other stuff that felt tangential and didn’t really move the needle.
In retrospect, I wish those people had just told me “think real hard.” I was looking for an easy way out—One Weird Trick to Programming Better—but programming is too hard for that.
That’s my preferred reading of the Feynman Algorithm: there is no one weird trick.
On the other hand, I have gotten a ton better at programming in the last four years. Not through any specific piece of advice, or any weird trick. Rather, it’s come by constantly trying to learn small new things, make small tool improvements, make my models a little deeper, work a little faster, come up with slightly better ideas. By, literally, thinking real hard, for a long, long time. The Feynman Algorithm works!
(That’s not to say good advice is impossible. I’m sure if Jeff Dean watched me go through my programming day, he would have tons of great tactical tips that would help me a lot. But even that depends on Jeff Dean being able to know which of his 10,000 tactical tips would be most useful to me. And the real difference between us isn’t the tactical tips, it’s the underlying models that generate the tips in the first place. Those seem to be nearly impossible to communicate.)
A lot of the things people ask for advice on fall into this category. “How can I be happier?” “How can I be more productive?” “How can I have a bigger impact on the world?” Sure, there are basic life hacks like sleeping well or getting exercise. But 99% of the “secret”—the thing that separates me from Gell-Mann, or Jeff Dean—is tacit knowledge. It often can’t be articulated any better than “think real hard.” But, believe it or not, thinking real hard, for real long, does work.