Drupal developer, module maintainer, and profiler of slow things.
I am Luca, a Drupal developer based in Italy and lead developer at SparkFabrik. I maintain WebProfiler and Monolog, and I spend most of my time in the layer underneath a site: the container, the event dispatcher, the cache, and the queries nobody meant to run.
Reading the PHP that agents write
Agents write PHP faster than anyone can review it, and reviewing means following calls. PHPlumb is a code navigation engine built for that loop. It is fast on 40,000-file projects, it follows types through Drupal's service container, and it stays silent when it is not sure.
Domain logic on entities, without touching the entity
Entity Adapter attaches domain-specific behaviour to entities, and to any other object, with a PHP attribute and an interface of your own. No bundle class, no entity class override, no helper functions in a .module file.
Drupal in a long-running process
Drupal spends a request filling static caches and then throws the whole process away. Keep the process alive, in a Symfony Messenger worker or a FrankenPHP worker, and every one of those caches becomes a lie that outlives the work it was computed for.
Profiling AI provider calls in Drupal
WebProfiler now collects every call the AI module makes to a provider, with timings, tokens, guardrail verdicts and tool exchanges. Here is what it records and how it stays out of the AI module's way.
Maintains on drupal.org
-
- Project
- WebProfiler
- Role
- Maintainer
-
- Project
- Monolog
- Role
- Maintainer
-
- Project
- Search API Typesense
- Role
- Maintainer
-
- Project
- Devel
- Role
- Co-maintainer
Follow the blog
New posts go out through the feed. No newsletter, no tracking, no sign-up.
Subscribe by RSS