I BUILDRANDOMTHINGSon purpose,
in public.
Hi — I'm Captain Random. I build production software, weird little experiments, and document all of it honestly. This site is the public part: real projects, real workflows, real evaluations of the tools I use.
What I build,
and why I'm still
excited about it.
AGENTIC AI & ARCHITECTURE
Building when code generation is free. How I architect agentic-first systems, what works in practice, what doesn't.
01RETAIL & HOSPITALITY OPS
23 years inside UK enterprise retail and hospitality. Real workflows, real failure points, real software-meets-floor knowledge.
02AI TOOL EVALS
Honest, practical assessments of Claude Code, Archon, and whatever else I'm shipping with. Includes what didn't work.
03CREATIVE AI
Music (Suno workflow), generative art, video. A hobby that produces real output, documented as it goes.
04BUILD IN PUBLIC
Projects from idea to implementation. The process is the point — failures included.
05LEARNING LOG
What I'm currently studying, how far through it I am, and whether it was worth the time.
06Recent writing.
The schedule queue took four sprints to remember. One to act.
After four sprints of B-schedule, a scheduled article existed as a database row with a correct timestamp. No article had published. Sprint 5 added the sweep daemon and publisher_lock. That is when scheduling became real.
A missed slot at 09:00 should not silently vanish: building past-due grace into the DVLAW publisher
The `schedule_sweep` runs on a laptop. Laptops sleep. Without a grace policy, an article scheduled for 09:00 silently strands when the machine wakes at 09:07. Sprint 6 of B-schedule — past-due grace plus 48-hour hard-expire — turns that silent drop into a recoverable state with a reason, an audit trail, and a path back to publish.
The classifier is the product: how four branches replaced an inbox
Inbox Hub is five SQLite tables, twelve route handlers, four Shadow DOM components, and a launchd cron. Strip those away and what remains is a four-branch decision tree that runs on every message. Everything else is plumbing around that core.
Workshop.
Build log.
In your inbox.
New posts, project updates, and honest tool reviews — roughly every two weeks. No marketing. No sponsorships. Just what I actually built and learned.