What to do when the debugger has a bug? That’s the question I had to answer when my GitHub notifications went haywire because a new version of Xdebug was crashing FrankenPHP and therefore all the projects that use it. Together, we’ll retrace the epic story of this debugging debugger and discover a method that can…
Category: Talks
Containerization Tips and Tricks for PHP apps
API Platform was one of the first PHP frameworks to provide native support for Docker, Docker Compose, Kubernetes, and, more recently, Skaffold. The API Platform skeleton also served as the basis for Symfony Docker, the most popular solution for containerizing Symfony projects. These years of developing skeletons compatible with dev environments, continuous integration chains, and…
Front-end application development, Symfony-style(s)
We recently introduced the AssetMapper component and Symfony UX to make the most of the web platform and reduce the amount of JavaScript code to the absolute minimum. This “radically simple” approach is generally the most efficient, and should be the go-to method for most new Symfony applications. However, API-based, JavaScript-heavy applications are still inevitable…
Running Laravel Apps With FrankenPHP (Laracon EU)
Here’s the talk I gave at Laracon EU 2023: And here are the slides:
PHP and Symfony Apps As Standalone Binaries
Distributing PHP applications is quite complicated. For instance, to run a Symfony project in production, a web server, the PHP engine, and the appropriate PHP extensions need to be installed. Their versions and configurations must be compatible with the app. Because PHP is an interpreted language, the application source code must also be available. Composer…
Webperf: Boost Your PHP Apps With 103 Early Hints
Google Chrome, Firefox, Caddy, and Apache now support a new HTTP status code: 103 Early Hints. Since version 6.3, Symfony also supports 103 responses, and FrankenPHP also supports it natively. This new, rather unusual type of response has a single objective: to speed up the loading time of your websites and applications by allowing the…
Mitigate Attacks on your PHP Supply Chain
Here are the slides I presented at the AFUP Day Lille 2023 and the companion Pull Request on Composer: Abstract When you install a JavaScript library, it usually comes with hundreds of transitive dependencies, i.e. libraries that are installed as a side effect because they are essential to the operation of the library you want…
FrankenPHP: The Modern Php App Server, written in Go
Today I released FrankenPHP during the ForumPHP conference. FrankenPHP is a new app server for PHP apps (built on top of Caddy) and a library to embed the PHP interpreter in Go web servers. Key features: Learn more in this slide deck, on the website and on GitHub! SymfonyCon version: Recording of the talk (in…
API Platform 3 Is Released!
Antoine Bluchet and I have just released the new major version of API Platform during the opening keynote of the API Platform Conference! As usual, API Platform 3 can be downloaded directly from our GitHub page. This version comes with many major features that are being presented at the conference. Say hello to API Platform…
Building Decentralized Web Apps with Solid and PHP
At SymfonyLive Paris, I introduced a new PHP library to build Solid applications: Solid Client PHP. In this presentation, I present the Solid protocol and how it could give back the control of their personal data to end-users. View the recording (slides in English, talk in French). This presentation is about decentralized web applications, but…