Book Review: Site Reliability Engineering I recently finished reading "Site Reliability Engineering: How Google Runs Production Systems". This book, also known as the SRE book, is full of thought-provoking and useful advice, even for teams running systems smaller than Google's infrastructure (which is pretty much…
How to remove a category group via migration in Craft CMS v3 We are using Craft CMS for a client website that is too complicated for Wordpress and not complex enough for Drupal. One of the great things about Craft is that they've thought about how to move configuration from development to production.…
Building an Alexa Skill For a recent hackfest, I experimented with Alexa, Amazon's voice UX software offering. Specifically, I tried to add a skill to Alexa. For an idea of what you can do with skills, you can check out the Amazon Alexa Blueprints. However,…
WordPress Gutenberg Custom Block Build Environment What is Gutenberg Ever since the first version, WordPress has had one editor field to rule them all. Developers have since hacked and pushed in more functionality with plugins and leveraging short-codes in increasingly creative ways. Finally, WordPress is aiming…
GopherCon – A Beginner’s View I recently attended GopherCon 2018. This conference brings together a large community centered around the Go language. I wanted to share a beginner's view of the conference, as this was the first one I've attended, and I've only been working…
Running a remote hackfest Hackfests (or hackathons or hack weeks) are a great way to refresh your team, explore new technologies in a low impact manner, and built connections between people. More on hackfests here. I've previously run and been part of in person…
Why We Do Code Review Code review is a key part of our development process. All code changes should go through code review before they are released. Sometimes it feels hard to justify waiting for another developer to take the time to do a code…
Give ‘Future You’ the gift of documentation Ah, documentation. Whenever starting a project or picking one up, I love to read the docs. However, someone has to write and maintain those documents. Depending on who the audience is (and how big the company is), it may be…
Designing systems to help remote workers share skills Working in a remote company makes it more difficult to have the regular "tap the person on the shoulder" interaction that sometimes leads to knowledge transfer. You also don't have the (sometimes noisy) osmosis process that can take place when…
Issues with Accessing a Remote API in Drupal7 Recently, we ran into a bizarre issue with a Drupal7 installation that we work on, but don't fully control. A module was pulling a remote JSON API and presenting it inside the Drupal application. To retrieve the API, we were…