Embrace the power of teaching to learn better

You’re learning a new programming paradigm, trying to understand functional programming and JavaScript. It’s going well and you’re completing tutorials and courses with ease but something is missing. Somehow, you’re having trouble making things stick in your mind and really using your new knowledge.

The most powerful way to master a new skill completely is to teach it to others. It’s not a technique to be taken lightly and is not easy to master, but it’ll supercharge your learning in a powerful way and help you become an expert in your subject of choice. Unfortunately, teaching takes a lot of time. You can’t share every last bit you learn. Rather, you should use this technique for subjects that are important to you or that you need to work on.

When you’re doing something, it’s a lot easier to fudge the bits that you’re not sure about. Indeed, everything will probably work fine even if there are a few parts that you completed by trial and error. When you’re teaching, you can’t skip steps: everything must be clearly laid out for the person learning. The process of teaching will help you how to structure your thinking and see where are the gaps in your knowledge so you can fix them.

You don’t need to know a lot to teach: you only need to be a step ahead of your students. Also, your English doesn’t need to be perfect, even if it’s not your first language. You’ll get better as you go along, and if your writing is clear and structured, the knowledge you’re sharing will still be useful to someone else. I’ve been blogging for over two years and my English has greatly improved if I dare saying so, but there is still a lot I can do to improve.

If you’re ready to jump in and teach what you know, how can you do it? There are many ways to teach that will give you the full benefits of this technique:

  • You can write blog posts, guides, and tutorials.
  • You can share your knowledge one to one at work or on open source projects.
  • You can record podcasts, screencasts and short videos.
  • You can give talks at your local user groups and at conferences.

Interacting with people is what makes teaching great. When you’re teaching, your students won’t have the same background as you: their questions will help refine and stretch your understanding of the subject. Everybody has their own strengths and their own way of approaching a problem, and you’ll learn from them as well.

So, go out and find people with whom you can share knowledge, volunteer to mentor people and don’t hoard all you’ve learned. You own knowledge will grow in leaps and bounds, and sharing knowledge is a joy in itself.