Learning to code? Don’t just do projects

What to expect

One of the most dangerous and common tips for learning to code is to "just do projects."

Projects can be a great way to learn to code, but people often attempt them too early, get discouraged, and quit.

We'll talk about why this happens and what to do instead.

The problem with projects too soon

Code learners will often say things like "I'll just code up a quick slideshow," or "I'll make a simple social network app."

These statements lead to one of two scenarios:

  1. The project is way too hard, and the person gets discouraged.
  2. They stumble through and complete the project, but since it required so much new information at one time, they can never remember it or apply it again.

Both scenarios lead to a nasty psychological effect where a learner will think, "If I can't even do this easy thing, maybe I'm not cut out for coding."

As a result, trying to do a project too soon is often the thing that stops people from learing to code altogether.

The solution to the project problem

Learn small concepts first.

For example, show text on a screen, add two numbers together, or change a background color.

As you learn concepts, you'll be able to create mini-projects based on your new skills.

The key with the concepts-first approach is that you'll learn to judge a project better. That way, you won't jump into anything huge and get discouraged.

Here are some benefits of going concepts-first:

  • Smaller pieces of learning will give you more quick wins and therefore more momentum.
  • Concepts build on each other, so with each concept you learn, you'll unlock a whole set of new projects you can do.
  • You'll remember things better if they're in smaller pieces.
  • It'll be easier to apply what you've learned to different situations.

An important caveat

It's important to challenge yourself, and taking on an unfamiliar project can be a great way to do that.

My point in this article is not to avoid challenging projects; instead get a few basic concepts under your belt so you can judge the situation better and avoid getting discouraged.

What's next?

If you're interested in learning JavaScript, here's a roadmap of which concepts to learn to make quick progress.