Farboard's online play runs for free on Cloudflare, using ideas that are decades old. Cloudflare's scale made that possible, but understanding it was still the hurdle. AI got me over it: it found the option, built it with me, and explained it until I understood it.
The design isn't new: one small server per game, holding both players' connections. Cloudflare made it free to run. AI made it possible for me to adopt it.
Cloudflare already runs a global network for its CDN and DDoS protection. Workers run on capacity it had built anyway, so an extra small program costs it very little. Three design choices keep that cost tiny:
Workers run in V8 isolates, the same sandbox a browser gives each tab. One starts in milliseconds and uses little memory, so a single machine can hold thousands of them. There's no virtual machine per customer to keep running.
A game's Room sleeps between moves while its WebSockets stay open at the edge. A chess game spends almost all of its time waiting for someone to think, so it costs almost nothing.
At its daily limit, the free plan pauses instead of charging. For Farboard, 100 games a day uses about 2% of the allowance (see the daily budget).
Developers who start building on Cloudflare for free may later bring it paid work that would otherwise go to AWS. A generous free tier is how a smaller cloud competes with a bigger one.
None of the ideas behind a Durable Object are new. What Cloudflare did was package them together and make them cheap to run.
AWS built serverless by combining separate services, each billed on its own. Cloudflare built a smaller set of building blocks around one cheap unit, the isolate, and gave state a home right next to it. On AWS the same relay needs API Gateway, Lambda, DynamoDB and IAM (compare the designs).
A free, well-packaged platform still costs something: the time to learn it. Durable Objects are a different mental model from a server you run yourself. To trust one with real players, I'd have had to read the docs, build a prototype, test how it behaves and design around what I found.
I've run VPS servers for 20 years. For a side project, that learning cost would have been bigger than anything the free tier could save, so the sensible choice was the server I already knew. The economics of the platform had changed, but the economics of learning it hadn't.
I didn't know this design existed until an AI coding assistant suggested it, together with a VPS relay, AWS serverless and WebRTC peer-to-peer. Twenty years of good habits meant I'd never gone looking. You can't weigh an option you don't know about.
The AI also said what each option would cost to run and where it would struggle. For example, WebRTC can't always connect phones directly on mobile and office networks, so it still needs a relay. Design alternatives compares all four.
The AI built a working version quickly. That made trying the unfamiliar design cheap: I compared real, working code instead of guessing.
Speed brings a risk. Cognitive debt, also called comprehension debt, is what builds up when code ships that nobody understands. Like technical debt, you pay it back later, usually during an outage, when no one can say how the system works (Margaret-Anne Storey, Addy Osmani).
So the other half of the work was paying that debt down as it was taken on:
What AI did: it lowered the cost of exploring, building and learning. What it didn't do: make the choice. I chose Cloudflare after comparing working versions and understanding them.
The Jevons paradox: when something gets cheaper, people use more of it. Applied to AI, ideas that weren't worth building before now clear the bar (Jim Montgomery). Here, it wasn't a feature that became worth building. It was a whole architecture that became worth trying.
The classic advice is to stick with proven tools, and some argue AI makes that more important, because you can't check an AI on technology you don't know (Aaron Brethorst; compare Simon Willison). My answer is in between: new technology is fine if the AI teaches it to you well enough to check.
Small apps built for friends and communities, not for scale (Maggie Appleton). Free tiers are what keep them running for years, and Farboard's Deploy to Cloudflare button lets anyone run their own copy at no cost.
Cloudflare builds its Agents SDK on Durable Objects: one actor per agent, using no compute while it's asleep. It's the same property that makes one Room per chess game free, which suggests the design will be supported for a long time.
relay/src/room.js), and nothing else. The VPS design is still a
working way out.
Farboard's figures are from Architecture and
relay/README.md. Outside articles were found by web search and are summarised from it.