The Impatient Programmer's Guide to Async Rust cover image

Book

The Impatient Programmer's Guide to Async Rust

From First Principles to Production

Most async Rust tutorials go one of two ways. Some explain how futures work but never get you to ship anything; the Tokio ones get you shipping but never tell you what actually runs your code. This series closes that gap by having you build the runtime yourself, piece by piece: the executor, the reactor, channels, cancellation, until nothing about it is hidden. Then you take those exact pieces into Tokio and write real async services, recognizing every part because you wrote it first.


Chapters

Chapter 1 feature image

Chapter 1

Who Runs Your Rust Future? Hands-On Intro to Async Rust

Build the smallest Rust async runner and see how futures, polling, waking, and runtimes work together.

Chapter 2 feature image

Chapter 2

Reasoning About Async Rust with State Machines

Build the state machine behind an async fn, then use that model to reason about common async bugs and compiler errors.

+

Roadmap

Where the series goes next

Next, the rest of the engine, Pin, an executor, real I/O, timers, channels, and cancellation, each paired with its Tokio version (spawn, join, select). Then you use it for real, building web services and handling the rough edges async hits in production.