I thought I understood WebGL shaders. I'd been writing them for years. I could make particles dance and colors blend. I could get the job done.
Then, during a workshop I was leading, a student asked a simple, killer question: "Why are the vertex and fragment shaders separate? Why can't we just have one program?"
I froze. I mumbled something about "different stages of the GPU pipeline," but the truth was, I didn't really know. I had learned a pattern, a recipe, but I had never been forced to understand the fundamental architecture. My "expertise" was a mile wide and an inch deep.
That embarrassing moment of silence taught me a lesson that has since become a cornerstone of my creative practice: the fastest and most effective path to mastery is to teach what you are trying to learn.
The Explanation Gap
We've all experienced it. You read a book or watch a tutorial, and you nod along, thinking, "Yep, got it." Your brain has a fuzzy, comfortable sense of comprehension.
But that's an illusion. The real test comes when you try to explain that concept to someone else, without jargon. That's when you discover the "explanation gap"—the chasm between what you think you know and what you can actually articulate.
Teaching forces you to bridge that gap. It's a ruthless audit of your understanding. It relentlessly exposes your fuzzy thinking, your memorized recipes, and your glossed-over assumptions. When a student asks "why," you'd better have a good answer. And the process of finding that good answer is where the real, deep learning happens.
The "Learn in Public" Operating System
You don't need a formal classroom to be a teacher. In fact, some of the most powerful teaching happens in public, as a natural byproduct of your own learning process. Here's how to integrate it into your practice.
1. Adopt the "Document, Don't Create" Mindset. Instead of trying to create "content" from a place of authority, simply document your process as you learn.
- Just figured out a tricky piece of code? Don't just save it. Write a quick blog post titled "How I Finally Got This Thing to Work." Explain the dead ends you hit and the "aha!" moment that solved it.
- Discovered a new workflow? Record a quick, unpolished screen-capture video of you walking through it. Your goal isn't to be a perfect presenter; it's to be a generous peer.
2. Turn Your Problems into Your Portfolio. Every challenge you overcome is a potential piece of teaching content. That bug that took you three days to solve? That's not a failure; it's a tutorial waiting to be written. This reframes your struggles as assets. Every problem you solve adds a new page to your public library of expertise.
3. Teach One Step Behind You. One of the biggest fears is, "I'm not an expert, who am I to teach?" Here's the secret: the best person to teach a beginner is often someone who was recently a beginner themselves. They still remember the pain points, the confusing jargon, and the things that "experts" take for granted. You don't need to be ten steps ahead of your students. You just need to be one.
The Compounding Interest of Generosity
For one year, I made a simple commitment: for everything I learned, I would create one small piece of public content that taught it to others within a week. A blog post, a Twitter thread, a commented code snippet—it didn't have to be a masterpiece.
The results were astonishing.
- My learning accelerated dramatically. Knowing I'd have to explain each new concept forced me to learn it on a much deeper level.
- My "portfolio" exploded. I ended the year with dozens of articles and tutorials that demonstrated my expertise far more effectively than any traditional portfolio ever could.
- Opportunities started coming to me. Clients would reach out saying, "I read your post on X, and it's exactly what we need." I was building a reputation and a client funnel without ever "selling."
The act of teaching, of sharing what you know, is the most effective form of marketing there is. It's an investment in your community that pays dividends in your career.
The Feynman Technique in Action
Nobel Prize-winning physicist Richard Feynman had a famous technique for learning. He'd take a concept and try to explain it in the simplest possible terms, as if to a child. If he got stuck or had to use complex language, it meant he didn't understand it well enough, and he'd go back to the source material.
This is what teaching does. It's the Feynman Technique in action. It forces you to distill, to simplify, to find the core of an idea. And in doing so, you internalize it in a way that passive consumption never could.
So the next time you learn something new, don't just put it in your toolbox. Take it out, examine it, and then show someone else how it works. Your future self, now a true master of their craft, will thank you for it.
