Navigating CAP Theorem: An Analogy for Nerds

The number of times someone has mentioned CAP Theorem to me unprompted? I can count them on one finger.

One.

In 25+ years.

Six years ago.

Story time. It was an interview candidate. They brought it up and I nearly knocked my Liquid Death over. We talked about it for twenty minutes. Completely derailed the interview. They got the job. Did I hire them because of CAP Theorem? No. Maybe. Yes.

Meanwhile I've heard "microservices" nine thousand times from people who can't tell me what happens when their network partitions. That's like saying you're a pilot because you've been on a plane...

CAP Theorem.

Here it is.

Distributed systems get to pick two: Consistency, Availability, Partition Tolerance. Not three. Two. Also not five. This isn't a negotiation. You don't get extra credit for wanting it really bad.

Consistency means all nodes see the same data at the same time.

Availability means the system responds no matter what.

Partition Tolerance means it survives when the network decides to have feelings.

But here's the dirty secret. You're already choosing Partition Tolerance. Networks fail. This isn't pessimism, it's infrastructure. So really you're picking between Consistency and Availability. The whole "triangle" framing makes it sound like a buffet. It's not. You're picking a side in a custody battle where the kid is your uptime.

Gaming platforms pick Availability. Your score might be wrong for three seconds. Nobody dies.

Healthcare picks Consistency. You want "eventually accurate" on a medication dosage? No. You want it right. You'll wait for the screen to load.

Most teams? They've implemented eventual consistency without knowing it. They copied an architecture diagram from a Medium post written by someone who's been coding for eleven months and has strong opinions about standing desks. That's not distributed systems design. That's Pinterest for infrastructure.

I've implemented SAGA. I've been paged at 2am because two services disagreed about whether an order existed. One said yes. One said absolutely not. Good times.

If this is new to you, go read about it. If you think your team already understands it, go ask them.

Seriously.

Right now.

I'll wait.

Bring snacks.

It's going to be a long conversation.