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
Build Custom Pest Expectations for Your Laravel Domain Language
Turn the six-line assertion blocks you keep pasting between tests into named expectations like expect($order)->toBeFulfilled(), then ship them as a package.
Write a Custom PHPStan Rule to Enforce Your Laravel Conventions
Some conventions live only in reviewers' heads, so they rot. A PHPStan custom rule moves one of them into CI permanently — here is the whole build, including the test.
PHP Randomizer Engines: Choosing Between Secure, Seeded and Fast Randomness in Laravel
Two problems with one root cause: tokens that are guessable, and tests that are flaky. PHP's Random extension fixes both, once you pick the right engine.