Learn Rust · the agentic way

The hard language is the one worth betting on.

Rust gives you C-level speed and memory safety with no garbage collector. As AI agents get stronger, its strict compiler stops being a tax and becomes a moat. This site makes that case, teaches the language on a living skill tree, and is itself built in Rust from the server to the vector database.

01 · Foundations02 · Applied03 · Concurrent & Async04 · Web Full-Stack05 · Systems & Advanced06 · The SourceProve the toolchain works: your first program compiles and greets you back.01 · T0Hello, RustImmutable by default is not a restriction; it is the first safety rail.01 · T1Variables and TypesAlmost everything is an expression: in Rust, even an if has a value.01 · T2Functions & Control FlowOne owner per value: the rule that deletes the garbage collector.01 · T3OwnershipLend a value without giving it away, and let the compiler referee.01 · T4Borrowing & ReferencesWhy Rust has two string types, and when a view beats a copy.01 · T5Slices and StringsModel your domain so illegal states refuse to compile.01 · T4Structs and Enumsmatch makes you handle every case; forgetting one is a compile error.01 · T5Pattern MatchingNo exceptions, no null: failure is data you are forced to look at.01 · T6Errors as ValuesThe standard collections, and what ownership means for what goes in them.01 · T5Vec, HashMap & FriendsWrite it once for every type, and pay nothing at runtime.01 · T5GenericsShared behavior without inheritance: the interface everything else builds on.01 · T6TraitsName how long references live: the borrow checker's final boss.01 · T6Lifetimescargo, clippy, rustfmt, rustdoc: the tooling other languages wish they shipped with.02 · T1Cargo & the ToolchainCarve a codebase into pieces with visibility the compiler enforces.02 · T5Modules & WorkspacesTests live next to the code, run with one command, and double as documentation.02 · T7TestingChains of map and filter that compile down to the loop you would have written by hand.02 · T7Closures and IteratorsWhen ownership needs to bend: heap allocation, shared owners, interior mutability.02 · T7Box, Rc, RefCellShip a real command-line tool: args, files, errors, and a release binary.02 · T8Build a CLISpawn real OS threads and let ownership stop the data races before they exist.03 · T8ThreadsDo not communicate by sharing memory; share memory by communicating.03 · T9ChannelsShared mutable state, made honest: the lock is part of the type.03 · T9Arc and MutexTwo invisible traits decide what may cross a thread boundary.03 · T10Send and SyncConcurrency without threads: futures that do nothing until polled.03 · T8async / awaitThe async runtime: tasks, timers, IO, and what spawn really requires.03 · T11TokioOne derive turns your types into JSON and back, with errors caught at the boundary.04 · T7SerdeHTTP handlers are plain async functions; extractors are just types.04 · T12AxumSQL checked against a live schema at compile time: a typo'd column is a build error.04 · T12SQLx and PostgresFine-grained reactive UI in Rust, rendered on the server, hydrated in wasm.04 · T13LeptosOne annotated function, callable from the browser, type-checked end to end.04 · T14Server FunctionsDocker, Fly, and a CI gate: git push becomes the deploy button.04 · T15Ship ItThe escape hatch with a contract: what unsafe permits, and what it never excuses.05 · T8Unsafe RustCall C and be called by C: Rust at the boundary where the guarantees end.05 · T9FFICode that writes code, pattern-matched at compile time.05 · T6macro_rules!The machinery behind derive: parse a syntax tree, emit Rust.05 · T7Procedural MacrosMeasure first: flamegraphs, benchmarks, and where zero-cost is literal.05 · T8Performance & ProfilingCompile Rust for the browser and meet the other half of this very site.05 · T7WebAssemblyRead the main.rs that served you this page: router, SSR shell, context injection.06 · T16The ServerThe completion counter you clicked, traced from form post to Postgres row.06 · T17The Data LayerVoyage embeddings, Qdrant, Claude: the tutor's entire pipeline, in Rust.06 · T17The RAG Tutorbuild.rs as quality culture: rendered markdown, the vocabulary gates, graph validation, verified examples.06 · T18The Build Gauntlet

41 concepts · 5 live · 6 tracks · the rest in the forge

completions logged
live from Postgres, no JavaScript wrote it
41concepts mappedone prerequisite graph, honestly ordered
5lessons liverunnable in your browser, no install
compiler errors conqueredrepairs on the Anvil, by everyone, ever
Ask anything

The tutor is grounded, not guessing

one of six standing domains

worldthought · ai-firehose · aigamma · spokenhistory · and this one, the Rust tower. Read the source; the commit history is part of the lesson.