Blog articles
Blogging about anything
My blog consists quite a lot of posts about the Drupal Open-University Initiative, teaching in general and my thoughts about the Drupal project in general
Thoughts on Using AI, a Few Months In
After a few months of using Claude Code on a large Drupal 11 migration project, I've gone from skeptic to cautious convert. It's caught indentation errors in YAML recipes, written boilerplate code that matched my own patterns, and even explained why my bash scripts were failing — not just how to fix them. But here's the thing: it only works well because I'm a senior developer who knows when Claude is wrong. Vibe coding without real expertise is a recipe for disaster. AI isn't going to replace you — but someone who knows how to use it just might.
Publishing Custom Drupal Modules and Recipes via GitLab's Composer Registry
If you build custom Drupal modules or recipes that don't belong on Drupal.org, GitLab's built-in Composer registry is the cleanest way to distribute them. This post walks through the two files every package repo needs, why your composer.json shouldn't carry a hardcoded version, the tag-and-publish flow, and how consuming sites pull the packages in.
Can Claude help us with the issue queue?
Can Claude (and other AI tools) really help us with refactoring old code and maybe even clear up a lot of problems in the issue queue?
Merge plugins with Composer
When modules have library dependencies (like the dropzone js module), the default behavior of composer is to put the dependency in the vendor folder instead of web/libraries. This article explains how to fix that
Drupal in a Day: Vienna
Hilmar Kári Hallbjörnsson, co-chair of the Drupal Open-University Initiative describes the unbelievable experience that happened at Drupal Con Vienna, 2025, when 60 students, non of them ever heard of Drupal before, attended a whole-day teaching about Drupal, in an event called Drupal in a Day