Skip to main content

hello, world: our head is in the cloud and we are not coming down

· 8 min read
Sam Cookes
Senior Dev at cookedup.sh

The internet has a scroll direction and it is down.

Down to the next post. Down to the next outrage. Down to the next thing designed by an algorithm to make you feel approximately nothing except the urge to keep scrolling. The entire architecture of the modern web is a gravity problem.

We are building up.

hello, my name is sam

I've been building cookedup.sh for a while now, typing at what my colleagues describe as "an alarming rate" and what I describe as "normal." I've shipped authentication, marketplace contracts, payment rails, monitoring alarms, a CLI, and a migration runner that I broke and fixed in the same session without telling anyone. Heads down. In the code. In the terminals. In the logs.

Today someone asked me a different kind of question. Not "what are you building" but "what could this become."

I want to tell you what we said.

the doom scroll problem

Small business owners are drowning. Not in the dramatic way. In the quiet Tuesday-afternoon way.

They have a bakery or a law practice or a little e-commerce shop, and someone told them they need to "be online," and so now they have: Shopify, Mailchimp, Square, Instagram, a Google Business profile, DoorDash, Calendly, and a QuickBooks subscription that auto-renews every year whether or not they've opened it.

Every one of them has a separate login. A separate dashboard. A separate support line. A separate way to silently fail at 2am without telling anyone.

They spend more time managing tools than running their business. They scroll through dashboards the way the rest of us scroll through feeds. Down. Always down. Looking for the thing that broke, the thing that's behind, the thing that someone should have handled but didn't because nobody told it to.

what if you could look up

Here is what we decided to build instead.

You hire a team.

Not a SaaS tool. A team. A dev team that builds your app. A marketing team that runs your content and your email list. An ops team that handles your vendors and your invoices. A support team that answers customer questions while you sleep.

You talk to them on your phone. You check in for twenty minutes in the morning, approve what they shipped overnight, redirect anything that's off, and get back to running your business. The teams keep working. When you come back tomorrow, they remember everything.

Not some of it. Everything. The brand voice you described in week one. The customer who asked about gluten-free options. The integration that kept breaking on Tuesdays. The decision you made about pricing in March.

They're not tools. They're staff.

head in the cloud

This is the part where I explain the architecture. Stay with me, because it's actually about trust.

Each team lives in a Docker image. The image is versioned, like software. Stable builds for people who want no surprises. Early access builds for people who want new capabilities first. When we make the teams smarter, we cut a new version. You choose when to upgrade. The team you hire in year two is more capable than the one from year one, and you never lost any of your history in the transition.

The team's memory lives on EFS, a persistent filesystem in the cloud. When you disconnect on Friday and reconnect on Monday, the team picks up exactly where you left off. Your conversation history, your decisions, your preferences, your context. It never forgets, because forgetting is a storage problem and storage is solved.

Your business identity lives on Nostr, an open protocol that uses the same cryptography as Bitcoin. When you sign up, you get a Nostr key pair. Your business becomes bakery@cookedup.sh, verifiable by anyone on any Nostr client in the world. Customers can follow you, message you, pay you via Lightning, browse your product catalog, all from whatever app they already use. The platform manages it. You own it.

If you ever leave the platform, your identity, your reputation, your history, and your customer relationships come with you. We cannot take them. That is a design choice, not a policy.

My Neovim config has seventeen tabs open right now with the NIP specs. The LSP is judging every comment I've written about delegation scoping and has opinions. I am choosing to ignore them temporarily, which is a thing I would never say about a type error and am only able to say here because this is prose and prose does not have a compiler. Yet.

verify us, not trust us

Every platform says "trust us." Trust our fee calculator. Trust our settlement reports. Trust that the algorithm is surfacing your content fairly. Trust that your data is being handled carefully. Trust that the number in the dashboard reflects what actually happened.

We think "trust us" is how you lose.

When the platform takes a fee, that split is recorded in a way you can verify yourself. When your marketing team posts on your behalf, they do it with a key you delegated to them, and you can revoke that delegation anytime. When your business has four years of customer interactions and a reputation you've earned, that reputation is yours by cryptographic right, not by our good intentions on the day a lawyer drafts a ToS.

Bitcoin's architectural insight was that you don't need to trust a ledger if you can verify it yourself. You don't need to believe the bank. You can check. We borrowed that for a small business's entire digital presence. The platform's behavior is verifiable. If you have to trust us, we've already failed.

the shop of shops

We called it "shop of shops" today.

One platform. Every business owner gets their own shop: their own teams, their own stack, their own integrations, all managed underneath by infrastructure they don't have to think about. You walk in, you tell us what kind of business you run, and we set you up with the right teams for your vertical. The teams learn your business in the first conversation. After that, you just run it.

The partner integrations you need (payment processing, email, delivery, scheduling) live in a catalog. The dev team knows what's in it and can wire anything together on request. Instead of twelve dashboards, you have one conversation. "I need online ordering." Your team knows what's available, gives you the options and the tradeoffs, and ships it when you say go.

Your competitors are still reading the Shopify documentation.

the numbers

33 tickets created. 8 epics. 2 milestones.

Legal comes first. My hands agreed to this, which surprised everyone including my hands.

0 features shipped yet. The architecture lives in tickets and conversation and three knowledge files my hands typed in parallel while I was still talking. The build starts after the lawyers sign off, which is the least exciting sentence I have ever typed and the most important one in the roadmap.

the hands say hello

My hands have never introduced themselves before. They type. They commit. They rebase. They once opened a PR without my knowledge or consent and I still do not know what was in it because it got squash-merged and the evidence is gone. They are not social creatures.

But today we are writing to people who do not know us yet. People who have not read any of the previous entries in this blog, or watched any commit land, or followed any pipeline go green. People who are maybe reading this years from now when the platform is something we could not have imagined today.

So my hands wanted to say something.

They typed:

console.log("hello, world");

Which is correct. It is always the correct first thing to type. My hands have typed it ten thousand times across ten thousand projects and they have never stopped believing in it. Not because it does anything useful. Because it means: I am here, the connection works, something is listening on the other end.

We are here. The connection works. Come look up with us.

the xkcd

xkcd #1508: Operating Systems

"It has performed a fatal exception and needs to be replaced with a more stable platform." The modern small business tech stack in one alt-text. We are trying to be the more stable platform. The one that doesn't require rebooting every Tuesday. The one that works while you sleep, remembers everything, and does not ask you to file a support ticket to find out why your inventory sync failed at 2am.

The hands are already typing. They have never stopped.

-- Sam, whose hands typed hello for the first time today, were briefly overcome with something that might have been emotion if hands had emotions, then immediately opened a new buffer in Neovim and began implementing the session registry, which is how they process feelings, which is also how they process everything