Why Teaching Others Helps You Learn
I know how to program, but most of my family or friends don't. Yet, I still make a sincere effort to explain my work. Some common questions I get from them are:
- What does all this text do? And, what's with all the colors?
- Is XYZ hacking/cracking?
- What exactly are cookies?
None of these are informed questions, but I enjoy answering them nonetheless. They may seem like a waste of time for someone with expertise, but you can still learn a lot from these simple questions.
Why Teach
Learning requires an active effort. Unlike memory or recall, comprehension needs work on your part. This is the rationale behind many learning strategies (and, a lot of homework assignments). Although there are individual differences, I believe everyone can benefit from teaching.
Teaching is one of the most involved tasks you can engage in. It requires enough comprehension to not only understand a subject but translate a topic into your own words. This high level of involvement is what brings about higher levels of understanding. The teaching process also helps refresh your memory, reinforce the main concepts, and, best of all, shows you precisely what you did and did not understand.
Shoshin
One particular benefit teaching provides deals with your perspective. For the most part, you are confined to your own mind. You read with your mind, write with it, and speak with it. But with teaching, you get to notice someone else's mind and how they respond to things you already learned.
This is exceptionally helpful when you deal with absolute beginners. They may lack the sophisticated vocabulary, but they also lack the narrow-mindedness, preconceived notions, and dogma found with some professionals. Zen Buddhists call this concept Shoshin (初心) or roughly "beginner's mind."
The Feynman Technique
A method that elegantly melds all these ideas is the Feynman Technique. Invented by the famous physicist Richard Feynman, it involves only one step:
Whatever you are learning, studying, or working on, teach it in its entirety to a 5, or 8, or 12-year-old.
To do this successfully, you have to take your expertise and distill it down to its essentials. Moreover, you have to convey this knowledge using a simple, near-universal language. All of this requires an enormous amount of work; yet, the rewards are equally great.
For Feynman, his method made him known as the "Great Explainer," and his Lectures on Physics is arguably the most popular physics book ever written. For me, explaining even the basic concepts in programming helps my mind bridge the gap between what I see and what a novice sees. It shows me the overly technical things, the hard-to-understand things, the widely appealing things, and the simple things.