This post was originally written in late 2020, but never published until now. Better late than never.

I've been teaching myself how to code for the last six months. More if you count learning HTML and CSS. In that amount of time, something has become glaringly obvious: most people who learn how to code do so in a way that makes no sense at all.

I started learning how to code like anyone else might: I bought a popular book about coding (Headfirst JavaScript), started to learn about coding from a trusted expert (Robert Martin), watched numerous coding tutorials online (Traversy Media), enrolled myself in courses from popular coding platforms (Udemy), studied from advanced online programs (Launch school), and used popular coding documentation resources (W3 schools).

In this six month process of teaching myself how to code, I noticed that many people teach themselves how to code based on wrote memorization, ie "You will learn how to code by learning coding's syntax instead of learning about coding concepts."

This is a terrible way to learn how to code for two reasons.

  1. Memorization is often the worst way to learn anything
  2. Understanding coding logic is really the only thing that's important

Learning languages is about connecting what you already know with new concepts and then applying these new concepts into real-world practice with frequency. However, most coding tutorials are really bad and don't help you do this.

Almost every coding tutorial I see is paced faster than new students can absorb and learn to understand.

Most of these tutorials show you how to do cool things, have enticing titles, and even transparently show their source code to shows you how it works, but most of these tutorials don't explain the logic of the code at all.

Sure, they show you the code on screen, but often coding tutorials explain how to style an application more coherently than they explain why they're using specific JavaScript functions over others or how exactly any of the logic works in the first place.

As someone who's taught both adults and children serious topics before, I find relying on mediocre learning resources intolerable. You can learn how to code without wanting to pull your hair out. Insist on a better, slower, and more logic focused way.