× {{alert.msg}} Never ask again
Class time and plan

Live Mentor

Small Group

Hands-On Learning

“Through live sessions with interactive Q&A, learn everything you need to be productive in JavaScript in just 9 hours. ”

Josh David Miller

Josh David Miller is a UX-focused product consultant and serial entrepreneur who helps startups bring ideas to market. Josh has more than a decade of experience building products and their integrated teams, and he is an avid evangelist of and contributor to open source initiatives.

Master JavaScript in 4 Weeks with a Live Instructor

Who is this class for?

This class is for those who have had some exposure to JavaScript, but are looking to master its fundamentals for great good.

No knowledge of any existing frameworks or tools is required, but we recommend that you check out the curriculum and make sure you know at least 50% of what the topics are about, meaning that you feel comfortable in participating in relevant discussions.

Also, whether you can get the most out of the class or not largely depends on if you know what you are interested in learning. Being comfortable with doing research and willing to tackle assignments would help you tremendously make good use of the class as well.

What will you learn?

You will learn everything you need to start building things for the web, including the fundamentals of the language, its capabilities, and how to leverage you new skills to learn any of the many great front-end or back-end JavaScript frameworks.

Codementor 4-Week JavaScript Class: Syllabus

Lesson 1

THU 19 JAN 6:00 PM (GMT-8)
Other times?

JavaScript is (Mostly) Like Other Programming Languages

  • Starting with JS by starting with testing
  • Controlling flow with loops, conditionals, and functions
  • How does variable scoping work?
  • What does it mean to be a "functional language"?

Topics of the class: unit testing, assertions, expectations, if/else statements, variable scope, var/const/let, while, switch/case, for loops, functions, primitives. 

Lesson 2

MON 23 JAN 6:00 PM (GMT-8)

JavaScript is Object-Oriented

  • What the heck is "prototypal inheritance"?
  • The "this" keyword
  • References

Topics of the class: objects, classes, instances, prototypes, the “new” keyword, stamps, mixins, higher-order functions, passing-by-reference. 

Lesson 3

THU 26 JAN 6:00 PM (GMT-8)

Making Web Apps

  • The Document Object Model
  • Using the console & debugging tools
  • User interaction: events

Topics of the class: the document object model (DOM), developer tools/console/inspector, the “debugger” keyword, browser events, listeners, managing HTML elements. 

Lesson 4

MON 30 JAN 6:00 PM (GMT-8)

JavaScript is Better Asynchronous

  • How code can becomes nonlinear
  • Callbacks as a first step
  • Getting sophisticated with promises and observables

Topics of the class: asynchronous flow, callbacks, promises, observables, ticks, timeouts.

Lesson 5

THU 02 FEB 6:00 PM (GMT-8)

JavaScript Doesn't Have to Run in the Browser, Thanks to Node.js

  • What is Node.js?
  • Organizing code with modules and imports
  • Intro to server-side development: the basics of ExpressJS

Topics of the class: Node.js, NPM, ExpressJS, “package.json” files, dependencies, modules, the “require” function, imports, exports, code organization, server-side development, full-stack development, NPM scripts.

Lesson 6

MON 06 FEB 6:00 PM (GMT-8)

Build Tools: Webpack 101

Topics of the class: web pack, loaders, isomorphic/universal JavaScript, build tools, Grunt, Gulp, Babel, Browserify, NPM scripts. 

Lesson 7

THU 09 FEB 6:00 PM (GMT-8)


  • How does using a framework like AngularJS differ from coding with vanilla JavaScript?
  • How does angular 1 differ from Angular 2?

Topics: angular, MVC, services, controllers, views

Lesson 8

MON 13 FEB 6:00 PM (GMT-8)

Choose Your Path

  • How is React different from AngularJS?
  • How do we code with user experience in mind?
  • How should we think about coding in order to become better engineers?
  • What's next for you?

Topics: react, flux, redux, virtual DOM, code organization, MCPs, startups, best practices

Lesson 9

THU 16 FEB 6:00 PM (GMT-8)

Try to Have Good Error Handling

  • What is an exception?
  • Managing exceptions with try/catch/finally

Topics of the class: error objects, exceptions, try/catch/finally, basic debugging, source maps.

You Will Get

9 Hours of Live Classes

The live group lecture is the core of the class. The mentor will teach the curriculum live and students can ask questions directly.

Hands-on Pair Programming

You'll get the chance to code live via hands-on exercises. All students will work on the exercises together and get instant feedback from the instructor via screen-sharing.

Unlimited Lesson Playbacks

Had to miss a class? Fear not. All lessons are recorded and you can review the recordings in the future.

Frequently Asked Questions

How is this different from other courses?

For only $99, you’ll get to learn hands-on programming skills live with a real online mentor. This includes 9 live classes with instant feedback and hands-on exercises. Having live interaction with a mentor makes learning much easier than watching recorded video tutorials.

What is the class structure?

We have 2 live sessions per week for 4 weeks. Each session is 1 hour long, including live lectures, hands-on exercises, and Q&A. You will get to code together with the instructor and other members of the class!

What time are the live classes?

The live classes will be held online at 6PM PST (GMT-8) / 9PM EST (GMT-5) on Mondays and Thursdays starting from Jan 19th. All classes will be recorded. If you'd like to enroll but strongly prefer a different time, please email us.

What do I need to know before the class?

This class is for those who have had some exposure to JavaScript, but are looking to master its fundamentals for great good. No knowledge of any existing frameworks or tools is necessary.

What if I miss a class?

All classes will be recorded and you‘ll have access to the recordings at any time. You can also ask questions in our Slack channel and get help from other members of the community.

What is a Delayed Live Class?

Delayed Live Class is for those who couldn't make it for the live sessions. With Delayed Live Classes, you'll be able to watch recordings uploaded within 24 hours after each session, and have access to our Slack community to ask questions and discuss with your peers and the instructor.

Class Starts Jan 19th

Money-Back Guarantee
If you feel this isn‘t a good fit after the first class, we‘ll give you a full refund.

limited-time only
Reserve Your Seat Now
This is not a beginner class. Not sure if you are ready for the class?

The class will be held on Mons and Thurs, at 6PM PST / 9PM EST, starting on Jan 19th.
The schedule doesn’t work for you?
Check out another class that are held on 11AM PST, staring on Jan 24th!

Questions? We're here to help!

Have questions about this live class or Codementor in general? Our team is here to help!

Class time and plan