Skip to content
Back to blog

5,000 v 5, the complexity trap

Article

Originally published on X

I've been kinda obsessed with learning as much as I can from @dhh. I've listened to a bunch of his interviews, skimmed a bunch of his writing, even said fuck it and spent a few hours trying to learn Ruby just to see what he is so hyped about, and there's this interesting idea that stuck with me.

It's nothing too original, but stood out cause it applies to us so much. A 5,000 person team is always gonna build software that looks like a 5,000 person team. They are physically incapable of building something as smooth and clean as a 5 person team.

In a recent interview he even said that this might be getting worse cause now a 5 person team can ship with agents something that is as much of a mess as a 5k team.

This landed because I feel like this is exactly where v2 of Patchy landed.

The trap

We had v1, the super rough crappy prototype. It proved our idea worked but it was so rough that I myself wouldn't wanna use it. That wasn't the point though, we built it to prove to ourselves the idea of Patchy was even possible. It was and it was cool as fuck.

Then came the next part. Let's plan bigger, let's plan proper, let's do this "the right way".

This was a fucking trap waiting to spring shut around our necks and strangle us to death.

You think your startup is burning tokens? Fuck no. We got some free extra usage cause of the 5/5 party (no not my birthday, the OpenAI one), and we went to town. At this point this version of Patchy is well well well into 6 figures of token spend and becoming the kind of monster made for Microsoft to maintain.

PatchPage

As this was happening I got fed up with that and how slowly we were moving so started wasting time on burning little internal tools inspired by the Patchy design. PatchPage to be precise. Then last week I reached a point of annoyance where I took it from a random open sourced repo on my GitHub and launched it as our first product.

Nothing too glorious, from the user's perspective you can basically have your agent throw up a static web page with a single npx command for your agent, but it proved something to me. PatchPage is essentially the Tier 0 runtime of Patchy except it's raw.

None of the huge overhead of this monstrous codebase that Patchy v2 has become. None of the crazy mess that going too paranoid with tests gets you. Just a nice, simple, core of Patchy Tier 0 runtime...

If you ask my cofounders they will certainly mention this at some point, but there is nothing I love to see more than a huge -xx,xxx on a PR. Just ripping out dumb useless code. That shit shouldn't have been there in the first place.

The takeaway

So while right now I am not sure if we will go and start Patchy v3 tomorrow based on PatchPage and abandon the mess of a codebase Patchy v2 has become, or if I will prompt Fable with delete everything except ... it leaves me with an important takeaway.

The leap forward with capability of small teams to do big things has to be carefully managed. You can now easily slip into building the type of slop you see Microsoft shipping every day.

The force multiplier should be on your level of ambition on what you can build. Earlier today on a call I was describing our vision to someone and said "We are here to wreck the market share of AWS and Vercel".

We aren't gonna do this by building a cloud like we are a 5,000 person team. We are gonna do this by building our cloud primitives like each is built by a brilliant 3 person team, but with the help of agents we can build all the base primitives you would need to build internal company tools.