Shipping & Running
$defineserverless--plain-english
TLDRRent a computer for a moment, not a month.
You do not rent the whole kitchen for a weekend demo.
Serverless means you ship a function — one job — and a host runs it when someone asks. A request arrives. A runtime wakes. Your code runs. It goes quiet. The bill is for the minutes it was awake, not for a box that hummed all night with nobody in the room.
There is still a server. The useful part is you do not name the box, patch it on Saturday, or guess how big it should be before the hallway fills up.
Vercel, Cloudflare, Convex — this is the default lobby after you deploy a create-hackhaton-space-stack app. You did not SSH into anything. You pushed, and a pool of machines borrowed a slice of themselves for your route.
The yawn
If nobody has hit that function in a while, the first request waits while the kitchen lights flicker on. That is a cold start. Fine for a webhook that fires when Polar says "paid." Awkward for a voice agent that cannot eat a one-second pause. Workers and edge are dialects of the same rental: smaller rooms, closer to the door, still not a box you pet.
Always-on is a different product. A long process, a fat database driver, a socket that must stay open — those want a room that does not vanish between guests. Serverless wants a guest, a dish, a check.
Spikes are why people pick it at a hackathon. Forty judges refresh at once. The host runs forty copies and throws them away. You did not upgrade a plan during the pitch. The CLI already pointed you at that lobby when you picked a host that deploys functions instead of a box.
What this unlocks
Once you see the rental, "we need a server" stops meaning "we need a box we babysit." It means "we need something that runs when asked." Pay for the dish. Leave the building to the landlord.
A weekend app that sleeps between clicks should not pay rent on an empty room.