Blog
What we know, shared freely
Practical notes on AI, product engineering, digital growth, and systems that hold up in production.
Aug 06, 2025
A checklist for reviewing AI-generated code before production
Search the repo for secrets, raw SQL, and a missing auth check before you demo it.
Jul 23, 2025
How to rescue an AI-built app without a full rewrite
Do not rewrite first. Make payments and login safe, then cut the rest.
Jul 09, 2025
What vibe-coded software usually gets wrong
AI-built demos usually skip auth, payments, and a real deploy. The pattern, not a dunk on tools.
Jun 25, 2025
REST vs GraphQL — when it actually matters
GraphQL helps when many clients need different shapes. REST is enough for most admin APIs.
Jun 11, 2025
Multilingual sites that stay one product
Two codebases for two languages is not localization — it is two products.
May 28, 2025
When to build a custom CMS
Build a CMS when your pages are a system, not a pile of posts. Editors, modules, languages.
May 14, 2025
Transactional email through your own SMTP
Send from the merchant domain through the merchant provider. Why that matters.