The Ultimate Rust courses, mapped¶
Level: reference · the map
One line: Nathan Stocks teaches two released Rust video courses and has outlined nine more on single subjects — Bevy, contributing to Rust, Rust for Rustaceans, generics and lifetimes, macros, strings, tips and tricks, threads, WebAssembly — and this page lists every heading in those outlines next to the page here that covers it.
What is released and what is a plan (checked 2026-09-16). Two courses have public companion repositories: Ultimate Rust Crash Course ↗ and Ultimate Rust 2: Intermediate Concepts ↗. The crash course's README says the courses moved from Udemy to Ardan Labs. The other nine outlines below come from the author's list of planned courses. None has a companion repository under github.com/CleanCut ↗, and this page has not confirmed whether any of them was released. The outlines give only headings, and the headings are what the tables below use.
Each row says where the topic lives here. stub marks an outline page with no checked example yet.
Ultimate Bevy¶
Everything here depends on the Bevy version; the Games with Bevy section is written against Bevy 0.19.
| Outline heading | Here |
|---|---|
| Getting started — game engines overview, hello world | What a game engine is stub |
| ECS — entities, components | Entities and components stub · Indices instead of references stub |
| ECS — systems | Systems and queries stub |
| ECS — resources, plugins | Resources and plugins stub |
| Input — keyboard, mouse, gamepad | Keyboard, mouse and gamepad stub |
| Graphics — 2D sprites, 3D meshes | Sprites and meshes stub |
| Audio — music, sound effects | Music and sound effects stub |
| UI — text, a menu | Text and menus stub · An enum as a state machine |
| WebAssembly | Shipping a wasm page stub |
| Game project — design, implementation, deployment | gap |
Ultimate Rust Contributor¶
| Outline heading | Here |
|---|---|
| So you want to be a contributor — Rust organization overview, benefits | The Rust project stub |
| Getting started — hardware, prerequisites, getting the code, submodules, bootstrapping | Building the compiler stub |
| Using your modified code | Using a compiler you built stub · rustup |
| Contribution process — identifying a need, code, tests and docs, the pull request | A first contribution stub |
Ultimate Rust for Rustaceans¶
This outline follows Jon Gjengset's book chapter by chapter, so its map is the book's: Rust for Rustaceans, chapter by chapter. Its headings — foundations, types, designing interfaces, error handling, project structure, testing, macros, async, unsafe, concurrency, FFI, no_std, the ecosystem — are that page's thirteen sections.
Ultimate Rust Generics & Lifetimes¶
| Outline heading | Here |
|---|---|
| Lifetimes | Lifetime annotations · How to learn lifetimes · What a lifetime does at the call site |
| Generic functions — function parameters | What a generic is · When the compiler cannot infer |
| … trait bounds | Where the bound goes |
| … lifetimes in generic functions | Lifetime annotations |
| … trait objects, monomorphization vs virtual dispatch | Static vs dynamic dispatch · Returning a trait |
| Generic data types — structs, enums, builtins | Generic enums · A generic recursive type · Const generics stub |
… impl blocks |
What a generic is (why impl<T> says it twice) · Blanket impls stub |
| … lifetimes in generic data types | Lifetime annotations: on a struct |
Ultimate Rust Macros¶
| Outline heading | Here |
|---|---|
| Why macros? — when to use them, when not to | Why println! is a macro · A function, macro_rules!, or a procedural macro stub |
| … expanding macros | Expanding a macro stub · Printing the HIR |
macro_rules! — patterns |
macro_rules! patterns stub |
| … repetition | Repetition stub |
| … usage | Hygiene stub · Exporting a macro stub |
Proc macros — concept, syntax, the syn crate |
Three kinds of procedural macro · Parsing with syn · Generating with quote |
| Derive macros | Every struct and enum shape · A StateMachine derive · Expanding thiserror |
| Beyond macros | std macros you have not met stub |
Ultimate Rust Strings¶
The Strings section and its map, STRINGS.md, cover this outline almost row for row.
| Outline heading | Here |
|---|---|
| Wait, what? — the string types, owned vs borrowed | Six kinds of string · String vs &str |
String, str |
The anatomy of a String · str is unsized |
OsString, OsStr; CString, CStr |
Six kinds of string · Calling C |
PathBuf, Path |
Path and PathBuf stub |
| String processing — useful crates | The string crates · Internationalization stub |
| … optimizations | When String is too slow stub |
| String-like and string-adjacent types | The third owned form: Box<str>, Rc<str>, Arc<str> · Cow · Meet the char · Meet the byte |
Ultimate Rust Tips & Tricks¶
| Outline heading | Here |
|---|---|
| Advanced patterns | Pattern matching · Binding with @ stub · let else stub |
| Divergent functions | The never type ! |
| Compiler configurations for a fast compile or the best binary | Compile times · Release profiles stub |
| Anonymous variables | The wildcard _ · Drop guards stub |
| How to trigger deref coercion | Coercion · Method resolution |
| std macros you never heard of | std macros you have not met stub |
| Utility crates | Cargo subcommands worth knowing stub · The string crates |
| Attributes | What an attribute is · Conditional compilation stub |
| Type aliases | A type alias is not a new type stub · The Result alias |
Ultimate Rust Threads¶
| Outline heading | Here |
|---|---|
| Foundations — parallelism vs concurrency, memory model | Concurrency or parallelism stub · Send and Sync stub |
| … spawning and joining threads | Spawning a thread |
The hard way — Mutex, RwLock, Arc |
Lock poisoning · RwLock and atomics stub · Sharing across threads: Arc |
| … atomics | Atomic orderings stub · Compare and exchange stub |
The easy way — channels, mpsc vs crossbeam |
Channels · Crossbeam channels stub |
| Just plain cheating — rayon | Rayon stub |
The same topics in six languages are in the Concurrency library ↗, and in Go in the Go library ↗.
Ultimate Rust WebAssembly¶
| Outline heading | Here |
|---|---|
| What is WebAssembly? | What WebAssembly is stub |
| Cross-compiling to WebAssembly | Compiling to wasm32 stub · Targets and triples stub |
| WebAssembly in the browser | Rust in the browser stub |
| WebAssembly backend runtimes | WebAssembly outside the browser stub |
| Deploying a game to WebAssembly | Shipping a wasm page stub |
See also¶
- Rust for Rustaceans, chapter by chapter — the book one of these outlines follows
- Start here — the free courses this library is a companion to
- Books — the reading shelf
- TOPICS.md — every topic above, under its other names
Po polsku¶
Nathan Stocks prowadzi dwa wydane kursy wideo o Ruście (Crash Course i Ultimate Rust 2) i rozpisał plany dziewięciu kolejnych, każdy o jednym temacie: Bevy, wkład w rozwój Rusta, Rust for Rustaceans, generyki i czasy życia, makra, napisy, sztuczki, wątki i WebAssembly. Ta strona zestawia każdy nagłówek z tych planów ze stroną biblioteki, która go omawia. Czy któryś z planowanych kursów się ukazał, nie zostało tu sprawdzone.
Szukaj po polsku: kurs Rusta wideo · Ultimate Rust Crash Course · nathan stocks rust course · ultimate rust 2 intermediate concepts