Rust.
Memory-safe systems software, cloud infrastructure tooling, and developer tools — without a garbage collector.
Beginner
Start here — no prior experience needed
Setting Up Rust
Install Rust with rustup, configure your editor, and write your first program.
Variables in Rust
Understand let, mut, shadowing, constants, and type inference in Rust.
Data Types in Rust
Explore Rust's scalar types, compound types (tuples and arrays), and type aliases.
Operators in Rust
Learn arithmetic, bitwise, comparison, and logical operators in Rust — with no implicit type coercion.
Control Flow in Rust
Master if/else expressions, loop, while, for, ranges, and breaking with values in Rust.
Functions in Rust
Learn fn syntax, return values, closures, and higher-order functions in Rust.
Ownership in Rust
Understand Rust's ownership model — the rules, move semantics, the Copy trait, and Drop.
Borrowing and References
Learn how Rust's borrow checker works — shared references, mutable references, and the rules that prevent data races.
Structs in Rust
Define structs, implement methods and associated functions, use #[derive], and understand the different struct forms.
Enums in Rust
Learn Rust enums with data, Option<T>, Result<T,E>, and pattern matching.
Pattern Matching in Rust
Master match expressions, if let, while let, destructuring, and match guards in Rust.
Collections in Rust
Work with Vec<T>, HashMap<K,V>, HashSet, BTreeMap, and iterator adapters in Rust.
Testing in Rust
Write unit tests, integration tests, and doc tests in Rust using cargo test.
File I/O in Rust
Read and write files, work with paths, handle directories, and use buffered I/O in Rust.
Introduction to Rust
Learn what Rust is, why it matters, and where it excels — memory safety without a garbage collector.
Intermediate
For developers with core concepts down
Lifetimes in Rust
Understand lifetime annotations, the 'static lifetime, lifetime elision, and lifetimes in structs.
Traits in Rust
Define traits, implement them on types, use trait bounds, default methods, and understand object safety.
Generics in Rust
Write generic functions and structs, use where clauses, and understand monomorphization.
Error Handling in Rust
Use Result<T,E>, the ? operator, custom error types, thiserror, and anyhow for robust error handling.
Iterators in Rust
Understand the Iterator trait, lazy evaluation, adapter chaining, and how to write custom iterators.
Closures in Rust
Deep dive into Fn, FnMut, FnOnce, environment capture, and move closures in Rust.
Concurrency in Rust
Write safe concurrent code with threads, Arc<Mutex<T>>, channels (mpsc), Send/Sync traits, and Rayon.
Smart Pointers in Rust
Understand Box<T>, Rc<T>, Arc<T>, RefCell<T>, and interior mutability patterns in Rust.
Modules in Rust
Organize code with mod, pub, use, crate structure, and Cargo workspaces.
Advanced
Production-grade patterns for experienced engineers
Async/Await in Rust
Learn async/await, the Future trait, Tokio runtime, async streams, and the select! macro.
Memory Management in Rust
Understand Box<T>, Rc<T>, RefCell<T>, Arc<T>, memory layout, and the basics of unsafe Rust.
Macros in Rust
Write declarative macros with macro_rules!, understand procedural macros, and use derive macros.
Design Patterns in Rust
Implement the builder pattern, newtype pattern, typestate pattern, and RAII in idiomatic Rust.
Performance in Rust
Profiling, benchmarking, zero-cost abstractions, SIMD, memory layout, and optimization techniques in Rust.
Rust Interview Prep
Top 30 Rust interview questions and answers covering ownership, traits, concurrency, async, and system design.