Journal
Notes from the work — what broke, what we found, and what actually fixed it.
By service
- 13 Jul 2026 Postfix vs Exim vs Sendmail — choosing an SMTP in 2026 Every Linux mail server runs a Mail Transfer Agent — the process that accepts a message over SMTP, queues it, and hands it to the next…
- 08 Jul 2026 Drupal 9 to 10 — upgrade in five steps If you are still on Drupal 9, the upgrade is overdue. Drupal 9 hit end of life on 1 November 2023, which means no more security…
- 08 Jul 2026 AWS Lightsail vs a $5 VPS — when each makes sense People frame this as a price fight, and on price a plain $5 VPS wins almost every time. That is also the wrong way to pick.…
- 08 Jul 2026 Hetzner vs DigitalOcean for WordPress hosting We move WordPress sites onto Hetzner and DigitalOcean most weeks, so this is not a spec-sheet comparison written from the two providers’ pricing pages. It is…
- 30 Jun 2026 WordPress backup strategies that actually save you Almost everyone we get an emergency call from has backups. That is the cruel part. The site is down, the database is corrupt, the host restored…
- 30 Jun 2026 Linux server hardening checklist (2026 edition) There are a hundred Linux hardening checklists online and most of them are the same forty bullet points in a different order. We have read them.…
- 30 Jun 2026 Hosted email vs self-hosted in 2026 “Should we run our own email server or just pay for it?” We get asked this every few months, usually by a technical founder who has…
- 29 Jun 2026 Five signs your VPS needs an audit Five signs a server you already run is in trouble, the kind you can spot without being a sysadmin, each with the one command to confirm…
- 29 Jun 2026 AI content generation for WordPress — what actually works AI content for WordPress is strong for drafts, meta, and translation, and damaging when you publish it raw. Where it helps, where it hurts, and the…
- 29 Jun 2026 Cloudflare for ecommerce: rules every store should have The custom Cloudflare WAF rules we set up on an online store to stop card testing, credential stuffing, and price scrapers, with the exact expressions and…