How to learn to code

YouTube vs paid bootcamps & The growing need for computational literacy

Tamir Shklaz
DataDrivenInvestor

--

Coding is becoming an increasingly more vital skill set in today’s modern economy. Many experts compare coding now to literacy 100 years ago. A century ago, a handful of well-educated people would have the privilege to learn to read and write. Literacy enabled these individuals to learn more things by reading books and to co-ordinate with people through letters. This created a great deal of wealth for these individuals and created a chasm between those who could and could not read.

Literacy, therefore, became a necessity to be a useful member of the economy.

Similarly, today a handful of privileged individuals know how to code, and this tool has enabled the creation of more wealth for these individuals than humanity has ever seen. Computers have become a fundamental part of modern society and will only increasingly become so and therefore; it is only a matter of time before computational literacy becomes a prerequisite to participate in the contemporary economy.

Photo by heylagostechie on Unsplash

Cool so computational literacy and knowing how to code is important, how do you learn it?

Know your why

Learning to code is hard, in some ways as hard as learning a new language and in many ways much harder. If you intend to learn to code because society tells you it is essential, and you do not directly see how you will use it, you will likely fail.

Coding is a huge field; it spans everything from website development, app development, data science, graphics, game development, operating systems and security. Each field has it’s own learning track, and if you do not know what you want to do with code you will become overwhelmed with the number of available paths.

The two most common subfields and the ones that will likely be most useful to you would be website development and data science. These are the fields which are the highest in demand and luckily also the quickest to learn. Website development is well the process of making websites, and data science is the process of extracting insights from data. Both of these fields have 1003 subfields, but the descriptions above will do at a high level.

Having said all of this: my biggest piece of advice is to have a project that you want to build. Maybe it’s a website for your family business; a game, an app or a visual dashboard for property data in your area. For me, it was a mobile app for my first startup. Having this project will motivate you to learn and give you direction in an overwhelming sea of information and YouTube tutorials.

Where to start

For 99% of people, the easiest place to start is by learning Python. There are a ton of free high-quality resources available, and it is a very beginner-friendly language.

A quick google search, however, of “learn python” will leave you feeling very overwhelmed. Broadly speaking, there are three options:

  1. YouTube
  2. Specialised platforms like datacamp.com
  3. Paid bootcamps/courses

Before jumping into each one, I want to address the most common reasons people fail to learn to code.

  1. Motivation: Learning to code can be hard, if you do not have a clear enough why and the right framework for learning regularly, you will simply lose the motivation to do so.
  2. Decision paralysis: there are 1003 and topics and 1003 different ways to learn these topics from 1003 different teachers. This is why having a project is so important because it will limit the number of choices you can make and therefore make the process of choosing and sticking with a particular path much easier.

If you have the motivation and a very clear idea of a project you want to build: YouTube is the best tool for the job. I’ve done CS classes at university, I’ve been a part of a google scholarship program paid for courses like Udacity and Plural sight, and none of them come close to the quality of content on YouTube (If you know how to look). This experience has left me with the following outlook on education content.

The best education content does not exist behind the shiny gates of MIT or Stanford; it does not exist behind the paywalls of online courses or premium coding bootcamps. It exists for free on YouTube.

Learning how to code through YouTube will teach you an additional skill which might be more important than coding itself. This skill is knowing how to learn, how to sift through vast amounts of content and finding what the specific piece of information you are looking for. After a few months of coding experience, you quickly realise that coding is 20% actually coding and 80% knowing how to use google to learn new things. Coding is a continually evolving field, and no course can teach you everything you need to know. Therefore the essential tool in your toolbox is the tool that lets you acquire new tools.

Here are my two suggested playlists for learning Python, watch the first couple of minutes of both and chose the one with the teacher you prefer

If you have the money and you’re unsure about your motivation, a paid coding bootcamp with other students is your best bet. Nothing motivates people like the sunk cost of wasting money. You will also have a well-structured course, a teacher you can ask questions and a cohort of fellow students to motivate you.

However, these bootcamps can be very pricey. If you need a cheaper alternative but still need some motivational nudges and a clear path, then specialised platforms like datacamp or codeacademy would be my suggestion. These platforms cost roughly $15-$25 a month to use.

Last piece of advice

Many people fall into “tutorial purgatory” when learning to code. You feel like there is a never-ending list of things to learn, and you develop the belief that you need to know all of it before jumping into your first project. This is nothing but procrastination and the fear of the unknown talking.

I’ve been developing software professionally for five years, and I still have barely scratched the surface of what there is to know. However, if I did not stop the constant tutorial watching, I would not have developed anything and still just be learning to this day.

Learning to code is as simple as having a project in mind and work towards building it every day.

Good luck!

This post is part of a 30-day writing challenge I am doing. Every day for 30 days I am posting an article of at least 500 words. If you notice that I miss a day I will buy you lunch.

--

--