Two weeks ago, from July 19 to 22, the Drupal Dev Days 2023 took place in Vienna.
The event welcomed just over 330 participants, which is a very good turnout, though it was a bit of a shame that the venue layout made it hard to feel that number.
Here is a summary of the sessions I attended. I mainly sprinted on the UI Suite ecosystem and gave a presentation on that same ecosystem.
Sessions
They come from the Future (frontend stuff)
A review of existing or upcoming features at the HTML, request/response header, CSS, and JavaScript levels:
- CSP (Content Security Policy) with the Security Kit or Content-Security-Policy modules
- WebP: potentially soon to be replaced by a new format
- CSS:
- Focus-visible (keyboard vs mouse)
- CSS layers
- Individual transform properties
- Container queries
- Range syntax for media queries
- Inert
- Color space
- Relative colors
- text-wrap: balance, pretty
- CSS nesting
- CSS toggle
- Web Authentication API
- View Transitions API
- Popover API: no more JS needed for this!
Drupal & Performance
A reminder that performance problems and optimizations need to be addressed at every level, application (server and client), and network. And that having a sense of order of magnitude matters.
For the perception of speed and prefetching:
Watch out for cache killers.
Diagnostic tools:
- phpbench
- h2load
- xhprof
- graphviz
Be careful with certain Drupal modules that manually declare psr-4 autoload in their composer.json file.
ECA, the no-code solution that empowers you to orchestrate your Drupal sites
A very thorough presentation of the ECA module's architecture by its main creator (whom I also got to chat with during the event, which was very enjoyable). A highly modular and extensible architecture thanks to numerous plugin types, designed to avoid infinite loops and optimized for performance.
I had briefly tested the module 3 or 4 months before the event, but the interface had somewhat thrown me off because I had a fairly complex use case, and discovering such an interface while tackling something complicated doesn't help when getting to grips with a module. Following my conversation with maintainer Jürgen Haas, I'll have to give it another try, as this no-code aspect (for personal projects in my case, for now) is really cool.
A Drupal inspired Render API for cloud and edge computing? An idea too crazy to fail.
A presentation of issues encountered with Drupal's Render API and a new format developed for the Dilla project.
The present and future of Drupal initiatives
An explanation of what an initiative means at the core or community level in Drupal.
UI Suite from the trenches: joys and struggles implementing a design system inside Drupal
My presentation of UI Suite best practices, which have been taking shape over several months with Pierre Dureau. After a recap of the different parts of design systems and their UI Suite counterparts, I presented identified best practices — some of which are still evolving depending on the state of the ecosystem.
A big thank you to the (almost) 40 people who attended my presentation, especially given that it was the first session slot on the last day :).
Here are the slides
UI Suite from the trenches - joys and struggles implementing a design system inside Drupal 4.15 MBNext Drupal admin UI improvements
A presentation of ongoing developments to rethink the administration menu, both its items and their presentation, in order to modernize it.
Also featured were reflections on improving the contributor experience, with an evaluation of the following modules:
Sprint
I was able to close the following tickets, either by doing the development myself or by reviewing pending merge requests:
- https://www.drupal.org/project/ui_suite_bootstrap/issues/3374862
- https://www.drupal.org/project/ui_skins/issues/3368935
- https://www.drupal.org/project/ui_suite_bootstrap/issues/3372436
- https://www.drupal.org/project/ui_suite_bootstrap/issues/3368834
- https://www.drupal.org/project/ui_suite_bootstrap/issues/3375784
- https://www.drupal.org/project/ui_skins/issues/3368958
- https://www.drupal.org/project/ui_suite_bootstrap/issues/3368772
- https://www.drupal.org/project/ui_skins/issues/3335428
What took up the most of my time (at least a full day...) was getting automated tests to pass on this ticket. The tests had been running fine, but creating a separate configuration form from the theme configuration form caused them to fail. Unable to find the root cause, the issue was ultimately worked around by splitting the test into several smaller tests, not ideal for test execution performance, but not a dealbreaker either.
In the end, we were able to release two new versions: UI Skins 1.0.0-alpha4, which introduced the concept of themes (light, dark, etc.), and UI Suite Bootstrap 5.0.0-alpha9, featuring among other things theme support.
Conclusion
A fairly productive event in terms of contribution, with progress made on UI Suite Bootstrap and UI Skins.
As always, it was a pleasure to reconnect with the Drupal community and exchange ideas. In the end, the feeling of being far fewer than 330 participants gave the event a somewhat intimate quality, which made it easier to approach people who are often in high demand.
Worth noting this year: an excellent session recording system that made videos available almost immediately after each session ended!
Thanks to the organizers, sponsors, participants, and to Smile for sending me there.
Photos: https://www.flickr.com/groups/ddd23/
Videos: https://www.youtube.com/playlist?list=PL9_3w34sKcM16zdp5viU4NEV8Q26LF6o9