All of this content used to be spread over three different blogs at three different domains and it's now been merged into one. Why was it ever three? Because at the time it seemed reasonable that each of them was for a different audiences, and yet over time I've found that the lines between topic areas got blurrier and tended to overlap. So now they're all together in one place.

If you encounter things that seem broken, please let me know and I'll get them fixed.

Browse by topic area:


There's a lot here and if you're not sure where to start, here are some popular starting points. From these, you'll find crosslinks to even more topics. Enjoy!

Fixation errors

Back in the 1990’s, it wasn’t uncommon for people to check code into the repository that didn’t work. Sometimes it wouldn’t even compile.

Learning to say no

A team I was coaching was coming up on an important deadline. Specific functionality had been promised for a certain date that was now eight weeks away, and they wanted to know if they were going to make it.

All we are is change

We often hear that people are “resistant to change”, and yet as a friend of mine is fond of saying “all we are is change”.

Ability to deliver quickly

I was talking to a team that maintained a year-end batch process. Their code only ran once a year, on the first day of the new fiscal year.

Zero Bugs (Defects)

For many people, the notion of Zero Bugs seems like an unsustainable dream and yet the teams that do it are tremendously successful.

Validating assumptions

I was coaching a team once and I made a suggestion to one of the developers about something they could do differently. The actual suggestion isn’t important to the story so I’ll ignore that.

Premature optimization

In the early days of Java, I recall reading a book talking about performance characteristics of various things in Java. One of the tidbits that I latched onto was the suggestion that the default size of a Hashtable object was inefficient if it had to grow in size beyond the default.

Intent of standups / scrum meetings

The intent of a team standup/scrum meeting is to resynchonize on the work in progress and decide how we, as a team, are going to complete it. If your standup is horrible, then focus on the intent, not the format you’ve been doing. What would you have to change to make the meeting useful?

Fairness

We have a biological need for fairness. If we perceive a situation that is unfair, even if that unfairness doesn’t directly affect us, the anterior insula is activated1. The insula is a key part of our brain, relating to empathy2.

  1. Psychological Safety: The key to happy, high-performing people and teams by Radecki and Hull, 2018 

  2. Uddin LQ, Nomi JS, Hébert-Seropian B, Ghaziri J, Boucher O. Structure and Function of the Human Insula. J Clin Neurophysiol. 2017 Jul;34(4):300-306. doi: 10.1097/WNP.0000000000000377. PMID: 28644199; PMCID: PMC6032992.