Contents

Modern Software Tools, Explained

The concepts behind the tools programmers use every day — how they work, why they are designed the way they are, and what tradeoffs they make.

Part One

Data Structures

The shapes data takes in memory — and what those shapes make fast or slow.

Part Two

Storage Engines

How data survives a crash, scales past memory, and stays consistent under concurrency.

Part Three

Algorithms

Sorting, searching, and compressing — the workhorses underneath every system.

Part Four

Networks and Security

Reliability, trust, and secrecy across an untrusted network.

Part Five

Languages and Theory

The ideas that define what programs are, what they can express, and whether they can run at all.

Part Six

Tools and Systems

The infrastructure programmers live in — version control, interfaces, and distributed consensus.