Migrating hosting with zero downtime: we dropped the DNS TTL early and ran both servers in parallel. Nobody warns you about email.
Technical & business perspectives
What we're learning building custom websites and software.
How we stopped contact form spam for a client without reCAPTCHA: a honeypot, a rate limit and a link filter.
Integrating Stripe payments sounds like an afternoon's work, but duplicate webhooks and PCI scope can derail your launch date.
Expired SSL certificate: why automatic renewal quietly failed and we found out from the client, staring at Chrome's red warning screen.
Why your business emails end up in spam out of nowhere: what we found checking SPF, DKIM and DMARC after a hosting migration.
Why you can't see the changes on your site right after we publish them: browser cache, server cache, and how we set both up in nginx.
A client asked why we don't just deploy on Vercel like everyone else. The real reason has more to do with a nasty billing scare than with saving money.
Why we stopped auto-updating dependencies after a real production incident took down a client's checkout, and the rule we use now.





