Decision Making for Healthy Teams

Fri, March 04 2022

The way a team makes technical decisions plays an important role in the long term sustainability of the team.

Bestowing the responsibility to effectively communicate technical reasoning on the senior members of the team – while making decisions using an equal representation vote – is the least bad way and will help ensure a healthy team.


Introducing Wrapcheck: An error wrapping linter for Go

Fri, August 07 2020

So recently, after spending more time than I should hunting down the source of an error, I sparked the discussion within my team at work about how we can cut down on the time to debug, specifically, by making sure that errors aren't handed back to the caller without forgetting to attach extra information.

We already have a pretty good practice in place to wrap errors with additional info before we hand them up the stack, however this was missing in this particular case...


Kustomize: Traefik v2.2 as a Kubernetes Ingress Controller

Sun, June 14 2020

This post will go through how to deploy and configure Traefik v2.2 as the ingress controller for your Kubernetes cluster using Kustomize. Specifically without using the IngressRoute CRD, and instead opting to stick with the built-in Ingress Kubernetes resource.

Traefik publishes helm charts for deploying Traefik v1.7, however given Kustomize is now built into the latest versions of Kubectl, this guide will go over how you can use it...


Plane on a Treadmill

Thu, November 21 2019

Imagine in a frictionless environment, you have a plane on a runway sized treadmill. The plane sits at the beginning of the treadmill, as if prepared for a traditional takeoff.

However, instead of rolling forward as usual, as the plane begins to move, the treadmill moves backwards to match it. This happens perpetually. As the plane picks up forward velocity, the treadmill detects this and accelerates in the opposite direction...


Rust, a Raspberry Pi and Addressable LED's

Tue, July 09 2019

Back while I was living in New Zealand, I had a fair number of electronics projects on the go. This was one such project.

I'd been playing around with a couple of LED matrices bought from AliExpress. The LED's on one of the matrices were the very popular WS2812b variant. These panels are made up of addressable RGB LED's soldered to a flexible PCB, giving you three wires out the back -- data, 5V, and ground...


How to Delay RSI, by Building a Keyboard

Mon, May 27 2019

This is the story about how I solved my increasing problem with wrist pain. TLDR, I built a keyboard. And yes, I am crazy enough to rely on it at work as well. This is going to act as somewhat of a build overview.

RSI, or repetitive strain injury, is a pretty terrifying reality to confront as a programmer. It makes typing painful, long stretches of doing your job less than enjoyable. No one wants that...


Weekend in Germany, May 4th-5th 2019

Sat, May 11 2019

Some photos from a short weekend trip from Berlin to Halle and Leipzig. Being a bit of an architecture nerd, there are definitely too many photos of buildings still on the camera.