HomeArticlesWhat Are You Optimizing For?

What Are You Optimizing For?

Want to receive these updates in your inbox? Sign up for my mailing list using the form on the right. (or below if you're reading this on your phone)

In the fridge of my shared office are two water filter pitchers.

The older model is divided into two equal chambers, top and bottom. We'll call this model the Half-and-Half. You pour water in the top chamber and put it back in the fridge while the water filters down to the bottom chamber.

The newer model you fill completely from the sink and it filters the water as you pour it into the glass. We'll call this model the Fill-it-Up.

The Fill-it-Up holds more water, so you don't have to fill it up as often. There's no space wasted by multiple chambers. The Half-and-Half, by contrast, can only hold half its volume in water. The Fill-it-Up seems like a clear innovation in the world of refrigerated water filters.

But because the Fill-it-Up model filters as you pour, it takes FOREVER to pour a glass of water. With the Half-and-Half, I can pour my glass of water, refill the pitcher at the sink, put it back in the fridge, and be back at my desk in less than the amount of time it takes to pour a single glass from the Fill-it-Up.

Beware of optimizing for a single metric. Somebody decided that it would be an improvement for the new model of pitcher to hold more water, but in the process made it less useful. Keep track of the big picture, and make sure your end goals are clear.

Ben Wilhelm

Is your dev team working hard but not shipping? I can help.

I send a few emails per week with tips and ideas to help your team stop thrashing and start shipping reliable code consistently.
"What we got from Ben was more than just expertise: it was expertise plus organized thinking, clear communication, good humor, and an obviously habitual willingness to listen before advising. We recommend him without reservation, and look forward to the next time we work with him ourselves."