
The Customer Account Monolith Is an Anti-Pattern for Shopify Extensions
A thousand-line profile block in one extension fights merchant menu IA. Split full-page extensions by job and align with how customers navigate account tasks.
Continue reading →Writing about AI, technology and commercial growth: what worked, what failed, and what helped me move from pilot to production.

Nathan Petralia
I have spent two decades leading digital and commercial programs across APAC. Today I build AI products and leverage AI across consulting, practice building, go-to-market, commercials, delivery governance, and operational leadership.
About me →Recent Posts

A thousand-line profile block in one extension fights merchant menu IA. Split full-page extensions by job and align with how customers navigate account tasks.
Continue reading →
Design capture CLIs that dump outerHTML into SKILL.md files can smuggle instructions. Sanitize at the trust boundary before agents read the DOM.
Continue reading →
I run Cursor on Composer 2.5 only—not to save money alone, but to get predictable rule compliance. A tighter session bootstrap beat chasing frontier models for my workflow.
Continue reading →
Chat is not memory. This series explains a file-based external brain for builders and leaders—four layers, hooks, and why it beats hoping the model remembers.
Continue reading →
The same three-layer memory stack used for shipping code works for strategic work, client engagements, and cross-tool AI—short chat, operational handoffs, evergreen notes, and explicit feedback.
Continue reading →
Chat context is not memory. A three-layer file system—session, operational, evergreen—plus hooks and git automation is how I keep production codebases coherent across hundreds of agent sessions.
Continue reading →
Chat memory is opaque and ephemeral. Deliberate files give audit trails, solo-shipping continuity, team handoffs, and survival when models or tools change.
Continue reading →
The popular STM / LTM / feedback diagram optimizes in-model memory. A file-based external brain optimizes audit, handoff, and tool churn. Here is when each design wins—and why I chose files.
Continue reading →
A complete walkthrough of every Lighthouse bottleneck on a Next.js 16 Vercel site — TBT from 3,020ms to 20ms, LCP from 3.0s to 1.7s — including the config options that don't exist in Next.js 16 and will silently break your build.
Continue reading →