Learn JavaScript - A Free 7-hour Interactive Tutorial
Tags: javascript, css, codenewbie
Published: 2021-05-27 15:15:47

---
canonical_url: https://www.freecodecamp.org/news/learn-javascript-interactive-course/
---
Over the last four months, I have recorded what is probably the most interactive [JavaScript course](https://scrimba.com/learn/learnjavascript?utm_source=dev.to&utm_medium=referral&utm_campaign=learn_javascript_dev_to_article) that has ever been created.

The reason I have done this is because I often see new coders fall into the same pitfalls again and again when trying to learn JavaScript, with the most dangerous ones being these three 👇

- Not being able to go from watching JS tutorials to building JS projects 🛠
- Losing motivation because they get bored 🥱
- Not being able to move forward because the learning curve is too steep 🧗

However, very few courses seem to take these pitfalls seriously enough. So this course is meant for anyone who has experienced any of the above issues when learning JavaScript.

In this article, I'll explain how [the course](https://scrimba.com/learn/learnjavascript?utm_source=dev.to&utm_medium=referral&utm_campaign=learn_javascript_dev_to_article) works so that you can decide whether or not you think it is something for you. 

If you you're sold already, just click on the image below 👇


[<img src="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/69b2tq7lbxthhbs8t3ik.png">](https://scrimba.com/learn/learnjavascript?utm_source=dev.to&utm_medium=referral&utm_campaign=learn_javascript_dev_to_article)



## Why Hyper Interactivity is Important
The course is built around 140+ interactive challenges. This means that there's no point in binge-watching it. The whole purpose of it is to get you to code, to build up your JavaScript muscle memory. And in order to achieve that, you must solve the challenges.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x0fecsxhuavx1quuhxa8.png)

Don't worry though – each challenge is byte-sized and fast to solve, so you will feel like you are progressing quickly.

This level of interactivity would be clunky to achieve using regular videos, as you would need to jump between the video player and the code editor 140+ times throughout the course. Not to mention opening up new starter files for many of the challenges.

To combat this issue, I created this course using Scrimba, which makes the experience much smoother.

When you are inside a scrim, you can instantly jump between watching the teacher's explanation and coding up your own solution.

> Imagine if VS Code and the video format had a child. That's Scrimba. 

You can both watch the tutorial and edit with the code inside the same frame.

People often struggle to understand what a scrim is before they've seen it, so I'd recommend that you watch through [this 1-minute scrim](https://scrimba.com/scrim/c8gp4WfE) to get ahold of it.

## "Just-in-time" Learning
Another thing that separates this course from most other JavaScript courses is that it spreads the theoretical lessons evenly out across the entire course. Just in time when you need to learn it, and not a second before.

> This means that you won't get long and boring lectures about abstract concepts before you start building projects.

Instead, we will dive head-first into building projects. And when we hit a road block, I will introduce you to the piece of theory we need in order to overcome it. This way, you will intuitively understand why you need to learn the theory.

However, don't be fooled to think that we will skip any theory. My course goes through the same important theory as any other good JavaScript course. But instead of squeezing it in all up-front, it is spread out evenly from start to end. Just it time when you need to learn it.

## Learning by Doing
This tight integration between theory and practice means that most of your time will be spend building products. Here are the three projects you will build:

![The projects you will build in the course](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d73d3z96lbut5pw72y6p.png)


### Project 1: Passenger Counter
You'll start out by building a passenger counter app. This might seem like a bit of a contrived example, but counting passengers at the metro was my actually my full-time job for a time when I was 19 years old.

What's important here is that you are building an actual product from day one. You are combining JavaScript with HTML and CSS, so that you can learn JavaScript in the context of a real user interface in the browser.

This makes it a lot more fun than simply seeing your output in the console. While this adds a little bit of complexity, it it well worth it.

### Project 2: Blackjack game
Next, you will build your very first JavaScript game – Blackjack!

This is the first time you will code something that can also entertain you, which I think is important.

Blackjack is one of the most iconic Casino games ever, and this marks your first step into the world of game development.

### Project 2: Chrome Extension
Finally, you will build a Chrome Extension that we are going deploy to your Chrome browser, so that you can use it out in the wild. This is exciting, as you'll really understand the super power you have gotten at this point.

The extension is called "Lead Tracker" and it is a tool for sales representatives. It allows them to browse the web and collect promising leads.

Check out the intro scrim for it to learn it a bit more:


### Practice sections
After each of these project sections, I will stress-test your knowledge with dedicated challenge sections. This will also give you the necessary repetition you need in order to progress to the next project. I have tried to make all the challenges as real-world as possible so that they are fun to solve.

If you struggle to solve these challenges, then I would recommend that you revisit the scrims from the project sections as well. So these sections serve as gateways for progressing with the course.

### You can enroll for free right now
I hope this gave you the background you needed in order to decide whether or not you'd like to try this course out. It's 100% free, and will be so forever. If you are interested, just [click this link](https://scrimba.com/learn/learnjavascript?utm_source=dev.to&utm_medium=referral&utm_campaign=learn_javascript_dev_to_article) and you can get started immediately.

Finally, if you would like to help us spread the course, you can retweet my launch tweet. 

{% twitter 1395359456335106048 %}