The notebook
Blog.
notes from real projects
Practical writing on Laravel, AI engineering, token costs, SaaS architecture, and the technology decisions that make software cheaper to run and easier to grow.
All posts
113 posts
27 Aug 2025
Cloud & DevOps
Renewals, expiry and the diary reminder you should not need
Manual renewal tracking always fails eventually — a diary reminder is a single point of failure with a person attached. Here is the automated renewal system that replaced ours.
→
20 Aug 2025
Cloud & DevOps
From form submission to live site in 30 minutes
Our provisioning pipeline takes a signup form to a live, DNS-resolved, SSL-secured site in under 30 minutes. The architecture, the job chain, and why idempotency is the whole game.
→
16 Aug 2025
Cloud & DevOps
Automating cPanel account provisioning without losing your mind
The WHM API will happily create five hundred accounts for you — and quietly ruin your week. The endpoints that matter, the ones that bite, and the guards I put around them.
→
09 Aug 2025
Laravel & PHP
What nobody tells you about domain transfer keys
Transfer keys look like a one-field feature until you ship one. The states a domain transfer can be in, the ways it fails, and how I model it after doing it in production.
→
02 Aug 2025
Laravel & PHP
Driving a national domain registry from a Laravel admin
I built a full .fi domain lifecycle — availability, purchase, renewals, nameservers, transfer keys — into a Laravel admin. Here is what registry integration actually involves.
→