Technical Articles
Opinionated writing on software systems, strict monolithic domain boundaries, testing strategies, and Laravel performance.
The PSR Standards You Are Probably Ignoring
Five PSR standards that most PHP developers skip. Master them and write code that works anywhere, tested easily, and tied to nothing.
When CRUD Isn't Enough: How Real APIs Outgrow Their Design
Most Laravel APIs start as clean CRUD systems. This article walks through why that breaks down, and how an action-based design fixes the mess.
Introducing Signal: documentation that lives in your code
Signal is a PHP library that generates living documentation from native attributes. Annotate your classes, run one command, get accurate docs.
Building Modern Laravel APIs: Lead Scoring and Prioritisation
Building a configurable lead scoring engine in Laravel 13 - config-driven weights, query objects for prioritised retrieval, rescoring commands, and a top leads endpoint.
Building Modern Laravel APIs: The Action Pattern
Building a lead enrichment and scoring pipeline in Laravel 13 using the AI SDK, structured agents, composable Action classes, and PHP enums for type-safe status management.
Building Modern Laravel APIs: Authentication with JWT
Add JWT auth to a Laravel API with register, login, refresh, and logout flows using Form Request DTOs, Action classes, and auth:api middleware.
Building Modern Laravel APIs: Foundations and Project Structure
Start the Modern Laravel APIs series by structuring Pulse-Link for production with clear layers, ULIDs, action classes, DTO requests, and versioning.
Building Modern Laravel APIs: Ingesting Leads
Implement lead ingestion in Laravel with Form Request validation, typed DTO payloads, Action classes, and JSON:API responses for POST /v1/leads.
Managing Expectations in the AI Era
How to have honest conversations with stakeholders about AI productivity — what actually changes, what doesn't, and how to set realistic expectations.
Building Modern Laravel APIs: Routing, Versioning, and API Contracts
Learn how to version Laravel API routes, signal deprecations with Sunset headers, and keep API contracts aligned with your implementation.
Running A Better Table
How to run a Shape Up betting table — the planning meeting where pitches get selected and cycles begin or quietly collapse.
Redefining Engineering Roles in the AI Era
AI makes implementation cheaper and judgment more valuable. Learn how engineering roles, hiring, and team design are changing.