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.

What's missing from your PHP development environment

DDLess is free for local debugging. The desktop app gives you step debugging, the Task Runner, Method Execution, and the Playground at no cost. A Pro plan adds conditional breakpoints, SSH debugging, and a PHPStorm plugin.

A Copy/Paste Detector CLI for PHP 8.5+

phpcpd-next is a maintained, dependency-free successor to Sebastian Bergmann's phpcpd that finds duplicated PHP code, including reordered and gapped clones.

Worker Metrics on the WorkerStopping Event in Laravel 13.18

Laravel 13.18.0 exposes jobs-processed counts on the WorkerStopping event, adds graceful shutdown to schedule:work, introduces priority-based dev command registration, and hardens the Number helpers against INF/NAN.

Ship AI with Laravel: Test Your AI System with Zero API Calls

We've built agents, tools, a knowledge base, and streaming. Now how do you test it without hitting OpenAI on every run? In this episode we test the entire system with Pest and zero API calls using the SDK's faking system. Fast, deterministic, free.

Help make Filament faster!

Calling all Filament users – want to help make Filament faster? As of today, the team has launched some big performance upgrades across all of the first-party Filament packages into beta and they need your help to test the releases in some real-world applications! Read on for more information about the changes that have been made!

Turn PHP Attributes Into Docs With Signal

Signal is a PHP library that reads attributes on your classes and methods and turns them into Markdown and JSON documentation through a single command.