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: Smart Ticket Triage with Structured Output

Your support agent can talk, but it responds in prose. You can't route a ticket or track sentiment from a paragraph. In this episode we build a TicketClassifier that returns structured JSON with category, priority, sentiment, and a summary. Clean data from messy customer messages.

PHPantom: A Fast PHP Language Server Built in Rust

PHPantom is a PHP Language Server Protocol implementation written in Rust that starts in under a second and uses 59 MB of RAM, with support for generics, PHPStan annotations, and Laravel Eloquent.

New Expressive Model Attributes in Laravel 13.2.0

Laravel 13.2.0 adds new symmetrical model attributes, enum support in queue attributes, releaseOnSignal for withoutOverlapping, and UniqueConstraintViolationException column and index details.