Skip to content ↓

Laracon EU 2026 Recap

• 5 min read

It has already been a week since Laracon EU 2026 ended. I attended with the whole Trenda-team, and we remained in Amsterdam for the rest of the week to work on some projects there.

Laracon is always a great event. I saw many familiar faces from previous installments, internet friends who live far away. And this time I tried to make an effort and talk to more people than usual. (Still forgot to take any selfies.)

The talks this year were great. There were only 1 or 2 which I think weren’t a hit.

The following talks were especially great, and I will have to watch the VOD (Day 1, Day 2) again and take notes:

Dan Harrin: “Write better abstractions: lessons from an import system” #

Dan basically presented how they decide how to abstract functionality in Filament PHP. Their approach of Description over Instructions was brilliantly explained in his talk.

Definitely something I would like to adopt in my own packages as well as in work projects, where we build reusable components.

Ryan Chandler: “Handling the unhappy path” #

Ryan talked about some not-well-known features and functions of the Laravel framework.

One thing that stuck out was the… report() and response()-function on custom exceptions. I know and used these functions in projects before, but it was great seeing more people exposed to these features and a reminder that they exist.

Shortly after, Ryan launched lesserknownlaravel.com.

Tobias Petry: “One billion rows with Laravel“ #

As always, Tobias shined with great visual slides that complemented his talk perfectly.

He talked about TimescaleDB in PostgreSQL and how you can use aggregates to precompute large chunks of timeseries events.

Great talk and a good reminder to explore PostgreSQL more and maybe start migrating my MySQL databases.

Peter Suhm: “Unblocking your users with AI“ #

Peter shared some great practical tips on how to help your users get activated in your app.

He mentions the Three Points of Paralysis that users might feel:

  • The Blank State: “I don’t know where to start.”
  • The T-Junction: “I don’t know which one.”
  • The Maze: “I don’t know how to find it.”

Instead of showing users a cluttered UI, we might show them a prompt that helps them overcome the Blank State. He explained this with form builders. Instead of manually clicking things together, let the user describe the outcome they want and let the LLM generate a JSON structure for a form.

This shouldn’t replace the UI form builder, but give users a good starting point.

For the T-Junction, he used the same example with form builders. Maybe users don’t know if they have to select a radio or checkbox list for a field. If possible, let the app help your users and provide a good first guess. For the Maze, he built basically a little search agent that uses vector embeddings of form answers to answer questions like “Did visitors like the conference?”.

Simon Hamp & Shane Rosenthal: “NativePHP” #

I’ve bundled Simon and Shane here, as they both work on NativePHP and both gave talks about NativePHP.

What they accomplished in the last few months is amazing. They pushed through the negativity they received on Reddit and other social media sites and improved NativePHP more and more. Bundlesize and Android support got better.

And the advancements Shane showed in this talk – that they now create real-native C code and render real native iOS or Android elements was mind-blowing.

Simon dropped the phrase “Just give it 5 minutes” and it really stuck with me. I have an idea for a mobile companion app for a side project of mine and will definitely give NativePHP a shot.

Luke Kuzmish: “Effective Code Reviews: What NOT to Do“ #

Luke did a great talk reminding us all to take out the ego of code reviews. He mentioned:

  • Standardize the review process.
  • Automate as much as possible through code (linting, formatting, etc.).
  • Read your own pull request on your own and make sure the CI pipeline is green.
  • Use Conventional Comments as a guiding framework when leaving notes.

Was a good reminder to use Conventional Comments categorizes more in my code reviews again.

Joe Tannenbaum: “State of the Frontend” #

Joe gave us an update on the frontend tooling Laravel provides. He showcased some new Inertia features that are coming in the next major version.

I personally haven’t used Inertia yet. With my limited time, I get more done using Livewire and Filament. … but I really want to build at least one little project using Inertia. Maybe I will rewrite my little “read-it-later” app using Inertia one day, as that project already relies on being run in Livewire SPA mode.

John Drexler: “Ship to Production on DAY 1” #

John talks about how to tackle big projects by solving the hardest problems first and then shipping the changes to production fast – maybe behind a feature flag to make sure not all users see the changes yet.

The example he brought up is adding support for organizations in the Laravel Forge codebase. Adding this had major consequences to the database and required adding new columns to many tables. This is a hard problem that has to be tackled anyway. By solving it first, you already pushed a big rock out of the way of your project.

He also brings up the concept of a Mind Palace where you can discuss ideas and solutions, but reminds us to test these hypotheses by shipping to production early on. An assumption made 3 months ago might not hold up today.

The Strangler Pattern was also mentioned in which break your project down into vertical slides, small PRs that you can easily ship into production.

In general, a very good talk I have to revisit and take more notes on.


As you can see, it’s quite a list. I will have some note taking to do in the next few days.