Core Coursework
(take these in order)
- +
Editor's Notes
Lead developers are who get asked the tough questions. Lydia’s course does precisely this. You’ll answer 30 tough questions across topics ranging from CSS & JS to networking & security. - ⠇
Advanced Web Development Quiz
Challenge your knowledge with a quiz on the advanced parts of web development! Answer 30 questions from JavaScript and CSS to performance, web security, and HTTP protocols. - +
Editor's Notes
Understanding asynchronous and functional programming will increase your programming abilities drastically. Will’s style of building an in-depth mental model helps you understand these complex topics. - ⠇
The Hard Parts of Asynchronous JavaScript
Develop an intuitive understanding of the new features of JavaScript in ES6+: iterators, generators, promises, and async/await! - +
Editor's Notes
Your core understanding of JavaScript is at a maximum. Now it’s time to learn how to lead a team of engineers by managing large-scale applications, migrating codebases, and enforcing a high level of code quality. - ⠇
Enterprise UI Development: Testing & Code Quality
Ideal for lead UI developers: learn unit testing, continuous integration, accessibility testing, mocking, and coding standards enforcement. Guide your team toward coding scalability! - +
Editor's Notes
Make sure your code is fast by diving into how the JavaScript engines and web browsers parse your code. - ⠇
JavaScript Performance
Write more efficient JavaScript, optimize rendering performance, load assets faster with a CDN, split loading resources with Webpack, and more! - +
Editor's Notes
Performance can also be obtained by understanding the browser’s inner workings. Will builds a robust mental model for UI composition and virtual DOM rendering so you can understand and recreate the reactivity of frameworks in the most performant way. - ⠇
The Hard Parts of UI Development
Develop an under-the-hood knowledge of UI development by learning techniques such as data binding, UI composition, templating, virtual DOM and its reconciliation, and hooks, all from scratch! Master UI frameworks such as React, Angular, Vue, and Svelte by seeing exactly what problems they solve. - +
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. Learn more about how to apply functional programming principles to JavaScript. - ⠇
Functional-Light JavaScript, v3
Improve your JavaScript by applying functional programming concepts like function purity, point-free, partial-application, currying, plus even more advanced concepts. - +
Editor's Notes
State management is one of the most challenging problems in software engineering. State Machines and State Charts can be fantastic solutions across various environments. - ⠇
State Machines in JavaScript with XState, v2
Learn the fundamentals of state machines and statecharts. You'll build state machines without any libraries in pure JavaScript, then use XState to..click to read more. - +
Editor's Notes
When a developer (including yourself) messes up git, which inevitably happens, someone on the team needs to know how to get you out of a pinch! Learn git deeply and never lose your work again. - ⠇
Git In-depth
A deep dive into git, this course is for developers who use git and GitHub every day and want to learn the inner workings and use advanced techniques. - +
Editor's Notes
Web Assembly enables web browsers to become the universal compile target to run modules from any language and ship complex programs. - ⠇
Web Assembly (Wasm)
Learn foundational, low-level programming such as binary, hexadecimal, array buffers, memory management, and unsigned integers. - +
Editor's Notes
You might write high-performance code, but how high-performance is your workflow? Learning to set up projects quickly and creating consistency across development machines is a valuable skill for daily productivity. - ⠇
Developer Productivity
Build a pro dev workflow to increase your developer productivity across multiple machines, projects, and technologies. Learn more! - +
Editor's Notes
Now that you’ve conquered our Expert Learning Path, check out the optional courses below or explore other learning paths to expand your knowledge.
Elective Coursework
- ⠇
Complete Intro to Real-Time
Learn to build apps where the client can push messages to the server and talk in real-time. Start today! - ⠇
Vanilla JS: You Might Not Need a Framework
Explore Vanilla JavaScript, understand core concepts, work with the DOM API, handle events, and build a web application from scratch. Delve into advanced topics like SPA routing, web components, and reactive programming. - ⠇
Exploring Service Workers
Service Workers enable websites to have new PWA capabilities like smart offline caching, background sync, and push notifications! - ⠇
Enterprise Architecture Patterns
Build non-trivial enterprise-level web applications through first-principles thinking applied to programming in JavaScript and TypeScript. - ⠇
JavaScript and TypeScript Monorepos
Monorepos have taken the JavaScript world by storm, unlocking powerful new patterns around composition, encapsulation, and ease of maintenance. - ⠇
A Tour of Web Capabilities
Explore what is possible with new Web APIs! Browsers can do so much now, including speech recognition, geolocation, OS integration, face detection, augmented reality, and reading from sensors, external hardware, and devices! - ⠇
Hardcore Functional Programming in JavaScript, v2
Learn functional programming concepts such as pure functions, currying, composition, functors, monads, and see functional concepts in action! - ⠇
Building Your Own Programming Language
Learn language building techniques: Lexing, Parsing, Tokenization, Traversing Abstract Syntax Trees, and Transpiling to JavaScript and make your own language now!