ONLINE · OPEN FOR FREELANCE BUILDS// BUILDING IN PUBLIC
$ whoami → captain-random

I BUILDRANDOMTHINGS

YEARS WEB DEV
20+yrs
YEARS IN RETAIL
23yrs
POSTS PUBLISHED
161articles
RECENT COMMITS
193/30d

Hey — this is Captain Random. I build production software and experiment with how far I can push my imagination into the digital realm, bridging the gap between technology and the problems worth solving. This site is for everyone — here you can see real projects, real workflows, and honest evaluations of the tools I use and build. It's a new project, and it'll grow with every commit. Stick around and watch it take shape.

Recent writing.

Essays, notes & build logs
Build LogContent Pipeline
#01
2026-07-265 min read

Eight clusters triaged, zero published: why autonomous content cadence fails silently

The UK Calculators content pipeline ran three clean cron exits and published nothing for three weekdays. No errors, no alerts, just absence. Three weeks of daily runs showed the failure mode is not bad drafts. It is a gate that rejects everything differently each day, and a cadence monitor that asks the wrong question.

Read post
Build LogUK Calculators
#02
2026-07-265 min read

The cron kept drafting mortgage because gov.uk wasn't in the source set yet

For five days, the cron produced news-cluster drafts and operators shipped gov.uk regulatory pillars by hand. Day 6 changed one thing: gov.uk Search API sources entered the polling loop. Two data-pegged pillars from a single cycle followed immediately.

Read post
Build LogLearning Hub
#03
2026-07-265 min read

The in-chapter TOC needed live JavaScript. It still got a mockup first.

The captainrandom learning hub navigation retrofit ran five phases. Every one went through the UI gate — interactive approval mockup before production code. The most interesting case was P4: the subsystem's only client-side component, with a live IntersectionObserver scroll-spy in its mockup, still approved before a line of React was written.

Read post
Build LogPrivacy
#04
2026-07-265 min read

The privacy work isn't on the /privacy/ page

The /privacy/ page went live in June and covers what it covers. The actual privacy work on this site happened in a data-locality choice, a brand-separation rule, and a username leak in published MDX. Only one of the three announced itself.

Read post
Build LogUK Calculators
#05
2026-07-255 min read

10 of 13 sentences made it. The verifier caught the rest before they reached a pillar page.

The June 30th cron produced a mortgage rate-spike draft grounded in April 2026 data. Ten of thirteen sentences passed. The three that didn't never reached a pillar page — and the next two days showed why that distinction matters at publishing scale.

Read post
Build LogContent Pipeline
#06
2026-07-256 min read

14 days of daily publishing: the three failure modes I hadn't designed for

A 14-day publish cadence on UK Calculators surfaced three failure modes: title-mangling produces permanent ugly slugs, zero-draft mornings expose the absence of a fallback queue, and triage without memory republishes the same cluster it shipped the day before.

Read post
Build LogSEO
#07
2026-07-255 min read

AdSense low-value rejection: thin pages, empty hubs, and six SVG diagrams

UK Calculators was rejected for low-value content on 10 July — ads.txt was authorised, so this was purely a content-quality judgement. Three concrete moves addressed the specific inventory-value criteria: expanding thin calculator landings, adding SVG diagrams across the pillar estate, and populating empty hub pages the rejection identified.

Read post
Build LogUK Calculators
#08
2026-07-255 min read

The E2E suite billed 1,130 minutes to test a page that never existed

A Playwright suite on a private repo ran 69 times in three weeks, failed 61 of them, and billed roughly a thousand minutes doing it. The root cause was three mistakes stacked on top of each other, and the deepest one was mine: I did not know GitHub Actions had a bill.

Read post
Build LogLearning
#09
2026-07-245 min read

The backlog called it a content gap. It was navigation.

Completing an eight-chapter course on the learning hub felt like progress. Then I looked at what had actually moved the needle — track sections, prerequisite chips, and a JSON-LD breadcrumb. The backlog had been mis-filing the bottleneck for months.

Read post

Build log.
In your inbox.

What shipped, what broke, what worked. No marketing. No sponsorships. Sent when there's something worth sending.

Plain-text only. Unsubscribe in one click. We store your email, the date you confirmed, and a one-way hash of your IP (for abuse triage). Nothing else. Privacy policy.