Skip to main content

ACID Transactions Explained

· 4 min read
Free system design course

"ACID" gets thrown around as a synonym for "a real database," but each letter is a distinct, separately-breakable guarantee — and knowing which one a given failure violates is what actually matters in practice.

Database Sharding Explained

· 4 min read
Free system design course

A single database server has a hard ceiling — one machine's disk, memory, and CPU. Sharding is how you break past it: split the data across many independent databases instead of scaling one bigger and bigger.

REST vs GraphQL: Which API Style Should You Use?

· 3 min read
Free system design course

REST and GraphQL are two different answers to the same question: how should an API expose data to a client? The real decision isn't "which is more modern" — it's whether you're willing to give up free HTTP caching for a query language that fetches exactly what the client asks for.