Editor's Notes
A practical introduction to JavaScript and an overview of the language, Bianca covers what you need to know to be competent at writing JavaScript.

JavaScript: From Fundamentals to Functional JS, v2

Bianca Gandilfo
Thumbtack
Learn higher-order functions, closures, scope, master key functional methods like map, reduce and filter and promises and ES6+ asynchronous JavaScript.
8 hours, 11 minutes
Editor's Notes
Will’s course emphasizes not only understanding JavaScript, but also communicating your understanding of the language’s most important concepts. Communicating is a necessary skill for becoming a high-performing engineer.

JavaScript: The Hard Parts, v2

Will Sentance
Codesmith
Take your JavaScript to the next level. Gain an understanding of callbacks, higher order functions, closure, asynchronous and object-oriented JavaScript!
6 hours, 41 minutes
Editor's Notes
Kyle’s course builds by reinforcing many of the foundational concepts covered in Will’s course, but goes even deeper. He also covers types and the type coercion that goes on under the hood of JavaScript.

Deep JavaScript Foundations, v3

Kyle Simpson
You Don't Know JS
Dive into JavaScript's core language features: types & coercion, scope & closure, and JavaScript's object oriented system.
10 hours, 32 minutes
Editor's Notes
Modern JavaScript builds on top of the foundations and adds more to the language. Kyle’s JavaScript the Recent Parts course will give you a deeper understanding those newer features added to the JavaScrip

JavaScript: The Recent Parts

Kyle Simpson
You Don't Know JS
Get up to speed with new JavaScript features like tagged template literals, destructuring, iterators, generators, regex improvements and async await.
4 hours, 9 minutes
Editor's Notes
Understanding asynchronous and functional programming deeply will increase your programming abilities drastically. The first course is part 2 of Will’s “Hard Parts” series. With this one, he’s focusing on the new asynchronous features in JavaScript.

JavaScript: The New Hard Parts

Will Sentance
Codesmith
Develop an intuitive understanding of the new features of JavaScript in ES6+: iterators, generators, promises, and async/await!
4 hours, 46 minutes
Editor's Notes
Functional programming is a set of tools such as map/reduce/filter, pure functions, and immutability. These tools are sure to make you a more effective developer through composing pure functions together to write more predictable and bug-free code.

Functional-Light JavaScript, v3

Kyle Simpson
You Don't Know JS
Improve your JavaScript by applying functional programming concepts like function purity, point-free, partial-application, currying, composition, immutability, recursion, list operations like map, reduce & filter...plus even more advanced concepts like monads and transduction!
10 hours, 1 minutes
Editor's Notes
There’s a push with new languages that compile to JavaScript which are born of a functional nature like Elm and PureScript. In this course, we see how far we can take pure JavaScript towards more traditional functional programming.

Hardcore Functional Programming in JavaScript, v2

Brian Lonsdorf
Salesforce
Learn functional programming concepts such as pure functions, currying, composition, functors, and monads, and see functional concepts in action in a real-world web app!
3 hours, 44 minutes
Editor's Notes
When you add lots of dynamic functionality with JavaScript, it’s important to keep your web apps accessible through announcing changes and focusable elements to screen readers and accommodate those with disabilities.

Accessibility in JavaScript Applications

Marcy Sutton
Gatsby
Produce innovative and inclusive JavaScript-powered web apps! Learn to remove barriers and allow people with disabilities to use your modern JavaScript web applications.
4 hours, 6 minutes