Skip to main content

📘 Understanding Drupal: A Complete Guide to Caching Layers — my new book is out now!

[2018-03-11]

Flush and run, using Kernel::TERMINATE to improve page speed performance

#drupal #performance #drupal-commerce

At DrupalCon Dublin I caught Fabianx’s presentation on streaming and other awesome performance techniques. His presentation explained how BigPipe worked to me, finally. It also made me aware of the fact that, in Drupal, we have mechanisms to do expensive procedures after output has been flushed to the browser.

[2018-02-25]

GoLand IDE and local vendor directories

#golang #goland
At Florida DrupalCamp, I got to talk to the DRUD team. They were demoing their DDEV tool, which is an open source local development stack. For a while I have been using my own platform-docker tool, which is a PHP based tooling command I used for scaffolding Docker, running Behat, and more. Instead of maintaining my already unmaintained tool, I decided to give DDEV a try and contribute back some things which I considered experience fixes.
[2018-02-23]

Joining the POSSE

#posse #buffer
A few days ago Dries posted To PESOS or to POSSE. I have been working on trying to blog more. And so far I have been successful. I have read his plans to implement POSSE. My goal is to follow some of the same patterns. In fact, that's the purpose of the trial-run post!
[2018-02-07]

Drupal 8 controller callback argument resolving explained

#drupal #debug
Drupal 8 has a robust routing system built on top of Symfony components. Robust can be taken in many ways. It's powerful and yet magical, making it confusing at times. There is a lot of great documentation on Drupal.org which covers the routing system, route parameters, and highlights of the underlying functionality. But the magic isn't fully covered. So, let's explore.
[2018-01-31]

Running Behat tests from CircleCI to a Platform.sh environment

#drupal #platformsh #circleci #ci #behat
In client projects, I push for as much testing as possible. In Drupal 8 we finally have PHPUnit, which makes life grand and simpler. We use Kernel tests to run through some basic integration tests using a minimally bootstrapped database. However, we need Behat to cover behavior and functional testing on an existing site for speed and sanity reasons.
[2018-01-23]

Soonish: A humorous and insightful look to emerging technologies

#book

SOONISH highlights ten emerging technologies that can make our life awesome, or appear awesome and ruin everything. The book ranges from wrangling asteroids to mine like space cowboys all the way to being able to plug your brain into The Cloudâ„¢ so we can share emotional feels and stuff. 

[2018-01-20]

Drupal, Coffee, Burgers - A small world afterall

#coffee #drupal
This year I joined a coffee exchange for some members of the Drupal community. I had known there was one floating around, but finally got signed up. Over the past two years, I have gotten more and more into coffee - being a coffee snob about roasts and learning brewing techniques. Last week we were paired up. And sent out some roasts.
[2018-01-17]

Attributing RSS traffic on your Drupal site using UTM

#drupal #rss #analytics
It seems like RSS is not quite as a buzz as it once was, years ago. There are reasons for that, but I partly believe it is because more services mask direct RSS feed subscriptions in larger aggregate tools. This change also makes it more interesting to get analytics about where that traffic is coming from, and what feed. When I migrated my site to Drupal 8, I decided to take an adventure on adding UTM parameters to my RSS feeds.