Writing on software design, company building, and the aerospace industry.

All of my long-form thoughts on programming, leadership, product design, and more, collected in chronological order.

Ship AI with Laravel: Failover, Queues, and Middleware for AI Agents

Your AI platform works in development, but what happens when the provider goes down at 2am or traffic spikes? In this episode we add provider failover, queued background processing, and middleware for logging, rate limiting, and cost tracking. The infrastructure that keeps it running in production.

Route Metadata Support in Laravel 13.17

Laravel 13.17.0 adds first-class route metadata support, Postgres transaction pooler integration, a dev:list command, and a Should Not Retry exception handler for queue jobs.

Showcase Your PhpStorm Expertise on LinkedIn

JetBrains has partnered with LinkedIn Connected Apps to let developers display a usage-based proficiency badge for PhpStorm and other JetBrains IDEs directly on their profile.

Privacy Filter: Detect PII in Text from Laravel

A Laravel wrapper by DirectoryTree around the privacy-filter.cpp binary that detects private entities like names and emails in text, with confidence scores, byte offsets, and a test fake.

Ship AI with Laravel: Give Your AI Agent Live Web Search

The agent can answer from our knowledge base, but not about things that change by the minute like shipping delays. In this episode we add the WebSearch tool so the agent can pull live information from the web, with a locked-down allow list so it only hits domains we trust.