How You Shouldn't Learn to Code

Don’t become the next person starting to learn to code and quit after a week

November 22, 2022

“The engineer shortage won’t end until coding fluency is as common as literacy and numeracy.” — Naval Ravikant

A common line of inquiry for many young students is the desire to learn how to code, but most fail to do so. Today, the digital economy makes up more than 15% of the global GDP with a growth rate of more than two times faster than the global GDP over the last 15 years. Hence, understanding how the digital economy is built is like understanding the basic conventions of accounting when going into business.

Over the years, I have talked with many of my peers about learning to code. Most of them were extremely intelligent, motivated, and driven, however, most of them quit the pursuit of learning how to code after just a few weeks. The reason? I believe there are two. Firstly, it’s extremely hard to know where to start in this seemingly infinite jungle of coding languages, frameworks, and infrastructure. The internet as we know it today has evolved rapidly with major impacts on the conventions for building things quickly. The second reason why students fail to learn to code is that they lack perseverance, and I don’t blame them. Learning a coding language can feel utterly theoretical and you quickly run into dead ends on which you spend hours trying to figure out what the problem is. However, there is a better solution to this.

Start with a project. I know, there are fancy certificates and courses out there that look fantastic on your LinkedIn. “Data science for business”, “Front-end development with React”, or “Mastering machine learning“. However, the problem with those courses is that you will most likely forget most of the things within a matter of months. Why? Because you lack the continuous practice required in this new discipline. Without deliberate practice, you will never reach a sufficient level of mastery in anything. So what if there was a better way?

Starting with a side project and using this project as your motivation to learn is perhaps the best decision you can make when starting out to learn how to code. I believe you should define a side project you would like to be able to build and then break it down into smaller chunks of learning that will ultimately get you to completion. Examples of this could be building your own todo app, or developing your own website. There are countless other things you could build, the only limit is really just your imagination. Once you are clear on the end goal, reverse-engineer the steps to get there. The most powerful companion in this dissection of steps is Google. You will find a broad range of answers that consequently lead to new questions which will lead you down a seemingly endless rabbit hole of new ideas and concepts you don’t understand. But this ambiguous journey is exactly what true, self-motivated learning looks like.

So how should you learn to code? Start by defining a small project you would like to build on your own. Then, break it down into the small pieces that are missing in your current knowledge and skillset to build that thing. Google and Youtube are your best, free resources that will guide your journey. Yes, perhaps you will spend a week or two learning something that after deeper research turns out to be irrelevant. But these are exactly the kind of things you need to figure out on your own to truly learn something. The biggest obstacle keeping you from learning to code is you.