ColorCode

VideosCoursesPodcastMerchLogin

JavaScript
MasterClass

Available Soon

1. Introduction

  • Welcome
  • Why JavaScript?
  • How to succeed
  • The power of fundamentals
  • How code works
  • How to write JavaScript
  • Let's set you up
  • How to debug

2. Fundamentals

Variables

  • What are Variables?
  • Numbers
  • Strings
  • Booleans
  • Objects
  • Arrays
  • Undefined and Null
  • Let, Const, Var
  • Primitives vs. Objects

Operators

  • What are Operators?
  • Arithmetic Operators
  • Assignment Operators
  • Comparison Operators
  • Logical Operators
  • Ternary Operators
  • String Operators
  • Nullish coalescing operator
  • Operational chaining operator
  • Spread Operator
  • Delete Operator
  • Typeof Operator
  • Instanceof Operator

Conditionals

  • What are Conditionals?
  • If...Else Statements
  • Switch Statements
  • Truthy and Falsy
  • Short Circuit Evaluation

Functions

  • What are Functions?
  • Function Syntax
  • Input (Parameters)
  • Output (Return)
  • Existing Functions
  • Different Types of Functions
  • Closures
  • Recursion
  • Functions Wrap up

Loops & Iterators

  • What are Loops?
  • For Loop
  • While Loop
  • Infinite Loops
  • For...of
  • forEach
  • Array Iterators (map, filter, sort, reduce)
  • For...in
  • Looping through Objects

Inheritance & Composition

  • What is Inheritance
  • Prototypal Inheritance
  • Different Ways to Implement Inheritance
  • Object.create
  • Factory Functions
  • Constructor Functions
  • Classes

Scope

  • What is Scope?
  • Lexical Scope & Closures
  • Hoisting
  • The THIS keyword
  • Call, Apply, Bind
  • Avoiding Scope Pitfalls

Asynchronous JavaScript

  • What is Async?
  • Callbacks
  • Callback Hell 😈
  • Promises
  • Async / Await
  • Promise.all
  • Fetch API
  • Error handling
  • Abort Controller
  • Existing Async Functions

The Browser

  • What Are Browsers?
  • The DOM
  • Events & Listeners
  • Forms
  • Cookies
  • Local Storage

Event Loop

  • Call Stack
  • Task Queue
  • Microtask Queue
  • Event Loop

JS Modules

  • What are Modules?
  • Exporting & Importing
  • Modules in Practice
  • Modules Wrap Up

Functional Programming

  • What is Functional Programming?
  • Pure Functions
  • Immutability
  • Higher-Order Functions
  • Currying
  • Function Composition

Clean Code

  • What is Clean Code?
  • Code Readability
  • Naming Things
  • Imperative vs Declarative
  • Avoiding Side Effects
  • Comments & Documentation

Security

  • Intro to JS Security
  • Common Vulnerabilities (XSS, CSRF)
  • Safe Data Handling
  • Validating User Input
  • Best Practices for Web Security

Performance

  • Why Performance Matters
  • Measuring Performance
  • Optimizing Loops and DOM Access
  • Memory Leaks and Garbage Collection
  • Debouncing & Throttling

Testing

  • Why Test Code?
  • Types of Tests
  • Writing a Simple Test
  • Testing Tools & Frameworks
  • Test Coverage & Strategy

3. Let's Build a Web App

In this module, we'll build --WeatherOrNot—- a real, interactive weather app that uses everything you've learned in the JavaScript MasterClass. You'll work with real-time APIs, DOM updates, user input, cookies, and localStorage to personalize the experience. It's your chance to apply concepts like events, state, and data fetching in a practical, fun project you can actually use.

4. Expert Interviews

  • - Functional Programming, with Richard Feldman
  • - The Power of Fundamentals, with Jason Decker
  • - You don't know JS, with Kyle Simpson
  • - How to Thrive as a Programmer, with Charlie Fulnecky
  • And more...