Engineering,
taught
&
leadership,
practised.
I'm Steven — CTO at Digitonic, a PHP engineer since 2010 and a keen golfer with a terrible handicap. This is where I write it all down.
Latest from the journal
Fix Child Components That Won't Update with Livewire 4 #[Reactive] Props
Livewire props aren't reactive by default, so a parent can change a value and the child never notices. Here's the one-attribute fix, and when events are the better call.
Stop Looping: array_find, array_any and array_all in PHP 8.4
PHP 8.4 adds array_find, array_find_key, array_any and array_all — the readable way to search arrays and retire foreach-with-flag loops.
Test AI Features Without Calling the API: Agent::fake() in the Laravel AI SDK
You shipped an agent and wrote zero tests for it, because hitting a real model is slow, costs tokens, and needs a key in CI. The Laravel AI SDK's fake() fixes all three.