From the Blog
Articles on infrastructure, Laravel & open source
How Hard Can US Sales Tax Be
I was building a billing engine, so I had to handle tax. The EU was hard but knowable. Then I looked at the US and said the sentence that sits right at the peak of the Dunning-Kruger curve. What came out the other side was not tax logic, it was an ETL pipeline against forty government websites.
One Identity Layer Instead of Five
Every product needs login, organizations, roles, SSO and an audit trail. I had built that more than once, a little differently each time. Identity is the last thing you want five diverging copies of, so it became laravel-id: a contract-driven auth and identity framework for Laravel.
2025
Laracon US: Meeting the Team
Back home in Denmark after Laracon US. I joined Laravel in October and this week around 50 of us were together for the first time. I had met a few at Laracon EU, but this was different.
Blood, Sweat & Kubernetes at Laravel Hungary
I gave my first talk as part of the Laravel team at the Laravel Hungary meetup in Budapest. Here is the recording and some takeaways from presenting Laravel Cloud infrastructure to the Hungarian community.
You Know Laravel. Do You Know How It Runs?
I spoke at the Laravel Denmark Copenhagen Meetup about what happens when your Laravel app actually runs. From php artisan serve to php-fpm, Octane, and FrankenPHP - the runtime matters more than most developers think.
Blood, Sweat & Kubernetes at LaraFest
I brought the Blood, Sweat & Kubernetes talk to LaraFest in the Netherlands. A proper conference stage, a packed room, and the Dutch Laravel community asking hard questions about how Laravel Cloud actually works.
Laracon EU: One Month In, Three Regions Deep
I started as a contractor in October and went full-time in January. By Laracon EU I had deployed three full regions for the keynote. Then Taylor clicked a button on stage and nothing happened. My console went red. My heart stopped.
2024
Joining Laravel to Build Laravel Cloud
I am joining the Laravel team as Senior Infrastructure Engineer to help build Laravel Cloud. My cloud platform project is going on hold. Here is why this is the right move.
Cache Me If You Can
A talk I gave at the Laravel Aarhus Meetup on caching strategies in Laravel. From basic cache-aside to cache warming, tagged invalidation, and the patterns I use at TV2 to handle 90,000 requests per second.
Building a Managed Platform for PHP
For the past year, I have been quietly building a managed hosting platform for PHP applications. Auto-scaling, metrics-driven infrastructure, and zero-config deployments. Here is what I have learned so far.
Your PHP Container Metrics Are Lying to You
Most monitoring tools report host resources instead of container limits. When your container has 512MB but the host has 64GB, your memory usage graph shows 0.7% instead of the real 85%.
Statamic at Scale: My Talk at Laravel Live DK 2024
I presented Statamic at Scale at Laravel Live Denmark 2024 together with the Statamic team. 1.74 billion requests per month, 90,000 requests per second during elections, and 40+ custom addons. Here is the story.
PHP Docker Images: Three Tiers, One Philosophy
Every team builds their own PHP Docker images. Most end up with 800MB images full of build tools. Here is how I designed three tiers (Slim, Standard, Full) that cover 95% of use cases.
Building a FastCGI Client from Scratch in Go
The FastCGI protocol is from 1996 but still powers most PHP applications. Here is what I learned implementing a client library with context support and proper error handling.
Flatcamp 2024 in Rome
Drove to Rome with my good friend Jacob for Flatcamp, the Statamic community gathering at a private Italian villa. I presented liveblogs with WebSockets and Livewire. Met most of the Statamic community for the first time.
Why We Need a Real PID 1 for PHP Containers
Supervisord and shell scripts are not process managers. Here is why your PHP containers need proper signal handling, zombie reaping, and health-aware startup ordering.
Scaling with Websockets
I gave a talk at the Laravel Copenhagen Meetup on scaling websocket connections in Laravel. Broadcasting, Pusher vs self-hosted, horizontal scaling, and what happens when 10,000 users connect at once.
From Drupal to Bazo to Statamic: The TV2 Regionerne Story
I built two CMS platforms for Denmark's regional broadcaster. First Bazo, a headless Laravel + Nuxt system that replaced eight Drupal sites without downtime. Then Statamic, with 200+ core contributions and 40+ addons to make it scale horizontally on Kubernetes.