Systems and low-level
Learn memory-safe systems programming with ownership and explicit error handling.
fn main() {
let message = "Hello from Rust";
println!("{message}");
}COURSE CURRICULUM
Finish one section at a time or jump directly to a concept you need.
Learn how rust projects, cargo, and compilation works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how bindings, expressions, and pattern syntax works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how mutability, shadowing, and ownership moves works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how scalar types, structs, enums, and option works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how operators, traits, and conversions works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how match, if let, and exhaustive decisions works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how loops, iterators, and closures works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how functions, generics, and trait bounds works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how vectors, maps, slices, and borrowing works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how strings, utf-8, and owned text works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how result, error propagation, and recovery works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how crates, modules, features, and visibility works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how ownership, borrowing, and explicit lifetimes works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how files, threads, async, and send boundaries works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.
Learn how tests, documentation tests, and clippy works in Rust, why the underlying model matters, and how to apply it in a small program without hiding important trade-offs.