
The Cloud Is Just Someone Else’s Computer – Time to Go Local-First!
You know that moment when your internet hiccups and Google Docs freezes like a deer in headlights?
Yeah, me too. That tiny “Trying to connect…” banner is the universe reminding us of a brutal truth.
There is no cloud. It’s just someone else’s computer. And right now, that someone else is holding your data hostage.
But what if we stopped renting our data and actually owned it again?
Enter local-first software – the rebellious architecture that says “My laptop is the source of truth, thank you very much.”
Buckle up. This isn’t just another offline cache. It’s a full client-server role reversal, powered by math wizardry (CRDTs), and it’s quietly about to eat the cloud’s lunch.
1. You Don’t Own Your Cloud Data – You’re Just a Very Polite Tenant
Remember when SaaS companies could yeet your account because you said a naughty word in 2017?
Or when a startup you loved got acquired and shut down overnight, taking your project history with it?
That’s the Faustian bargain we all signed: convenience in exchange for control. The local-first movement looked at that deal and said “lol no”.
Their seven ideals (straight from the 2019 Ink & Switch manifesto) are basically a love letter to users:
- No spinners ✓
- Works on planes ✓
- Real-time collab ✓
- Your data outlives the company ✓
- Actually private ✓
- You can export or nuke it whenever ✓
It’s like the Bill of Rights, but for your todo list.
2. Local-First Isn’t “Better Offline Mode” – It’s an Architectural Coup
Cloud apps:
Server = Master
Your device = peasant with a stale cache
Local-first apps:
Your device = Master
Server = helpful butler that syncs when it feels like it
This flip changes everything. Speed? Instant, because you’re reading/writing locally. Offline? Built-in, not a hack. Privacy? Encrypt on device before the butler even sees it.
3. The Magic Sauce: CRDTs (Math That Prevents Collaboration Meltdowns)
“Cool, but if everyone has their own source of truth, how do we not end up with 17 conflicting versions of the same doc?”
Behold: Conflict-Free Replicated Data Types – the nerdiest superheroes alive.
CRDTs are data structures that let multiple people edit the same thing simultaneously, offline, and then mathematically guarantee everything merges perfectly. No central arbiter required.
Think Git merge conflicts, but the computer just… handles it. Like a responsible adult.
Real quote from researchers:
“Conflicts are not as significant a problem as we feared.”
Translation: humans naturally don’t fight over the exact same pixel/character that often, and when they do, CRDTs sort it out with surgical precision.
> FIG: How Dexie.js Works
4. Bonus: Your Frontend Code Gets Drastically Simpler
In cloud-land you juggle:
- Loading states
- Error states
- Optimistic updates
- Cache invalidation (one of the two hard problems, allegedly)
In local-first land:
// Literally all you need
const tasks = liveQuery(() => db.tasks.toArray());
Boom. Your UI subscribes to the local database. Change comes from user input or background sync → UI updates instantly. No Redux. No TanStack Query ceremony. No tears.
I’ve seen grown React developers cry tears of joy.
5. Yes, There Are Tradeoffs (We’re Adults Here)
- Sync is eventually consistent → not for stock exchanges
- Big binary blobs (4K video editing) still belong in the cloud
- Schema migrations on 10,000 offline devices = spicy
- Tooling is still catching up (but getting really good, really fast)
But for notes, project management, design tools, CRMs, wikis, literally 90% of SaaS? This is the future.
Conclusion: Stop Renting Your Data
The tech is ready. Browsers have gigabytes of fast storage (OPFS), WebAssembly is basically native speed, and CRDT libraries like Automerge, Yjs, and Electric SQL are battle-tested.
Next time you’re designing an app, ask yourself:
“What if my users actually owned their data – and it still felt like magic?”
Because that future isn’t coming.
It’s already here. We’re just waiting for the rest of the industry to move out of the landlord’s basement.
P.S. Yes, this post was written 100% offline in a local-first editor. The irony is delicious.
Now go build something that works on a submarine. Your users will thank you.
Further reading:
So stop waiting for permission. Here’s your starter pack:
- Play with Yjs (the collab king) → https://yjs.dev
- Automerge (pure-CRDT goodness) → https://automerge.org
- RxDB (full local-first DB for the web) → https://rxdb.info
- Electric SQL (Postgres → local-first magic) → https://electric-sql.com
- Live demo you can break right now → https://demo.yjs.dev
// RELATED_ARCHIVES

> Nov 2025 · 8 min read
Orbital Data Centers - AI's Cosmic Power Plug?
Earth's data centers are guzzling power like a bad CI/CD loop—enter orbital ones for unlimited solar juice and zero drama. SpaceX vs. Blue Origin: Who's blasting off first?

> Nov 2025 · 9 min read
Real Profitable HFT Market Making Lives or Dies by Infrastructure – The Brutal Truth
You can have the perfect Avellaneda-Stoikov model on paper. Without insane low-latency infrastructure it’s worthless. Here’s exactly what separates the million-dollar P&L from the academic toy.

> Nov 2025 · 5 min read
Google Just Dropped Antigravity – The IDE That Literally Defies Physics (and My Coffee Addiction)
Google’s new “agent-first” IDE powered by Gemini 3 is here, and it’s so autonomous my code now writes itself while I stare at the ceiling. First impressions from a very confused DevOps guy.

> Nov 2025 · 6 min read
When Cloudflare Sneezed Yesterday, Half the Internet Caught a Cold – The November 18, 2025 Outage
A "routine config change" turned into a global comedy of errors, taking down ChatGPT, X, Spotify and friends. Let's dive into the tech details (and laugh a bit so we don't cry).