# freek.dev - all blogposts

All blogposts on freek.dev

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## What's New in PHP 8.6

DevFeed: [What's New in PHP 8.6](<https://devfeed.tech/articles/what-s-new-in-php-8-6-33305.md>)

Original publisher: [Read original article](<https://freek.dev/3192-whats-new-in-php-86>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-09-16T12:30:30Z

Content type: release

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [PHP 8.6](<https://devfeed.tech/topics/php-8-6.md>), [PHP](<https://devfeed.tech/topics/php.md>), [function](<https://devfeed.tech/topics/function.md>)

Tags: [improvements](<https://devfeed.tech/tags/improvements.md>), [language](<https://devfeed.tech/tags/language.md>), [php](<https://devfeed.tech/tags/php.md>), [php-8-6](<https://devfeed.tech/tags/php-8-6.md>), [standard-library](<https://devfeed.tech/tags/standard-library.md>)

### AI overview

An overview of upcoming PHP 8.6 changes, including partial function application, clamp(), the Duration class, and other language and standard library improvements.

### Source excerpt

A concise overview of what's coming in PHP 8.6, including partial function application, clamp(), the new Duration class, and several smaller language and standard library improvements. Read more

## Logarithmic auto-scaling for Laravel Horizon

DevFeed: [Logarithmic auto-scaling for Laravel Horizon](<https://devfeed.tech/articles/logarithmic-auto-scaling-for-laravel-horizon-33304.md>)

Original publisher: [Read original article](<https://freek.dev/3191-logarithmic-auto-scaling-for-laravel-horizon>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-09-12T12:30:30Z

Content type: article

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Laravel](<https://devfeed.tech/topics/laravel.md>), [realtime](<https://devfeed.tech/topics/realtime.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [horizon](<https://devfeed.tech/tags/horizon.md>), [laravel](<https://devfeed.tech/tags/laravel.md>), [performance](<https://devfeed.tech/tags/performance.md>), [queues](<https://devfeed.tech/tags/queues.md>), [realtime](<https://devfeed.tech/tags/realtime.md>), [scaling](<https://devfeed.tech/tags/scaling.md>)

### AI overview

This article explains how logarithmic auto-scaling can be added to Laravel Horizon. Log-based weighting helps prevent large queue spikes from starving smaller realtime queues while still allocating enough workers to large backlogs.

### Source excerpt

A thoughtful write-up on adding logarithmic auto-scaling to Laravel Horizon. It shows how log-based weighting keeps huge queue spikes from starving smaller realtime queues while still giving large backlogs enough workers. Read more

## Eloquent Performance and Database Design: Evidence Before Eager Loading

DevFeed: [Eloquent Performance and Database Design: Evidence Before Eager Loading](<https://devfeed.tech/articles/eloquent-performance-and-database-design-evidence-before-eager-loading-33303.md>)

Original publisher: [Read original article](<https://freek.dev/3190-eloquent-performance-and-database-design-evidence-before-eager-loading>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-09-11T12:30:27Z

Content type: tutorial

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Eloquent ORM](<https://devfeed.tech/topics/eloquent.md>), [Database](<https://devfeed.tech/topics/database.md>), [Laravel](<https://devfeed.tech/topics/laravel.md>), [PHP](<https://devfeed.tech/topics/php.md>)

Tags: [database](<https://devfeed.tech/tags/database.md>), [eager-loading](<https://devfeed.tech/tags/eager-loading.md>), [eloquent](<https://devfeed.tech/tags/eloquent.md>), [indexes](<https://devfeed.tech/tags/indexes.md>), [laravel](<https://devfeed.tech/tags/laravel.md>), [optimization](<https://devfeed.tech/tags/optimization.md>), [performance](<https://devfeed.tech/tags/performance.md>), [php](<https://devfeed.tech/tags/php.md>), [query](<https://devfeed.tech/tags/query.md>)

### AI overview

A practical deep dive into improving Eloquent performance and database design for a growing team dashboard. It covers detecting N+1 queries, choosing aggregates and indexes, inspecting query plans, pagination, chunking, and transaction boundaries.

### Source excerpt

A deep dive into Eloquent performance, from detecting N+1 queries to choosing aggregates, indexes, query plans, pagination, chunking, and transaction boundaries for a growing team dashboard. Read more

## Laravel Queue Gotchas Collected from Experience

DevFeed: [Laravel Queue Gotchas Collected from Experience](<https://devfeed.tech/articles/a-series-of-unfortunate-jobs-33302.md>)

Original publisher: [Read original article](<https://freek.dev/3189-a-series-of-unfortunate-jobs>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-09-10T12:06:27Z

Content type: tutorial

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Laravel](<https://devfeed.tech/topics/laravel.md>), [gotchas](<https://devfeed.tech/topics/gotchas.md>)

Tags: [best-practices](<https://devfeed.tech/tags/best-practices.md>), [gotcha](<https://devfeed.tech/tags/gotcha.md>), [gotchas](<https://devfeed.tech/tags/gotchas.md>), [laravel](<https://devfeed.tech/tags/laravel.md>), [practical](<https://devfeed.tech/tags/practical.md>), [queues](<https://devfeed.tech/tags/queues.md>)

### AI overview

An article about gotchas in Laravel queues that the author says they collected through experience.

### Source excerpt

Laravel queues are great out of the box, until they bite. Over the years I've collected a few gotchas the hard way. Let me save you the headache. Read more

## Run AI in the Browser: A Practical Guide to Transformers.js

DevFeed: [Run AI in the Browser: A Practical Guide to Transformers.js](<https://devfeed.tech/articles/run-ai-in-the-browser-a-practical-guide-to-transformers-js-33301.md>)

Original publisher: [Read original article](<https://freek.dev/3188-run-ai-in-the-browser-a-practical-guide-to-transformersjs>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-09-09T14:50:26Z

Content type: tutorial

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [transformers.js](<https://devfeed.tech/topics/transformers-js.md>), [browser](<https://devfeed.tech/topics/browser.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [AI Models](<https://devfeed.tech/topics/ai-models.md>), [Back end](<https://devfeed.tech/topics/backend.md>), [API keys](<https://devfeed.tech/topics/api-keys.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ai-models](<https://devfeed.tech/tags/ai-models.md>), [api-keys](<https://devfeed.tech/tags/api-keys.md>), [article](<https://devfeed.tech/tags/article.md>), [backend](<https://devfeed.tech/tags/backend.md>), [browser](<https://devfeed.tech/tags/browser.md>), [guide](<https://devfeed.tech/tags/guide.md>), [internet](<https://devfeed.tech/tags/internet.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [js](<https://devfeed.tech/tags/js.md>), [machine-learning](<https://devfeed.tech/tags/machine-learning.md>), [practical](<https://devfeed.tech/tags/practical.md>), [run](<https://devfeed.tech/tags/run.md>), [transformers](<https://devfeed.tech/tags/transformers.md>), [transformers-js](<https://devfeed.tech/tags/transformers-js.md>)

### AI overview

A practical guide to Transformers.js, covering how it runs AI models directly in the browser, available models, and the trade-offs of client-side AI compared with traditional AI providers.

### Source excerpt

Transformers.js lets you run AI models directly in the browser without a backend, API keys, or an internet connection after the model is cached. The article explores how it works, which models are available, and the trade-offs of client-side AI compared to traditional AI providers. Read more

## Using AI as a deterministic translation tool in Laravel

DevFeed: [Using AI as a deterministic translation tool in Laravel](<https://devfeed.tech/articles/using-ai-as-a-deterministic-translation-tool-in-laravel-33300.md>)

Original publisher: [Read original article](<https://freek.dev/3186-using-ai-as-a-deterministic-translation-tool-in-laravel>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-09-07T12:53:24Z

Content type: tutorial

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Laravel](<https://devfeed.tech/topics/laravel.md>), [Chain-of-thought](<https://devfeed.tech/topics/chain-of-thought.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [execution](<https://devfeed.tech/tags/execution.md>), [laravel](<https://devfeed.tech/tags/laravel.md>), [php](<https://devfeed.tech/tags/php.md>), [reasoning](<https://devfeed.tech/tags/reasoning.md>)

### AI overview

The article explains how to split a translation task into reasoning and execution steps to produce more deterministic behavior from a non-deterministic AI model in Laravel.

### Source excerpt

Split a task into reasoning and execution to get deterministic behaviour out of a non-deterministic model. Read more

## Digital Sovereignty Is Written in PHP

DevFeed: [Digital Sovereignty Is Written in PHP](<https://devfeed.tech/articles/digital-sovereignty-is-written-in-php-33299.md>)

Original publisher: [Read original article](<https://freek.dev/3185-digital-sovereignty-is-written-in-php>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-09-04T12:30:28Z

Content type: article

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [PHP](<https://devfeed.tech/topics/php.md>), [digital sovereignty](<https://devfeed.tech/topics/digital-sovereignty.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [digital-sovereignty](<https://devfeed.tech/tags/digital-sovereignty.md>), [government](<https://devfeed.tech/tags/government.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [php](<https://devfeed.tech/tags/php.md>), [strategy](<https://devfeed.tech/tags/strategy.md>)

### AI overview

The article discusses how PHP is used by government in the context of digital sovereignty.

### Source excerpt

An interesting article on how PHP is used by the government. Read more

## Build Your Own AI-Powered Slack Bot with the Laravel AI SDK

DevFeed: [Build Your Own AI-Powered Slack Bot with the Laravel AI SDK](<https://devfeed.tech/articles/build-your-own-ai-powered-slack-bot-with-the-laravel-ai-sdk-33298.md>)

Original publisher: [Read original article](<https://freek.dev/3184-build-your-own-ai-powered-slack-bot-with-the-laravel-ai-sdk>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-31T12:59:25Z

Content type: tutorial

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Laravel](<https://devfeed.tech/topics/laravel.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [SDK](<https://devfeed.tech/topics/sdk.md>), [Slack](<https://devfeed.tech/topics/slack.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [build](<https://devfeed.tech/tags/build.md>), [knowledge-base](<https://devfeed.tech/tags/knowledge-base.md>), [laravel](<https://devfeed.tech/tags/laravel.md>), [php](<https://devfeed.tech/tags/php.md>), [providers](<https://devfeed.tech/tags/providers.md>), [sdk](<https://devfeed.tech/tags/sdk.md>), [slack](<https://devfeed.tech/tags/slack.md>), [spatie](<https://devfeed.tech/tags/spatie.md>), [tasks](<https://devfeed.tech/tags/tasks.md>), [tools](<https://devfeed.tech/tags/tools.md>)

### AI overview

A tutorial on building an AI-powered Slack bot with the Laravel AI SDK. The bot can switch AI providers, answer questions, execute tasks, and retrieve information from a controlled knowledge base.

### Source excerpt

In this article, we'll build an AI-powered Slack bot with the Laravel AI SDK. Unlike tools such as Claude Tag, it can switch AI providers, answer questions, execute tasks, and retrieve information from a knowledge base you control. Read more

## Is AI going to steal my job as a design engineer?

DevFeed: [Is AI going to steal my job as a design engineer?](<https://devfeed.tech/articles/is-ai-going-to-steal-my-job-as-a-design-engineer-33297.md>)

Original publisher: [Read original article](<https://freek.dev/3183-is-ai-going-to-steal-my-job-as-a-design-engineer>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-25T12:30:28Z

Content type: opinion

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Job](<https://devfeed.tech/topics/job.md>)

Tags: [agents](<https://devfeed.tech/tags/agents.md>), [ai](<https://devfeed.tech/tags/ai.md>), [automation](<https://devfeed.tech/tags/automation.md>), [career](<https://devfeed.tech/tags/career.md>), [craft](<https://devfeed.tech/tags/craft.md>), [design](<https://devfeed.tech/tags/design.md>), [job](<https://devfeed.tech/tags/job.md>)

### AI overview

Tom Wilson reflects on how AI is changing the work of design engineers. He argues that AI agents may take over more scaffolding work, while human judgment, product taste, restraint, and polished visual craft remain important.

### Source excerpt

Tom Wilson reflects on what AI is changing for design engineers, and where human judgment still matters. He argues that agents can take over more of the scaffolding work, while product taste, restraint, and polished visual craft remain the real edge. Read more

## Modular Monoliths: Creating Real Boundaries Before Reaching for Microservices

DevFeed: [Modular Monoliths: Creating Real Boundaries Before Reaching for Microservices](<https://devfeed.tech/articles/modular-monoliths-creating-real-boundaries-before-reaching-for-microservices-33296.md>)

Original publisher: [Read original article](<https://freek.dev/3182-modular-monoliths-creating-real-boundaries-before-reaching-for-microservices>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-20T13:48:25Z

Content type: article

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Architecture & Design](<https://devfeed.tech/topics/architecture-design.md>), [Microservice](<https://devfeed.tech/topics/microservice.md>), [Database](<https://devfeed.tech/topics/database.md>)

Tags: [apis](<https://devfeed.tech/tags/apis.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [database](<https://devfeed.tech/tags/database.md>), [design-patterns](<https://devfeed.tech/tags/design-patterns.md>), [microservices](<https://devfeed.tech/tags/microservices.md>), [migration](<https://devfeed.tech/tags/migration.md>), [modular](<https://devfeed.tech/tags/modular.md>), [monolith](<https://devfeed.tech/tags/monolith.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

This article examines modular monoliths as a way to establish real architectural boundaries before adopting microservices. It covers module APIs, database ownership, cross-module communication, architecture tests, incremental migration, and signals that may justify a move to microservices.

### Source excerpt

A deep dive into modular monoliths, from module APIs and database ownership to cross-module communication, architecture tests, incremental migration, and the signals that justify microservices. Read more

## Immutability in PHP Beyond readonly

DevFeed: [Immutability in PHP Beyond readonly](<https://devfeed.tech/articles/immutability-in-php-beyond-readonly-33295.md>)

Original publisher: [Read original article](<https://freek.dev/3181-immutability-in-php-beyond-readonly>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-17T12:12:30Z

Content type: article

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [PHP](<https://devfeed.tech/topics/php.md>)

Tags: [best-practices](<https://devfeed.tech/tags/best-practices.md>), [deep-dive](<https://devfeed.tech/tags/deep-dive.md>), [design-patterns](<https://devfeed.tech/tags/design-patterns.md>), [immutability](<https://devfeed.tech/tags/immutability.md>), [php](<https://devfeed.tech/tags/php.md>), [properties](<https://devfeed.tech/tags/properties.md>), [value](<https://devfeed.tech/tags/value.md>), [value-objects](<https://devfeed.tech/tags/value-objects.md>)

### AI overview

A deep dive into immutability in PHP, covering readonly properties, interior mutability, immutable value objects and collections, dates, cloning, boundaries, and testing.

### Source excerpt

A deep dive into immutability in PHP, from readonly properties and interior mutability to immutable value objects, collections, dates, cloning, boundaries, and testing. Read more

## Flare now uses OAuth for MCP, the CLI, and API

DevFeed: [Flare now uses OAuth for MCP, the CLI, and API](<https://devfeed.tech/articles/flare-now-uses-oauth-for-mcp-the-cli-and-api-33294.md>)

Original publisher: [Read original article](<https://freek.dev/3180-flare-now-uses-oauth-for-mcp-the-cli-and-api>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-15T10:30:29Z

Content type: release

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Model Context Protocol](<https://devfeed.tech/topics/model-context-protocol.md>), [OAuth](<https://devfeed.tech/topics/oauth.md>), [Access Control](<https://devfeed.tech/topics/access-control.md>), [API](<https://devfeed.tech/topics/api.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>)

Tags: [access-control](<https://devfeed.tech/tags/access-control.md>), [api](<https://devfeed.tech/tags/api.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [cli](<https://devfeed.tech/tags/cli.md>), [flare](<https://devfeed.tech/tags/flare.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [security](<https://devfeed.tech/tags/security.md>)

### AI overview

Flare now uses OAuth to connect MCP clients, its CLI, and its API with scoped permissions rather than broad long-lived tokens. The flow supports read-only and project-level access control and centralizes connection management.

### Source excerpt

We explain how Flare now uses OAuth to connect MCP clients, the CLI, and the API with scoped permissions instead of broad long-lived tokens. The new flow makes setup faster, adds read-only and project-level access control, and gives you one place to manage every connection. Read more

## Tailwind's rem-Based Breakpoints and Their Accessibility Tradeoffs

DevFeed: [Tailwind's rem-Based Breakpoints and Their Accessibility Tradeoffs](<https://devfeed.tech/articles/can-we-make-default-tailwind-a-more-accessible-choice-33293.md>)

Original publisher: [Read original article](<https://freek.dev/3179-can-we-make-default-tailwind-a-more-accessible-choice>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-14T10:30:33Z

Content type: article

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Tailwind CSS](<https://devfeed.tech/topics/tailwind.md>), [Accessibility](<https://devfeed.tech/topics/accessibility.md>), [browser](<https://devfeed.tech/topics/browser.md>)

Tags: [accessibility](<https://devfeed.tech/tags/accessibility.md>), [accessible](<https://devfeed.tech/tags/accessible.md>), [best-practices](<https://devfeed.tech/tags/best-practices.md>), [browser](<https://devfeed.tech/tags/browser.md>), [css](<https://devfeed.tech/tags/css.md>), [responsive](<https://devfeed.tech/tags/responsive.md>), [tailwind](<https://devfeed.tech/tags/tailwind.md>)

### AI overview

This article examines Tailwind's default rem-based breakpoints and their accessibility tradeoffs. Browser font-size preferences can shift layouts, which may help some users, while px breakpoints remain a defensible choice.

### Source excerpt

A sharp look at Tailwind's default rem-based breakpoints, and the accessibility tradeoff they make. It explains how browser font-size preferences can shift layouts, why that can help some users, and why px breakpoints are still a defensible choice. Read more

## Why we removed AI solutions from Flare

DevFeed: [Why we removed AI solutions from Flare](<https://devfeed.tech/articles/why-we-removed-ai-solutions-from-flare-33292.md>)

Original publisher: [Read original article](<https://freek.dev/3178-why-we-removed-ai-solutions-from-flare>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-13T10:30:30Z

Content type: article

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [debug](<https://devfeed.tech/topics/debug.md>), [AI-assisted coding](<https://devfeed.tech/topics/ai-assisted-coding.md>), [MCP Server](<https://devfeed.tech/topics/mcp-server.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Documentation](<https://devfeed.tech/topics/documentation.md>)

Tags: [agent](<https://devfeed.tech/tags/agent.md>), [agents](<https://devfeed.tech/tags/agents.md>), [ai](<https://devfeed.tech/tags/ai.md>), [cli](<https://devfeed.tech/tags/cli.md>), [coding-agents](<https://devfeed.tech/tags/coding-agents.md>), [debug](<https://devfeed.tech/tags/debug.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [developers](<https://devfeed.tech/tags/developers.md>), [docs](<https://devfeed.tech/tags/docs.md>), [flare](<https://devfeed.tech/tags/flare.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [mcp-server](<https://devfeed.tech/tags/mcp-server.md>), [workflow](<https://devfeed.tech/tags/workflow.md>)

### AI overview

The article explains why Flare removed its former AI-generated solutions and replaced them with a workflow for debugging with modern coding agents. The new workflow uses an MCP server, CLI, Copy for AI prompts, and agent-friendly documentation.

### Source excerpt

We explain why Flare's old AI-generated solutions no longer fit the way developers debug with modern coding agents. The replacement is a better workflow built around the MCP server, CLI, Copy for AI prompts, and agent-friendly docs. Read more

## \`exit()\` may silently break your parallel tests

DevFeed: [\`exit()\` may silently break your parallel tests](<https://devfeed.tech/articles/exit-may-silently-break-your-parallel-tests-33291.md>)

Original publisher: [Read original article](<https://freek.dev/3177-exit-may-silently-break-your-parallel-tests>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-12T10:30:31Z

Content type: tutorial

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [PHPUnit](<https://devfeed.tech/topics/phpunit.md>), [Exception](<https://devfeed.tech/topics/exception.md>), [Processes](<https://devfeed.tech/topics/processes.md>)

Tags: [best-practices](<https://devfeed.tech/tags/best-practices.md>), [crash](<https://devfeed.tech/tags/crash.md>), [diagnostics](<https://devfeed.tech/tags/diagnostics.md>), [exception](<https://devfeed.tech/tags/exception.md>), [parallel](<https://devfeed.tech/tags/parallel.md>), [php](<https://devfeed.tech/tags/php.md>), [phpunit](<https://devfeed.tech/tags/phpunit.md>), [process](<https://devfeed.tech/tags/process.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

The article explains that calling exit() can cause parallel PHPUnit test workers to crash without useful diagnostics because the process ends outside PHPUnit's control. It recommends throwing an exception instead so the failure is reported with a stack trace.

### Source excerpt

Michael explains why exit() can make parallel test workers crash without useful diagnostics, and why verbose flags do not help when the process dies outside PHPUnit's control. The fix is simple: throw an exception instead, so the failure is reported normally with a stack trace. Read more

## Why Amp Became Sebastian's Default Coding Harness

DevFeed: [Why Amp Became Sebastian's Default Coding Harness](<https://devfeed.tech/articles/amped-up-33290.md>)

Original publisher: [Read original article](<https://freek.dev/3176-amped-up>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-11T10:30:28Z

Content type: opinion

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [coding](<https://devfeed.tech/topics/coding.md>), [User Experience](<https://devfeed.tech/topics/user-experience.md>)

Tags: [agents](<https://devfeed.tech/tags/agents.md>), [ai](<https://devfeed.tech/tags/ai.md>), [coding](<https://devfeed.tech/tags/coding.md>), [developer-experience](<https://devfeed.tech/tags/developer-experience.md>), [experience](<https://devfeed.tech/tags/experience.md>), [harness](<https://devfeed.tech/tags/harness.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [tools](<https://devfeed.tech/tags/tools.md>), [user-experience](<https://devfeed.tech/tags/user-experience.md>), [verification](<https://devfeed.tech/tags/verification.md>)

### AI overview

Sebastian explains why Amp became his default coding harness, emphasizing user experience over model churn and describing AGENTS.md changes that reduced overzealous verification during everyday coding.

### Source excerpt

Sebastian explains why Amp became his default coding harness, and why user experience now matters more to him than model churn. He also shares the AGENTS.md tweaks that reduced overzealous verification during day-to-day coding. Read more

## sbx: Sandboxed Claude, complete with PHP and tools

DevFeed: [sbx: Sandboxed Claude, complete with PHP and tools](<https://devfeed.tech/articles/sbx-sandboxed-claude-complete-with-php-and-tools-33289.md>)

Original publisher: [Read original article](<https://freek.dev/3175-sbx-sandboxed-claude-complete-with-php-and-tools>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-10T10:30:04Z

Content type: tutorial

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Claude Code](<https://devfeed.tech/topics/claude-code.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [AI-assisted coding](<https://devfeed.tech/topics/ai-assisted-coding.md>), [PHP](<https://devfeed.tech/topics/php.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>)

Tags: [agents](<https://devfeed.tech/tags/agents.md>), [ai](<https://devfeed.tech/tags/ai.md>), [ai-coding-agents](<https://devfeed.tech/tags/ai-coding-agents.md>), [claude](<https://devfeed.tech/tags/claude.md>), [claude-code](<https://devfeed.tech/tags/claude-code.md>), [docker](<https://devfeed.tech/tags/docker.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [php](<https://devfeed.tech/tags/php.md>), [sandboxing](<https://devfeed.tech/tags/sandboxing.md>), [security](<https://devfeed.tech/tags/security.md>), [setup](<https://devfeed.tech/tags/setup.md>), [tools](<https://devfeed.tech/tags/tools.md>)

### AI overview

A practical walkthrough of running Claude Code inside Docker's new sbx sandbox, including a custom PHP setup and additional tools for open source work. It also explains why sandboxing AI coding agents can be a sensible default.

### Source excerpt

A practical walkthrough for running Claude Code inside Docker's new sbx sandbox, with a custom PHP setup and extra tools for open source work. Benjamin also explains why sandboxing AI coding agents is the sensible default. Read more

## What's new in PHP 8.6

DevFeed: [What's new in PHP 8.6](<https://devfeed.tech/articles/what-s-new-in-php-8-6-33288.md>)

Original publisher: [Read original article](<https://freek.dev/3174-whats-new-in-php-86>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-05T12:14:26Z

Content type: article

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [PHP 8.6](<https://devfeed.tech/topics/php-8-6.md>), [PHP](<https://devfeed.tech/topics/php.md>), [API](<https://devfeed.tech/topics/api.md>), [function](<https://devfeed.tech/topics/function.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [features](<https://devfeed.tech/tags/features.md>), [function](<https://devfeed.tech/tags/function.md>), [improvements](<https://devfeed.tech/tags/improvements.md>), [news](<https://devfeed.tech/tags/news.md>), [php](<https://devfeed.tech/tags/php.md>), [php-8-6](<https://devfeed.tech/tags/php-8-6.md>)

### AI overview

The article surveys notable additions coming in PHP 8.6, including partial function application, a new polling API, readonly property defaults, and smaller improvements and deprecations.

### Source excerpt

Brent surveys the most notable additions coming in PHP 8.6, including partial function application, the new polling API, readonly property defaults, and several smaller improvements and deprecations. Read more

## Prevent cognitive debt by manually retyping LLM-generated code

DevFeed: [Prevent cognitive debt by manually retyping LLM-generated code](<https://devfeed.tech/articles/prevent-cognitive-debt-by-manually-retyping-llm-generated-code-33287.md>)

Original publisher: [Read original article](<https://freek.dev/3173-prevent-cognitive-debt-by-manually-retyping-llm-generated-code>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-04T12:56:26Z

Content type: opinion

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Large Language Model](<https://devfeed.tech/topics/llm.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [best-practices](<https://devfeed.tech/tags/best-practices.md>), [code](<https://devfeed.tech/tags/code.md>), [code-quality](<https://devfeed.tech/tags/code-quality.md>), [cognitive-load](<https://devfeed.tech/tags/cognitive-load.md>), [developer-experience](<https://devfeed.tech/tags/developer-experience.md>), [llm](<https://devfeed.tech/tags/llm.md>), [model](<https://devfeed.tech/tags/model.md>), [practical](<https://devfeed.tech/tags/practical.md>), [prevent](<https://devfeed.tech/tags/prevent.md>), [understand](<https://devfeed.tech/tags/understand.md>)

### AI overview

Ankur Sethi argues that manually retyping code generated by large language models can help developers understand the code, identify poor suggestions, and maintain a strong mental model of their codebase, despite slowing development.

### Source excerpt

Ankur Sethi argues that manually retyping LLM-generated code is a practical way to avoid cognitive debt. It slows you down, but helps you understand the code, catch bad suggestions, and keep a strong mental model of your codebase. Read more

## We Became Editors-in-Chief, and Nobody Trained Us

DevFeed: [We Became Editors-in-Chief, and Nobody Trained Us](<https://devfeed.tech/articles/we-became-editors-in-chief-and-nobody-trained-us-33286.md>)

Original publisher: [Read original article](<https://freek.dev/3172-we-became-editors-in-chief-and-nobody-trained-us>)

Author: Freek Van der Herten (freek@spatie.be)

Published: 2026-08-03T14:56:25Z

Content type: opinion

Language: en

Sources: [freek.dev - all blogposts](<https://devfeed.tech/sources/freek-dev-all-blogposts.md>)

Topics: [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Development](<https://devfeed.tech/topics/development.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [career](<https://devfeed.tech/tags/career.md>), [code](<https://devfeed.tech/tags/code.md>), [code-review](<https://devfeed.tech/tags/code-review.md>), [developer-experience](<https://devfeed.tech/tags/developer-experience.md>), [development](<https://devfeed.tech/tags/development.md>), [essay](<https://devfeed.tech/tags/essay.md>), [soft-skills](<https://devfeed.tech/tags/soft-skills.md>), [writing-code](<https://devfeed.tech/tags/writing-code.md>)

### AI overview

An essay examines how AI-assisted development shifts engineers from writing code toward reviewing AI-generated diffs. It argues that this change creates cognitive fatigue and may widen the gap between senior and junior engineers.

### Source excerpt

An essay on how AI-assisted development turns engineers into full-time reviewers. We spend our days evaluating AI-generated diffs instead of writing code, and that shift carries a new cognitive fatigue and may widen the senior/junior gap. Read more