Learn Rust from the ground up — the systems language that gives you C-level speed without the footguns and Python-level safety without a garbage collector. This course starts with `rustup`, `cargo`, and your first `Hello, world!`, then builds through the ideas that make Rust distinctive: ownership, borrowing, and the borrow checker. You will master move semantics, the `Copy` and `Clone` traits, and how Rust prevents dangling references at compile time. You will handle errors with `Option`, `Result`, and the `?` operator, and match them exhaustively with patterns and guards. Finally, you will write generic code with traits and lifetimes, organize programs with modules, and use closures and iterators to process data lazily and efficiently. Each lesson pairs transcripts with runnable Cargo examples grounded in the Rust compiler's own error messages. By the end, you will ship a capstone project that combines the course concepts into an end-to-end Rust program you can extend.
What you'll learn
understand Rust's ownership model
handle errors using Option and Result types
write generic code with traits and lifetimes
organize programs with modules
utilize closures and iterators
Course objectives
to master the core concepts of Rust programming
to build a comprehensive project in Rust
to learn how to write safe and efficient code in Rust