Europe/London
BlogSeptember 10, 2026

I Built a Cron Job That Writes My Blog

Dubz
There's a version of this post that starts with a grand claim about AI revolutionising content. Skip that. This one starts with an honest admission: I had a blog with a ragged archive. Great posts separated by dead months, because, like every solo operator since the beginning of publishing, the writing happened when client work didn't eat the week. The gap between "I should write monthly" and "I wrote monthly" was always the same thing: a system. So I built one. This post is the inside view, because if you run a site in 2026 and you're still relying on personal discipline for a publishing schedule, you're using the wrong tool for the job. Discipline is for judgement calls. Schedules are for machines. Once a month, a scheduled agent wakes up on a cron and does a job with three steps:
  1. Read the room. It reviews the month (what shipped, what broke, what the news actually was) and re-reads the archive, because voice consistency comes from examples, not instructions.
  2. Draft, don't publish. It writes one post in the established voice, drops it into the repo as a draft on a branch, and stops.
  3. Wait for a human. Nothing ships without me reading it, rewriting where it's off, and deciding it goes out. The pipeline has no push access, no deploy rights, no ability to embarrass me.
That last step is the whole design. The failure mode everyone fears (an AI auto-publishing slop under your name) isn't a technology problem; it's a permissions problem, and permissions are easy. The agent drafts; the human publishes. Every post in this archive went through a person. This one is telling the truth about it from inside the workflow that produced it. You might think removing the human from drafting is where the time savings live, but that's backwards. Writing a post I've already decided to write is the fast part. The slow parts are remembering, starting, and not stopping: the calendar pressure, the blank page, the month that slips to a quarter. A cron job that guarantees a competent draft exists on the 1st of every month deletes all three. My job shrinks from "be a writer every month" to "be an editor for an hour." That trade I can keep. The other half is the archive itself. An agent that re-reads the existing posts before drafting keeps the voice coherent across months: same stances, same structures, the same person talking. A blog that sounds like one brain is worth more than the sum of its posts, and consistency is precisely the thing machines are better at than busy humans. I've been publishing in one form or another since the nineties (radio charts, label releases, and now this blog), and the lesson across all of them is the same: the audience rewards showing up, and showing up is a logistics problem. Automate the logistics, never the judgement. The machine keeps the calendar; the human keeps the voice. Thirty years in, I finally have a schedule that survives my workload, and it's cron, of all things, that got me there.
Share this post: