Drawing Hands by M. C. Escher

Tutorial Syndrome

The reason that you can never get anywhere with just tutorials

If you want to learn something new, what do you normally do? You google it. At least that’s what I do. Your typical search may contain “how to”, “beginning”, “tutorial”, “guide to”, etc. And search results never fail to please you — especially if you are trying to find something which is quite popular. You sift or try to sift through as many resources as possible.

Sometimes, you may just try to take in as much as you can but mostly end up forgetting. Since the advent of readily available information online, our information retention rate has declined significantly. We always have a thought at the back of our mind that if we need something, we can easily search it back on the Internet. I am not saying that having the luxury of being able to retrieve information as soon as we want and not retaining anything at all is something degenerative (maybe a bit). Times have changed and we cannot have everything in our mind all time. If we need to learn something, we gustily google it. If we want to know something, we are mostly touch typing the query “how to + something else” without even waking up our conscious mind. Awaiting us is a multitude of tutorials and how to guides. Welcome to the jungle baby! A jungle where you just keep on learning how to make a trap rather than actually making one.

Tutorial syndrome is where people always end up reading all the tutorials they can find and never being able to advance more than the level of a beginner. In order to have a certain level of mastery in a certain skill set, we need to devote in that craft (the 10,000 hour rule). If we sporadically visit the subject at our convenience, we will always end up in the cesspool of tutorials and other cheapskate resources which will teach you how to change light bulbs (or various types of light bulbs) but never being able to get you further than that.

The best way to learn something is to teach it back to someone else. But that statement carries the connotation of selfishness and is incomplete. People articulate as much as they can to convey the knowledge to others the way they have understood. The reason that the method of one-way knowledge sharing is not that effective is that some people fail to put themselves in the seats of learners who may not be able to think or conjure mental images, manifestations and other forms of aids like them. Teaching is not just a matter of telling what you know or just showing a way you used to learn. The audience is the most important part of every teaching process and you have to have flexible ways of conveying your message. Therefore, that’s one of the reasons tutorials or how to guides are not quite helpful.

Having some bad tutorials are just the tip of an ice berg of every learning process. Some so-called tutorials just want to show off how the author has really mastered the subject matter. They will tell you that it is very simple if the readers just follow the steps in the tutorial but after two or three paragraphs, you will get lost somewhere where the materials leap from absolute beginner guide to a totally-not-a-n00b-stuff (kittens playing fur ball to fire breathing, machine gun-toting, cigar smoking grasshoppers riding laser sharks). Those insanely difficult self-proclaimed noob articles are the ones which put you off from learning. You will start to think that you don’t have what it takes to learn that subject matter and back off. What you should do when you come across is to put those tutorials in neat little boxes. One good way is to tag the tutorials with your perceived difficulty and save it somewhere (I would suggest using Pocket). You may need those advanced tutorials (or show-off ones) later on. Everyone has different levels of learning so don’t get put off by the tags that the tutorials have on them. Make your own.

So, what is the best way to learn something? You just do it! You make things. You break things. You have to get stuck and feel shitty from time to time.

Easier said than done. It is really hard to actually stop reading tutorials and start working. The fear/excuse that you may miss something out and not getting anywhere when you are actually working on something will put you in a cozy bean bag of tutorials and how-to guides, erecting the wall of illusion where you see yourself as building a great foundation. But what is the point of just building a foundation and not progressing at all?

So, what you have to do is to get your feet soaked when you are starting from a clean slate. Delve yourself into a fair amount of tutorials (Again! Be judicious on your consumption of abundance of resources. Remember, gluttony is a sin, a sin for your learning process) and start doing something on your own. You have to get stuck while crafting things out on your own, you will bang your head on the table, door, wall, shower head, steering wheel and other hard objects, after a while, you will realize a solution, you will implement it, but most of the time, you will find it useless, You will have to repeat the whole process (if you start to have double visions, give your head a rest) until you think you can go nowhere and cry in great despair. You will find yourself being blocked by edifices from time to time.

Brick walls are there for a reason.

If you don’t know who said that, you definitely have to check out the talk given by Randy Pausch, it will change your life in many ways.

You have to be desperate enough to overcome that brick wall to get over it. They are there for those who don’t want to put much effort to get over them. The more effort you make, the more dots you will be able to connect and the more meaningful those arcane tutorials and references that you have saved before will become. So, stop reading tutorials and start limping through the minefield :D

Puzzles are never meant to be solved by knowing the ways to solve it beforehand. You can only have the best part of solving a puzzle only after you have figured it out yourself.


  • Locked doors, headaches, and intellectual need
  • Five years of teaching mathematics to high school students. I realized how important it is to teach students the way they are supposed to be taught. Not everyone is supposed to be taught like scientists or computer programmers. Some are inspired by nature, some are inspired by airplanes but most of them love to play games. My technique is to be in their place and try to give the best Calculus examples that will put a spark in their eyes :)
  • Monads (functional programming) I spent many hours on Monad tutorials while learning Haskell. It turned out that I didn’t understand any of it until I really needed Monads when I actually start to write stuffs in Haskell. So, I just revisited those articles and got a better grasp of Monads.

After writing this and realizing that I have mentioned Randy Pausch, I start to feel a little bit sentimental. Here is to Randy.

Randy, thank you so much for leaving a great legacy. Even though I only know you through your last lecture video and your book, you have a huge impact on my life. May you rest in peace.