WIP limits in a nutshell

This is the whiteboard diagram I have repeated the most in my career. Stop doing so much at once and you’ll deliver value sooner.

December 9, 2023 · 1 min · Rich Lafferty

Four stars and a horse ⭐️⭐️⭐️⭐️🐴

This is one of my favorite bugs, and because of various website redesigns it’s all but fallen off the internet, so noting here for posterity. I was reminded of it earlier today talking with a friend about what “four and a half nines” means in reliability, and I suggested “four nines and a horse” and got to introduce him to this bug! Back in May 2014, Etsy had a bug where they accidentally replaced their half-star image in ratings with a horse....

November 18, 2023 · 1 min · Rich Lafferty
A bowl of date fruits.

Four Kinds of Dates

Software engineers always seem to resist talking about dates. Estimating is hard, but it is also dangerous – sometimes you make an estimate and the next thing you know it’s a deadline that has consequences if missed! But you never committed to anything! What happened? People are imprecise when they talk about dates, and interpret things to meet their needs. A while ago I learned1 about a model of four kinds of dates which can help avoid misinterpretations....

November 11, 2023 · 3 min · Rich Lafferty

Alarm fatigue and ignorable warnings

We had a minor Major Incident* today, and it was a nice little example of alarm fatigue. A service — which was thankfully not in use yet — just up and stopped running in production. No sign of it where it used to be in Kubernetes or even in ArgoCD. Thankfully, when we spun up the major incident process, someone had an “oh… oh no” moment and realized that they’d done a terraform apply in what should’ve been an unrelated repo right around the time the incident started and proactively joined the call....

April 28, 2023 · 4 min · Rich Lafferty

ChatGPT, Python and Misplaced Confidence

I had an amazing encounter with the ChatGPT AI today. Someone on the Halihax slack who was working on today’s Advent of Code challenge was bemoaning the absence of a way to tell a Python list comprehension to stop after the first N iterations. That didn’t seem completely unreasonable, but I didn’t know how to do it, so I thought I’d find out if ChatGPT knew how. For those unfamiliar with list comprehensions: in Python there is a convenient syntax for working with lists, so that instead of writing something like...

December 8, 2022 · 14 min · Rich Lafferty