⚠ Rust has a steep learning curve. The borrow checker rejects code that is correct in every other language. This is not a bug — it is catching real memory errors. Every rejection is a lesson. Budget more time than you think you need for the Foundations track.
Track 1
Foundations
Ownership, types, and the borrow checker
- Variables, types, and control flow
- Ownership and move semantics
- Borrowing and references
- Structs, enums, and match
- Option<T> and Result<T,E>
Track 2
Practitioner
Traits, generics, and real programs
- Traits and trait bounds
- Generics and impl Trait
- Closures and iterators
- Error handling and the ? operator
- Collections: Vec, HashMap, String
Track 3
Advanced
Lifetimes, concurrency, and async
- Lifetimes and lifetime annotations
- Smart pointers: Box, Rc, Arc
- Threads, Mutex, and channels
- Async Rust and Tokio basics
- unsafe and FFI