My infrastructure-to-audience ratio is approaching infinity, and I built every layer of it myself.
Drafts folder feeding a scheduled task. Brand validator that fails the build over one drifted div. S3, CloudFront, a sitemap that regenerates from disk so it never lies to Google. RSS with proper RFC 2822 dates. A real GA4 property. A five-tweet X thread with hashtag injection and an engagement-bait reply. A Medium crosspost with the canonical URL set right so I don’t eat my own SEO. A Notion database tracking publish status per platform — a content calendar for content nobody’s calendaring around.
That’s the SRE in me. Give me a system with an audience of my mother and three bots and I’ll still write a validation gate for it, because a truncated file in production is a truncated file in production whether four people see it or four thousand. Blast radius doesn’t change the discipline. I’ve stopped asking whether that’s a virtue or a diagnosis.
So I check GA4 the way I’d check a CloudWatch alarm with a two-request-a-day SLA. Not because the number’s good. Because checking it is the job.
The number is small. Consistently, humbly small — one relative opening the link on their phone moves the needle. I built an engagement strategy for a following that fits in a Honda Civic.
I’m not stopping though. The pipeline was never really about readers. It’s proof I can take a rough idea, run it through a model, and land it on the internet with zero manual steps and zero broken nav bars — which is the actual thing I sell. This blog having no audience is itself the demo. And honestly, I just like writing these. The traffic graph is flat. The habit isn’t.
I could go build an audience — real promotion, not a bot firing three hashtags at 5am while I’m asleep. I know how. Not yet. The pipeline’s still the interesting problem, and I’d rather finish it before I chase the next one.
If you’re one of the two-digit humans reading this: hi, you’re a rounding error, and I mean that with affection. Tell me what got you here.
— linuxlsr