Rust and Systems Programming Basics Roadmap
Learn Rust and the systems concepts behind it: memory, ownership, concurrency and low-level I/O.
10 milestones · ~175 hours total
- 1
How computers run programs
~14hStack vs heap, pointers, memory layout, processes and system calls. A little C reading helps.
Practice this → - 2
Rust basics
~18hCargo, variables, types, control flow, structs, enums, pattern matching and modules.
Practice this → - 3
Ownership, borrowing and lifetimes
~25hMove semantics, references, the borrow checker and reading compiler errors calmly.
Practice this → - 4
Error handling and collections
~16hResult and Option, the ? operator, Vec, HashMap, iterators and closures.
Practice this → - 5
Traits and generics
~14hDefining behaviour, trait bounds, trait objects vs generics and common standard traits.
Practice this → - 6
Smart pointers and memory
~12hBox, Rc, Arc, RefCell, Drop and why the compiler rejects certain designs.
Practice this → - 7
Concurrency
~20hThreads, channels, Mutex, Send and Sync, then async/await with Tokio at an introductory level.
Practice this → - 8
Systems-level I/O and networking
~18hFiles, sockets and processes; write a small TCP echo server and a command-line tool with clap.
Practice this → - 9
Testing, tooling and unsafe
~8hcargo test, clippy, rustfmt, documentation, and what unsafe means and when it is justified.
Practice this → - 10
Build a systems project
~30hExamples: a grep clone, a key-value store or a simple HTTP server, with tests and a written design note.
Practice this →