---
title: Solidifying what you learn
date: 2018-03-05
description: Teaching is nature's way of letting you know how sloppy your understanding is.
translations:
  - language: Español
    link: https://posts.rafaeldavis.dev/solidificando-lo-que-aprendes
    author:
      name: Rafael D. Hernandez
      link: https://twitter.com/RafaelDavisH
meta:
  keywords:
    - Learning
    - Teaching
bannerCloudinaryId: unsplash/photo-1489718199993-da7196b7f1b4
bannerCredit: Photo by [Aaron Burden](https://unsplash.com/photos/BojuZpqw4zM)
---

> Teaching is nature's way of letting you know how sloppy your understanding is.

— [Ashley Williams](https://twitter.com/ag_dubs) on
[JavaScript Air](https://javascriptair.com)
[Episode 001: Learning and Developing JavaScript](https://javascriptair.com/episodes/2015-12-16)

This quote by Ashley is one of my favorites, I reference it in my talk
["Zero to 60 in Software Development: How to Jumpstart Your Career"](https://youtu.be/-qPh6I2hfjw?list=PLV5CVI1eNcJgNqzNwcs4UKrlJdhfDjshf).
I can relate to it because it's been absolutely true in my experience. **The
_best_ way I've found to solidifying my understanding of what I learn is through
teaching it to others.**

Many people have asked me about my learning process. That's actually part of why
I gave the aforementioned talk. If you haven't already had a chance to watch it,
then here's the outline of the learning process:

1.  Consume information to be made aware of what's out there to learn
2.  Build something that you want using the technology you want to learn
3.  Teach what you learned in the process of building

In my talk I give a few stories of my experience over the last almost 4 years of
professional software development (I guess it was almost 2 years at the time)
including
[how I got started with egghead.io](https://youtu.be/-qPh6I2hfjw?t=22m1s),
[some of the apps I built to learn AngularJS and JavaScript](https://youtu.be/-qPh6I2hfjw?t=10m42s),
and
[the funny story of how I got my first full-time job](https://youtu.be/-qPh6I2hfjw?t=14m31s).

Over the last two months or so, I've been revamping my
[testing workshop](https://github.com/kentcdodds/testing-workshop). I gave it
once before for
[Frontend Masters](https://frontendmasters.com/courses/testing-javascript) and
I'm simplifying the content to make it easier to set up and less distracting to
learn from. The content will now be used to give two distinct workshops (both of
which I'll be giving for [Frontend Masters](https://frontendmasters.com) and
[Workshop.me](https://twitter.com/workshop_me)):

- Testing Practices and Principles
- Testing React and Web Applications

The process of updating the content for this and splitting one workshop into two
has been interesting for me. Being able to iterate and make content better is
cool. After you've given the same content over and over, you learn how to
deliver it better. For example, I've given my ES6 and Beyond workshop six times
now, so I feel pretty great about how to help people understand what I'm trying
to communicate and avoid distractions.

An awesome side-effect of this iteration is the impact it has on me and my
understanding of the material. I _really_ know how these things work now because
I've been asked a bunch of questions about them and had to prepare answers. It's
given me an opportunity to find answers to questions that I may never have
thought to ask on my own. And the process of creating the material also forces
me to see if there are ways to simplify so attendees have a good experience.
This has a positive impact on my understanding of the subject matter as well.

A common question I hear from people thinking about getting into teaching is
"But, what could I teach? Everyone knows everything I know." or "Everything I
know has already been taught a dozen times over." First I want to say that, the
moment you learn something new, you know something that you could teach someone
else. No matter how experienced or inexperienced you feel, you have something to
share with someone. This is an important thing to understand right away.

To address the second question... Have you ever seen a McDonalds next to a
Burger King?

![McDonalds next to a Burger King](https://res.cloudinary.com/kentcdodds-com/image/upload/v1625033336/kentcdodds.com/content/blog/solidifying-what-you-learn/0.jpg)

Why do they do that? Don't they realize they're fulfilling the same basic need
of burgers to our mouths? 🍔 Of course they do. But they do it because they each
have their own unique approach to the process that can reach different people in
different ways. The same can be said of teaching. You can reach people
(especially if you speak a language other than English!) in a way that others
simply can't.

Another thing, have you ever seen two Starbucks in the same town (or even
[three on the same corner](https://blog.seattlepi.com/thebigblog/2009/09/18/three-starbucks-on-one-houston-corner)
☕️☕️☕️)? It's all about accessibility. You can bring content to people that's
more accessible to them. The people who follow you, your friends and co-workers,
and the people who go to your local meetups and conferences. You can reach those
people better than others can because you're uniquely and accessibly in their
reach.

I hope that you take every opportunity to teach that you can. It's seriously the
_best_ way to increase the impact of the time you spend sharpening your skills.
Good luck!
