"We do not know the meaning of a concept unless we have a method of measurement for it." - The Logic of Modern Physics 1927 - Percy Williams Bridgman
"It is wrong to suppose that if you can’t measure it, you can’t manage it – a costly myth.” - W. Edwards Deming
W. Edwards Deming is known as the father of the quality movement and was hugely influential in post-WWII Japan. He is most well known for his theories of management and in particular Total Quality Management when it came to manufacturing automation. In Deming’s view, it was always better to focus on running a better system rather than trying to push down costs. Through focus on product and management quality, costs would drop over time, and productivity would go up.
Percy Williams Bridgman received the 1946 Nobel Prize for Physics and taught Oppenheimer who said of him "he never really was quite reconciled to things being the way they were". He seemed a physicist with an unquenchable thirst.
Between their two quotes about we find the sweet spot of software development management.
Making software is not like making sausages. It's more akin to making a twelve course molecular gastronomy tasting menu. In other words, it's hard.
Software is art meeting science meeting engineering. It's also mainly invisible and abstract.
Many of Deming's findings on quality management have found their way into software delivery, but software is not manufacturing. Deming's quote alludes to the company culture - motivated individuals who want to improve quality don't stay motivated if you measure everything they do. Likewise without measuring, you have no basis for knowing if you're improving.
Remember that software is built by people, not machines.
Good software is built with a collaborative understanding of a shared problem domain. If we do not communicate effectively while we are building software, then errors creep into our solutions. Errors will creep in anyway, so we also need systems in place to reminds ourselves how well or poorly we are doing.
If I'm advocating for improved code coverage and quality gates for our software pipelines that doesn't mean I'm also against taking the time to refactor our code. One does not beget the other. We cannot take a linear approach to improving software quality - it has to be, a little bit like Deming, a total approach, and everyone must be taken along in this journey.
Have a great weekend!
Published on May 10, 2023
So much of what we do as technical leaders is about interaction. Managing smart people is incredibly rewarding, but navigating the sea of opinions can sometimes be tricky. It can sometimes feel overwhelmingly difficult to steer our teams towards building the right things as well as building the things right. In a rush to create,… Read More »People Patterns and Learning How to Say No, Nicely