On getting really good at something


Everybody has things he does exceptionally well. Those things might not be very useful but that”s beyond the point, the purely utilitaristic point of view is not just boring but also inhumane. Some of those things that you do really well some just came to you, you never learned them. Call it talent or a gift (well not in the case of being able to fart really disgusting maybe) or a coincidence.

But when it comes to things that don”t come to you naturally most people will tell you to do things to learn them. This is actually not bad advice though somewhat oversimplified: When you want to learn to highjump you need a little bit of theory before you can do the training, when you want to learn to program in some language you need some theory/reading manuals before being able to do anything. But in general you learn things by doing them, you can read about something all day but for most things you”ll not really learn anything, you need practice and training.

So you practice your new skill all day and get better and better at it, your third practice session will probably yield way better results than the first to did, you improve your skills, you probably start learning new things that build on the skill you just learned.

But if you really want to get excellent at something, if you aim to really grok something, you have to teach it.

I”m not really talking about being a teacher at some school or university or some other educational facility, I”m just talking about really explaining things to someone else.

Just as you can”t learn most things by just reading about them you cannot completely learn something by just doing it.

When you read about something you take that writer”s mental model and try to transform it into something you can use. While actually doing it you improve your own mental model, you find the problems, the contradictions and the areas where your mental model is just guesswork and you improve that. You come up pretty much with your own mental model of things which works well (at least well enough) for you.

But to really make your model better you have to nail it down even more precisely and that is what teaching forces you to do: You will be asked questions that you cannot answer, that point at that one area of your mental model that you didn”t look at too closely, that”s fuzzy or that has contradictions. And you are forced to hammer those kinks out.

You could of course just write a book about the subject and you”d get pretty far, but the specific property of human beings (which is being pretty great random noise generators wink On getting really good at something) makes teaching an even better way to improve your own mental image: you just cannot wiggle your way around issues anymore.

And it is a huge mistake to believe that you can only teach something if you know all about it, that”s bullshit. Of course you have to know something to teach something, but the process of teaching is one that ideally changes the teacher and the student, improves the both of them. Teaching something forces you to also learn, to reflect, to understand.

At some point I really wanted to learn what all the UML buzz was about, so I became a teaching assistant at the university for a UML course. I had to answer buttloads of stuff I couldn”t answer which forced me to learn it deeper than just knowing some syntax (up to the point where I knew enough about UML to know that many of the things in it are just utter crap wink On getting really good at something).

If you really aim for excellence at something, teach it.