Does Personal Integrity Equal Software Quality?
At the heart of our country’s founding is the idea that personal integrity is central to our professional success. Ben Franklin and Thomas Jefferson wrote a lot about it. So what does character have to do with software development?
The recent debacle of Apple Maps offers a clue. If the manager of Apple Maps, Richard Williamson, had the personal integrity to stand up in a high-level meeting and divulge that the project was in jeopardy before the release date, this could have prevented the CEO of Apple, Timothy Cook, having to do so in front of the entire world. Not to mention heading off the inconveniencing millions of users.
Does personal integrity equal software quality?
Let’s begin by asking what personal integrity is. Personal integrity begins with our relationship to ourselves. What do you think of yourself? Do you endeavor to improve your virtues and ethics or are you satisfied to remain as you are? Is your character important to you or is it an afterthought?
If your work is an extension of yourself then it would follow that you would have the same approach to your work as you have to yourself. If you are willing to settle for a good-enough character, then you are likely to settle for a good-enough work product. If you seek to improve yourself, then you also seek to build high-quality products and provide top-notch service.
But I don’t think that’s how it works in this country.
I believe that the current trend in America is to value the quality of the products we make more highly than the quality of our own characters. It is more important, for example, to work long hours than it is to be honest. It is more important to do what we are told by our superiors than it is to do what is right. I suspect that this trend takes a toll on the work we do, having the undesirable effect of compromising our products and services. In our efforts to show obedience to our employers we compromise their integrity and fail to serve their customers. This is what may have happened at Apple.
Ben Franklin cataloged a list of his personal failings and made it a daily habit to take stock on his improvements on these failings. He was hard core about character.
It isn’t easy to take stock of our own failures. Nor is it easy to do the same for the software we build. And I don’t mean just a bug list. I mean what’s REALLY wrong.
But making that list may be the way to becoming a better software development professional.
And a better person.