Freek Van der Herten
banner
freek.bsky.social
Freek Van der Herten
@freek.bsky.social
PHP developer at Spatie, built Mailcoach, ‪myray.app‬, ohdear.app and flareapp.io, blogging at ‪freek.dev‬, organising fullstackeurope.com
We just launched Performance Monitoring in Flare! 🚀

Catch errors and performance issues in your Laravel and PHP apps, all from one platform, at no extra cost. Read on why this a big step for Flare 👇
November 12, 2025 at 9:19 AM
🔗 Creating custom Facade fakes in Laravel
Creating custom Facade fakes in Laravel
Adding `fake()` methods to your custom facades in applications and packages can provide some nice DX and APIs.
ryangjchandler.co.uk
November 6, 2025 at 1:32 PM
💌 I’ve just sent out a new edition of my newsletter on Laravel, PHP and all things web.

Read it here (and subscribe should you like it and want to receive the next one in your mailbox)

freek-dev.mailcoach.app/archive/4879...
freek.dev newsletter #192 | freek.dev newsletter
Every month I send out a newsletter containing lots of interesting stuff for the modern PHP developer. Expect quick tips, links to interesting tutorials, opinions and packages. Because I work with La...
freek-dev.mailcoach.app
October 29, 2025 at 10:59 AM
🔗 Deferred Queue Driver in Laravel 12.35
Deferred Queue Driver in Laravel 12.35
Laravel 12.35 introduces the deferred queue driver, allowing queued jobs to run right after the HTTP response is sent.
nabilhassen.com
October 27, 2025 at 1:04 PM
🔗 A cartoonist's review of AI Art
A cartoonist's review of AI Art
Matthew Inman's take on AI Art. Some good points, and beautifully illustrated as always.
theoatmeal.com
October 23, 2025 at 12:36 PM
🔗 What’s New in PHP 8.5?
What’s New in PHP 8.5?
A good overview of everything coming in PHP 8.5.
www.phparch.com
October 20, 2025 at 12:03 PM
🔗 Convenient Content Security Policies with Spatie Laravel CSP 3 Presets
Convenient Content Security Policies with Spatie Laravel CSP 3 Presets
Shawn Hooper enjoys the new presets we recently added to our Laravel CSP package.
shawnhooper.ca
October 17, 2025 at 12:02 PM
🔗 Seven Real-World Examples of Using the Pipe Operator in PHP 8.5
Seven Real-World Examples of Using the Pipe Operator in PHP 8.5
I'm really looking forward to PHP 8.5's pipe operator. Here are a few nice use cases.
amitmerchant.com
October 16, 2025 at 12:01 PM
🔗 The Downsides of Dynamic Method Calls in PHP
The Downsides of Dynamic Method Calls in PHP
Dynamic method calls can be useful, but they also come with some risks that you should be aware of.
ashallendesign.co.uk
October 15, 2025 at 1:00 PM
🔗 Scaling Request Logging from Millions to Billions with ClickHouse, Kafka, and Vector
Scaling Request Logging from Millions to Billions with ClickHouse, Kafka, and Vector
After Geocodio unsuccessfully attempted to optimize with ClickHouse alone, they implemented a solution using Kafka for durable storage and Vector for efficient data ingestion.
www.geocod.io
October 14, 2025 at 12:59 PM
🔗 Vendor locked
Vendor locked
Brent reflects on how using Tailwind CSS has led to a loss of proficiency in writing standard CSS.
stitcher.io
October 12, 2025 at 9:24 PM
Tomorrow, I’ll be giving two talks at the ForumPHP conference in Paris 🇫🇷
event.afup.org/forum-php-20...

In the first talk I’ll be showcasing our multi-tenancy package (spatie.be/docs/laravel...), and in the second I’ll demo a few over our smaller packages.

See you there! !
Programme – Forum PHP 2025 – Cycles de conférences AFUP
Découvrez le programme du Forum PHP 2025, l'édition des anniversaires
event.afup.org
October 8, 2025 at 9:39 AM
🔗 SQL performance improvements: analysing & fixing the slow queries (part 2)
SQL performance improvements: analysing & fixing the slow queries (part 2)
Mattias delves into optimizing SQL queries using indexes, focusing on MySQL 8.0. He explains how indexes work, how to analyze slow queries using MySQL’s EXPLAIN keyword, and the impact of different index configurations on query performance.
ohdear.app
October 6, 2025 at 2:00 PM
Reposted by Freek Van der Herten
Discovered the Presets feature in v3 of Spatie's Laravel CSP package this week. What a powerful improvement.

Blogged about it here:

shawnhooper.ca/2025/10/03/c...

Thanks @spatie.be !
shawnhooper.ca
October 3, 2025 at 9:51 PM
🔗 Http::batch with hooks in Laravel 12.32
Http::batch with hooks in Laravel 12.32
Laravel 12.32 introduces Http::batch, a clean way to send concurrent HTTP requests with lifecycle hooks for progress, success, failure, and finalization.
nabilhassen.com
October 2, 2025 at 12:14 PM
I’ve just sent my newsletter on #PHP, #Laravel and all things web

You can read it + subscribe here:

freek-dev.mailcoach.app/archive/2f60...
September 25, 2025 at 4:31 PM
🔗 npm ci vs npm install
npm ci vs npm install
A quick guide to the differences between `npm ci` and `npm install`.
ryangjchandler.co.uk
September 24, 2025 at 12:29 PM
🔗 Laravel Notifications: dynamic channels, priority, and delayed sending
Laravel Notifications: dynamic channels, priority, and delayed sending
Laravel Notifications are one of my favourite parts of the framework.
crnkovic.me
September 23, 2025 at 12:50 PM
I’ve deployed a simple micro-service called Request Mirror
request-mirror.ohdear.app

Send a request, and Request Mirror will respond instantly with JSON containing all properties of the original request. Perfect for API development, webhook testing, and learning HTTP.
Request Mirror - HTTP Testing Service by Oh Dear
The simple HTTP request testing tool. Send a request and get instant JSON response with all request details. Perfect for API development, webhook testing, and learning HTTP. Free service by Oh Dear.
request-mirror.ohdear.app
September 22, 2025 at 4:56 PM