Freek Van der Herten's Avatar

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

2,890 Followers  |  115 Following  |  191 Posts  |  Joined: 25.05.2023  |  1.9946

Latest posts by freek.bsky.social on Bluesky

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...

💌 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...

29.10.2025 10:59 — 👍 4    🔁 0    💬 0    📌 0
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.

🔗 Deferred Queue Driver in Laravel 12.35

27.10.2025 13:04 — 👍 1    🔁 0    💬 0    📌 0
Building a procedurally generated game with PHP A few experiment by Brent. His process involves using noise generation, specifically the xxHash algorithm, to create a cohesive world map with smooth transitions between land and water using linear interpolation (LERP)

🔗 Building a procedurally generated game with PHP

24.10.2025 12:37 — 👍 2    🔁 2    💬 0    📌 0
A cartoonist's review of AI Art Matthew Inman's take on AI Art. Some good points, and beautifully illustrated as always.

🔗 A cartoonist's review of AI Art

23.10.2025 12:36 — 👍 2    🔁 0    💬 0    📌 0
The State of PHP in 2025 The State of PHP 2025 survey by JetBrains examines how developers use, prefer, and rely on PHP, showing how this long-standing web language continues to modernize through new frameworks, improved tooling, and AI-assisted workflows.

🔗 The State of PHP in 2025

22.10.2025 12:35 — 👍 3    🔁 1    💬 0    📌 0
Maybe You're Not Sick of Programming Many programmers believe they are tired of programming, but they may actually be frustrated with bureaucracy, lack of product vision, and lack of ownership. Burnout can skew perspectives, and it may be more beneficial to address these issues rather than abandoning programming entirely.

🔗 Maybe You're Not Sick of Programming

21.10.2025 12:33 — 👍 2    🔁 0    💬 1    📌 0
What’s New in PHP 8.5? A good overview of everything coming in PHP 8.5.

🔗 What’s New in PHP 8.5?

20.10.2025 12:03 — 👍 4    🔁 1    💬 0    📌 0
Convenient Content Security Policies with Spatie Laravel CSP 3 Presets Shawn Hooper enjoys the new presets we recently added to our Laravel CSP package.

🔗 Convenient Content Security Policies with Spatie Laravel CSP 3 Presets

17.10.2025 12:02 — 👍 1    🔁 0    💬 0    📌 0
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.

🔗 Seven Real-World Examples of Using the Pipe Operator in PHP 8.5

16.10.2025 12:01 — 👍 3    🔁 1    💬 0    📌 0
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.

🔗 The Downsides of Dynamic Method Calls in PHP

15.10.2025 13:00 — 👍 4    🔁 0    💬 0    📌 0
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.

🔗 Scaling Request Logging from Millions to Billions with ClickHouse, Kafka, and Vector

14.10.2025 12:59 — 👍 2    🔁 0    💬 0    📌 1
Vendor locked Brent reflects on how using Tailwind CSS has led to a loss of proficiency in writing standard CSS.

🔗 Vendor locked

12.10.2025 21:24 — 👍 5    🔁 0    💬 0    📌 0
Preview
GitHub - spatie/laravel-validation-rules: A set of useful Laravel validation rules A set of useful Laravel validation rules. Contribute to spatie/laravel-validation-rules development by creating an account on GitHub.

Nice, those validation rules could also have a nice home here: github.com/spatie/larav...

08.10.2025 09:39 — 👍 5    🔁 0    💬 1    📌 0
Programme – Forum PHP 2025 – Cycles de conférences AFUP Découvrez le programme du Forum PHP 2025, l'édition des anniversaires

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! !

08.10.2025 09:39 — 👍 6    🔁 1    💬 0    📌 0
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.

🔗 SQL performance improvements: analysing & fixing the slow queries (part 2)

06.10.2025 14:00 — 👍 6    🔁 0    💬 0    📌 0

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 !

03.10.2025 21:51 — 👍 2    🔁 1    💬 0    📌 0
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.

🔗 Http::batch with hooks in Laravel 12.32

02.10.2025 12:14 — 👍 3    🔁 0    💬 0    📌 1
Things I wish I knew when I started programming Brent Roose has written an excellent book. This time on his programming journey and the lessons learned along the way. It's not too long, I personally read it in one sitting, and liked it very much.

🔗 Things I wish I knew when I started programming

01.10.2025 10:10 — 👍 2    🔁 0    💬 0    📌 0
Post image

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...

25.09.2025 16:31 — 👍 9    🔁 1    💬 1    📌 0
npm ci vs npm install A quick guide to the differences between `npm ci` and `npm install`.

🔗 npm ci vs npm install

24.09.2025 12:21 — 👍 2    🔁 0    💬 0    📌 0
Laravel Notifications: dynamic channels, priority, and delayed sending Laravel Notifications are one of my favourite parts of the framework.

🔗 Laravel Notifications: dynamic channels, priority, and delayed sending

23.09.2025 12:50 — 👍 2    🔁 0    💬 0    📌 0

Very cool! Will you open source this? 🙏

22.09.2025 17:03 — 👍 1    🔁 0    💬 1    📌 0
Preview
GitHub - ohdearapp/request-mirror.ohdear.app: The source code of request-mirror.ohdear.app The source code of request-mirror.ohdear.app. Contribute to ohdearapp/request-mirror.ohdear.app development by creating an account on GitHub.

I’ve also open-sourced it, you’ll find the code in this repo: github.com/ohdearapp/re...

Blogpost on why it was created (spoiler: for our own testing needs): ohdear.app/news-and-upd...

22.09.2025 16:56 — 👍 0    🔁 0    💬 0    📌 0
Preview
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.

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.

22.09.2025 16:56 — 👍 3    🔁 0    💬 1    📌 0
PSR-20 Clocks: Testable Time in PHP Learn how a ClockInterface helps you decouple time and write stable, testable code. It's about time!

🔗 PSR-20 Clocks: Testable Time in PHP

22.09.2025 12:15 — 👍 7    🔁 2    💬 0    📌 0
Post image

🔥 One of our users used Flare's MCP server to analyse all the performance data Flare collects and to give an optimization report. Very very cool!

(I have Peter’s permission to share his message all of you 👍)

flareapp.io/docs/flare/g...

19.09.2025 10:28 — 👍 6    🔁 0    💬 1    📌 0
No more down migrations Database migrations have had a serious refactor in the newest Tempest release

🔗 No more down migrations

19.09.2025 10:02 — 👍 4    🔁 0    💬 0    📌 0
Post image Post image Post image Post image

I just love Tempest's simplicity! 🌊

I'm finally converting aggregate to Tempest, and I'm migrating data between two databases, super easy 🤩

17.09.2025 09:16 — 👍 7    🔁 2    💬 0    📌 0

In the next few days. Still needs to be written 🙂

17.09.2025 09:40 — 👍 1    🔁 0    💬 0    📌 0
Post image Post image Post image

🚀 I just deployed Oh Dear’s (ohdear.app) MCP server.

Here are a couple of example prompts:
“Analyse the performance of spatie.be”
“Show me the trends of the lighthouse reports”
“Which DNS records changed recently”

📚 Here are the docs: https://ohdear.app/docs/integrations/oh-dear-mcp-server

17.09.2025 09:39 — 👍 4    🔁 0    💬 0    📌 0

@freek is following 20 prominent accounts