Closely linked to Quality is consistency, the ability to create a continual level of expectation from one’s output.   We demand consistency from pretty much everything we touch.  

Every time we get in our car, and turn the key, we expect the car to burst into life and then take us on our journey.  We expect the chair we sit in, to support our weight each and every time.   Can you imagine how different your life would be without that consistent level of service?   Would you dare sit down as often?  How late you always be if the car didn’t burst into life most of the time?  You would be irritated to say the least.

This weekend was my annual weekend away with my son.   We go off on an adventure each year, and this year was no different, ending up in the heart of Bourbon country, Louisville, Kentucky in the USA.   All the big makes are here (Makers Mark, Jim Bean, etc.) as well as a number of smaller distillery’s.    As we undertook a number of tours and tastings, it struck me how much this industry has predicated itself on consistency and quality.  At each of the tastings we were taught what to look for, how to taste, how to swash in your mouth, as each of the flavors danced and tantalized your oral and nasal senses.

We got talking to the master distillery at a new bourbon distillery, Buzzard’s Roost and my son, spoke at length about the whole process and they traded stories back and forth (my son is a software engineer) about their respective worlds.  Creating a bourbon is not unlike building software, including the QA process (a rather pickled huge bearded chap who clearly loved his job).  

For them, their platform is the barrel, and there is a whole science that goes into how much charring (burning) of the wood they do, and how long they keep the distilled liquid in there.   Liquid goes in clear/white and comes out a number of years later the rich golden color we associate with whiskey and bourbon.  All the flavor is created from the choice of wood, the charring grade, and the time it stays in the barrel.

With so many different, complicated processes, how do they maintain such a level of consistency, so by the time it is poured to be consumed, it can be the familiar smell and taste the consumer has come to expect.  Imagine pouring your favorite drink, but each time, it would taste different?   The distiller explained to us how at each stage of the process, it is reviewed and rated against where they would expect it to be.   As the barrel ages, the room for error gets smaller and smaller.

If something goes wrong at the later stages, then that is a huge investment in time and money that can’t be redone, completely lost.   Their QA process involves many different people, and if not everyone signs off after each step, then the barrel does not make it through.   Now, consider this is measured over years and the quality gates cannot be skipped, the risks of getting it wrong are huge.

The world of whisky/bourbon production has something to teach us, in the computing world.  The computing world is always a shadow of the real world; everything we do is modeled on something else.  Every design pattern, every algorithm can trace itself it to how we operate in the physical world.   This means we can get our inspiration from literally everything we interact with – including whisky!

In our world of producing and delivering software, we are all guilty of being quality lazy, some more than others.  What I mean by that is that we often rely on our QA team a little too much.  We rely on them to pick up on the areas the developer should have spotted in the first place.  Often though, a QA person doesn’t see the level of detail that a developer does, which is a problem, especially when quality gates are missed at a code level.   A developer may not think to add in extra checking for data coming into a function, and if the QA person doesn’t tread a given path for the execution to get triggered, that function becomes, effectively a ticking time bomb – waiting to blow up.

The world of whisky/bourbon production has something to teach us, in the computing world

Consistency is what drives quality.  As we build up our applications, built on top of layers of code, we have to make sure each stage has a strong quality control check, just like our distillers making their bourbon.  This quality layer is not a QA person, but you, the producer of that given output.   Whether you are cutting code, producing an XLS model, a wiki article, a product design, or even an email, a quality control check, ensures your overall consistency gets stronger.

You want to be known for your consistency and that starts with taking that little extra time, to review your own output.   Small steps can make a huge difference.