Optimization and Trust
A reader on LinkedIn replied to my previous article with this astute comment:
The Fill-it-up is optimized to eliminate the annoying delay when someone didn’t bother to fill up the Half-and-half after they emptied it. Which is why I bought one. Because that happens all the time.
That's exactly what the Fill-it-Up model is optimized for, and it illustrates my point.
The reader's complaint is about his officemates leaving the Half-and-Half pitcher empty, which means that the next person has to fill up the top chamber and wait for it to filter to the bottom before he can pour his water. In the context of that specific problem, the Fill-it-Up model makes sense. However, the overall affect of switching to the Fill-it-Up is a net negative to the team. Now EVERYONE has to wait for their water to filter on the way out of the pitcher whenever they pour. On the whole, developer time spent per glass of water has gone up.
The overwhelming benefit of the Half-and-Half model is that it filters water while it is unattended. Our reader's complaint is with the way that his teammates are using the device, not with the device itself. To solve the problem optimally, the team would continue to use the Half-and-Half pitcher and ensure that everyone consistently topped it off after they'd poured their glass. This is easier said than done, obviously, which is probably why the Fill-it-Up model exists in the first place.
It's difficult to change someone's behavior by mandate. A team that performs well has routines that build trust in each other and allow for periodic introspection. A water filter is a trivial example but let's use it as an analogue for the team's main purpose, with the production of filtered water as a stand-in for working software. If your team is aligned in their purpose to produce filtered water, and they have the space to examine their own practices, one developer could certainly say this:
*"I notice that the water filter is frequently left empty in the fridge. This creates a bottleneck for the next developer to filter their water, and it's slowing down the whole team's progress. How can we ensure that the pitcher gets refilled regularly?"*
This opens a conversation where the entire team is now invested in improving outcomes, which will generate more accountability than a top-down mandate or a passive-aggressive note left on the fridge.
I'll talk more about how to build these routines in the next post.