Writing
15 posts on design, engineering, AI, and building products.
2026
- Your Attention Does Not ParallelizeRunning more agents only helps when you have time to review what they produce.Jul 6
- Your Prompts Have a Version NumberKeep prompts in version control and test them again when you change models.Jul 4
- Use the Model for the 10% That Needs OneKeep predictable workflow steps in code and give the model the parts that need language understanding.Jul 2
- Your Company Already Wrote the ManualTickets, docs, and calls can give agents useful context, provided someone curates what they can use.Jun 28
- The Approval Fits in Your PocketA small approval interface works when the summary, permissions, and default behavior are trustworthy.Jun 20
- Build AI for an Ordinary TuesdayWhat it takes to turn an impressive demo into a system people can depend on.May 20
- Your Business Has a Ghost EmployeeFind the manual work scattered across your team and work out which parts are worth automating.May 6
- Why I Picked Solid for This SiteA short note on prerendered pages, signals, and keeping a personal site small.Apr 22
- A Model Upgrade Needs More Than a Config ChangePrompts, tools, evaluations, and fallbacks determine whether a new model improves your product.Apr 18
- Write AI Skills for Your Design SystemWhy design systems need AI-facing instructions, not just human documentation and component code.Mar 15
- Headless APIs in an AI AgeWhy Survey Loop's API-first shape makes the product easier to extend, automate, and operate with AI clients.Mar 15
- Frameworks Matter Less, Model Fluency Matters MoreFramework choice includes how well your team and its AI tools can work with the code.Mar 15
- Details That Add UpA running list of small choices that make a UI feel sturdier.Mar 15
- Build Table Components Like LegoWhat Survey Loop's table component teaches about composing data UI from small pieces instead of one giant grid abstraction.Mar 15
- AI Belongs in the UISurvey Loop shows how AI can surface insight inside existing workflows instead of forcing every user into chat.Mar 15