We've made HUGE updates to the Node course

Learn more


How This Course Will Work

JavaScript Course


JavaScript is the future of the web. More and more of the logic is making its way to the client side in order to facilitate lightning-fast user experiences. JavaScript is even moving to the server side with Node.js. That’s why in this course we’ll be diving deep into it to make sure you come out with a good understanding of how it works.

You’ve already completed the Foundations course, right? Good, because now we’ll be moving at warp speed into new frontiers. This section will cover a lot of ground and your brain may melt down a few times, but don’t worry, that’s just a flesh wound. Patch ‘er up and keep going! When in doubt, build something.

The path

How is this course set up? It depends a bit on the path you have selected:

Ruby Track

It starts with a deeper look at the basics, just like the Ruby Programming course did with Ruby. You don’t need to have completed the Ruby Programming course or the Ruby on Rails course to understand these basics.

JavaScript Track

It starts with a deep look at JavaScript code organization and basic computer science concepts, finishing with a primer on creating and using a test suite for your project.

We won’t be focusing deeply on the really basic coding items, so it will move quickly. You should, however, already have completed the Foundations course – specifically, the JavaScript Basics section – before starting this course.

The last thing you’ll do is a project which integrates everything you’ve learned so far in all the courses of this curriculum. This is the kind of project that you’ll consider including in your portfolio as an example to demonstrate your web-development skills to prospective employers.


There is a lot to cover, but this course has been broken up into bite-sized lessons and their accompanying projects. These projects will give you a chance to apply what you have learned and to show what you are capable of. After a few of them, you’ll really start getting the hang of things.

In each lesson

  1. We will introduce the topic briefly and provide you with a list of things you should pay attention to (“Points to Ponder”).
  2. You will be asked to do readings, watch videos, do online courses or otherwise consume content to initially learn the material.
  3. Every few lessons you will be asked to build a larger project.
  4. Finally, we will include supplemental resources and other potentially useful tidbits at the end of each lesson.

Enough talk - get learning!

Support us!

The Odin Project is funded by the community. Join us in empowering learners around the globe by supporting The Odin Project!