Rust (2024 edition)
The planned outline of 27 modules. Lessons are written, run and reviewed before they are published.
Planned outline
- Module 1
Getting started: rustup, Cargo and compiler messages
Coming soon - Module 2
Values, types, functions and control flow
Coming soon - Module 3
Ownership, borrowing and slices
Coming soon - Module 4
Structs, enums and pattern matching
Coming soon - Module 5
Collections and text
Coming soon - Module 6
Error handling
Coming soon - Module 7
Packages, modules and Cargo
Coming soon - Module 8
Generics and traits
Coming soon - Module 9
Lifetimes in depth
Coming soon - Module 10
Closures and iterators
Coming soon - Module 11
Trait objects, impl Trait and advanced types
Coming soon - Module 12
Smart pointers and interior mutability
Coming soon - Module 13
Testing, documentation and code quality
Coming soon - Module 14
Rust for C and C++ programmers
Coming soon - Module 16
Async Rust
Coming soon - Module 17
Idiomatic Rust and API design
Coming soon - Module 18
Files, processes, networking and data formats
Coming soon - Module 19
Unsafe Rust
Coming soon - Module 20
FFI with C, C++ and Python
Coming soon - Module 21
Macros
Coming soon - Module 22
Performance, profiling and binary size
Coming soon - Module 23
Web services and databases (third-party crates)
Coming soon - Module 24
WebAssembly and WASI
Coming soon - Module 25
Embedded Rust and no_std
Coming soon - Module 26
Editions, releases and staying current
Coming soon - Module 27
Interview preparation and practice
Coming soon
Official documentation
- doc.rust-lang.org/book (doc.rust-lang.org)
- doc.rust-lang.org/reference (doc.rust-lang.org)
- doc.rust-lang.org/std (doc.rust-lang.org)
- doc.rust-lang.org/edition-guide (doc.rust-lang.org)
More in Programming languages
- Python (coming soon)
- SQL (PostgreSQL, MySQL, SQLite) (coming soon)
- JavaScript (ES2026) (coming soon)
- Java (JDK 25 LTS) (coming soon)
- All Languages tracks
- How we make lessons