You Don't Know JS
All Teachers / Kyle Simpson

Kyle Simpson
You Don't Know JS
Kyle Simpson is a web-oriented software engineer, widely acclaimed for his “You Don’t Know JS” book series and nearly 1M hours viewed of his online courses. Kyle’s superpower is asking better questions and deeply believes in maximally using the minimally necessary tools for any task. As a “human-centric technologist”, he’s passionate about bringing humans and technology together, evolving engineering organizations toward solving the right problems, in simpler ways. Kyle will always fight for the people behind the pixels.
Kyle Simpson's Courses
Practical Problem Solving with Algorithms
Put algorithms and computer science techniques into practice! Think through challenges and apply techniques like recursion, traversals, acyclic paths, memoization

drag handle
Exploring Service Workers
You Don't Know JS
Service Workers enable websites to have new PWA capabilities like smart offline caching, background sync, and push notifications!

drag handle
Digging Into Node.js
You Don't Know JS
Learn the fundamental concepts of Node.js programming: CLI programming, file system access, asynchrony, HTTP servers & routing, and database persistence.

drag handle
Getting Started with JavaScript, v2
You Don't Know JS
Get a tour of the building blocks of programming like variables, loops, functions and operations. Then learn the three main pillars of JavaScript.

drag handle
Functional-Light JavaScript, v3
You Don't Know JS
Improve your JavaScript by applying functional programming concepts like function purity, point-free, partial-application, currying, plus even more advanced concepts.

drag handle
JavaScript: The Recent Parts
You Don't Know JS
Get up to speed with new object destructuring JavaScript features like tagged template literals, destructuring, iterators, generators, and async-await. Learn more!

drag handle
Deep JavaScript Foundations, v3
You Don't Know JS
Dive into JavaScript's core language features; types & coercion, scope & closure, and JavaScript's object-oriented system.

drag handle
Rethinking Asynchronous JavaScript
You Don't Know JS
Effective asynchronous JavaScript means knowing various different patterns and weaving them together to write readable and understandable code.

drag handle
What They're Saying
Amazing course. Kyle is an extremely knowledgeable, and engaging, speaker. The way he walks through some of the underlying algorithms so that the viewer can understand them is great. I'm getting a ton of information from every video that I watch.
Anthony Glazebrook
Until I had watched this course, I was writing JavaScript in a way it was not meant to be written. I was essentially trying to implement my understanding of concepts gained from other languages (python etc...) into JavaScript. And that's a situation for disaster. Through this course, I've learned to embrace JavaScript for what it truly is. I'm thankful for this course to exist and I hope more and more people get to experience the true potential of JavaScript. 10/10 highly recommended.

Yuganshu Mohan
I know of no other resource that goes this deep into fundamentals of JS, this course really is a thorough deep dive into internals of JS which I would have never stumbled by myself.
Gurpreet Singh
Great course on JavaScript foundations, as the name says it's really deep. I highly recommend you should go through the entire lectures whatever experience you may have on the language. If you wanted to take one lectures on JavaScript, this is the one. In many instances, you will get to understand why the JavaScript works the way it was and explained this straight from the spec. Many aha moments and enjoyed taking the course.
Manivannan t
It's been such an eye opener getting to understand the foundational JavaScript concepts with the 3 pillars of JS: Types and Coersion, Scope and Closure, 'this' keyword & the Prototype system with the 'class' keyword. Excited to apply the concepts to my own projects.😁

Munga
MungaSoftwiz
Great intro to Node.js by Kyle Simpson. I appreciate the points about the inception of Node.js and the rationale behind choosing JavaScript as an main language. It's important to understand which types of tasks are well-suited for Node.js.

D
d_vallbs
Our courses are taught by experts from these top companies (and more)
Microsoft
Netflix
Stripe
Spotify