Appendix E — Further reading and codebases worth reading
Books (free online unless noted):
- The Rust Programming Language ("the book"): the official introduction.
- Rust for Rustaceans, Jon Gjengset (No Starch, paid): the best intermediate-to-expert book; it complements Parts II and VII.
- Rust Atomics and Locks, Mara Bos (O'Reilly, free online): Ch 61 in depth, by a member of the Rust library team.
- The Rustonomicon: unsafe Rust, layout, variance, and building
Vec(Ch 33, 57–60). - Asynchronous Programming in Rust and the Tokio tutorial: Ch 30–31.
- Zero To Production In Rust, Luca Palmieri (paid): a production web service from scratch, in the style of Ch 47–56.
- The Rust API Guidelines and the Rust Reference.
Codebases to read, in rough order of difficulty:
| Codebase | Read it for | Related chapters |
|---|---|---|
ripgrep (BurntSushi) |
CLI design, fast I/O, workspace structure | 24, 26, 36 |
mini-redis (Tokio team) |
a teaching-quality async server; compare with Ch 63 | 31, 38, 63 |
axum examples directory |
every web-service pattern, small and runnable | 47, 56 |
hyper |
strict HTTP/1 and HTTP/2 parsing; Ch 50's framing behavior | 46, 50 |
rustls |
protocol state machines in types; careful crypto API design | 49, 52, 62 |
std::collections source (Vec, HashMap) |
unsafe done well, with SAFETY comments |
33, 58 |
tokio scheduler and mio |
the reactor and work stealing from Ch 59 | 30, 59 |
youki (OCI runtime) |
Ch 44 with all the hard parts filled in | 39–44 |
sled / redb |
storage engines, crash safety, page caches | 41, 63 |
Rust for Linux (rust/kernel/ in the kernel tree) |
Rust in kernel context, safe wrappers over C | 33, 34; C Part IX |
Where to go next in the series: if you have not done so, work through the OS guide, networking, security, and HTTPS lifecycle guides with this one open next to them. Every lab in those guides that is built in Go can also be built in Rust, and §0.4 lists the ones this guide has already rewritten. Doing the rest yourself is the best way to practise.