mattdoes.online colophon say hi
making · 2026·04·19 ·1 min read

fewer vendors

why i kept collapsing the vendor count while rebuilding the site

spent the weekend rebuilding mattdoes.online from scratch. every time i hit a fork in the road i kept picking the option with fewer vendors.

not for price. not for dev experience. same instinct firing each time. vendor lock-in bites you on a long enough timeline, and the tech shifts under you whether you like it or not. the fewer external knobs i'm depending on, the fewer surprises land on a tuesday morning.

Cloudflare Pages for the site. R2 for media. self-hosted JetBrains Mono + Fraunces instead of Google Fonts. gray-matter + marked + a ~180 line build.js instead of an SSG. contact form points at a mailto: link instead of a Worker.

every one of those trades cost me something real. Resend has a nicer dashboard and better delivery visibility. an SSG would hand me plugins i haven't had to think about yet. Google Fonts is one line. a Worker-backed form captures submissions into D1 and feels more "real". i know. but every thing i add is a thing i'd have to migrate away from in three years when the pricing gets worse, the API changes, or the company gets acquired and sunset.

killed the Cloudflare Worker that handled the contact form for the same reason. it worked fine. it was also another thing to monitor. another deploy surface, another place errors could hide, another vendor path in the failure tree. mailto: has zero moving parts and nothing to forget about.

keep it simple, stupid. the part i underrated going in was how much of the anxiety about running this stuff comes from not being sure where the next failure will come from. if i own the build script, i know where the bug is. one fewer vendor means one fewer place the next tuesday-morning surprise can come from.

low vendor surface isn't an aesthetic. it's a bet that boring, legible infrastructure outlasts clever infrastructure, and that a one-person shop can't afford clever.

stack decisions simplicity

↳ vault/notes/making/fewer-vendors.md · 323 words

tweaks