What twenty years of platforms taught us about shipping small
Lessons from large, multi-user systems, and how they shape a two-person studio.

Before DenWorks, we spent about two decades building large multi-user platforms. The kind with millions of rows, overnight batch jobs, an on-call rota, and a chat channel that lit up when a database in another timezone got unhappy. Boondle is a puzzle app you open for five minutes over coffee. On paper the two could not be less alike. In practice, almost everything we learned on the big systems shows up in the small one, only quieter.
Here is what carried over.
Boring is a feature
On a large platform, the highest compliment is that nobody noticed. No incident, no data loss, no call at three in the morning. Excitement is usually a synonym for something going wrong. We brought that instinct with us. A daily puzzle has one job at midnight: to be there, correct, and identical for everyone. If Boondle is boringly reliable, we have done the hard part. Players forgive a lot, but they will not forgive opening the app on the morning commute and finding yesterday’s puzzle, or a streak that reset because two clocks disagreed about when the day started.
The data model outlives the features
Screens are cheap. You can redraw a screen in an afternoon and nobody mourns the old one. The shape of your data is close to permanent. The hard lesson from big systems is that the schema you regret is always the one you rushed, because every migration afterwards inherits the mistake. So even for a small app we spent unglamorous hours on the parts nobody sees: how a puzzle is represented, how progress and streaks are recorded, how a finished game can be replayed later without us having stored a screenshot of it. None of that is visible in the interface. All of it decides what we can build next year.
You will migrate everything, and then migrate it again
On a platform of any size, you learn that data outlives every assumption you had about it. The column you swore would only ever hold three values now holds nine. The format you picked in week one is wrong by month six. We have written enough migrations to respect them, so Boondle versions its saved data from the very first release, even though there is nothing yet to migrate from. It costs a few lines now. It buys us the ability to change our minds later without asking a player to lose the streak they have spent four months building. The most expensive data is the data you cannot change the shape of.
The edge cases are the actual product
Big systems teach you to care about the small percentage, because at scale the small percentage is a lot of real people having a bad day. What happens when the device is offline at midnight. What happens when someone flies across three timezones mid-streak. What happens when a puzzle ships with a mistake in it and a thousand people have already solved the wrong answer. The happy path is the easy ten percent. The other ninety percent of the care, and most of the code, goes into the moments where things are slightly wrong, because those are the moments a player remembers.
Scope is a guest you invite in yourself
Nobody forces feature creep on a two-person studio. There is no product committee here. That makes it more dangerous, not less, because the only person telling us no is us. On large teams, process is the brake. On a small team, taste is the only brake, and taste is easy to override at eleven at night when an idea feels brilliant. We have learned to write the idea down and sleep on it. Most of them look ordinary by morning. The few that still look good after a week are the ones worth building, and they get built properly rather than bolted on.
Small is a choice, not a limitation
The biggest shift was internal. For years, more was the direction of travel: more users, more services, more headcount, more surface area to keep alive. Running a two-person studio means deliberately pointing the other way. Fewer products. Fewer features per product. Fewer promises, each of them kept. It would be easy to read that as a compromise, the thing you settle for when you cannot build the big version. It is the opposite. Keeping the studio small is exactly what lets us hold everything we ship to the standard the big platforms taught us, because there is little enough of it that we can actually look after all of it.
That is the quiet inheritance. The systems we used to build served millions of people we never met. Boondle serves one person at a time, at their kitchen table, first thing in the morning. The scale could not be more different. The care is the same care. We just have the room to give it now.
