In this day and age, as Grandmother would say, people expect to be perfect. They expect to be perfect because society suggests that perfection is the key to happiness… second, of course, to money…
Extrapolating on this… people expect to present what they do… to others… like a dramatic unveiling of perfection… the “look what I did” problem is what I like to think of it as… When we are children, we expect our parents to be in awe over the scribble we just made… and our parents usually “pretend” to be in awe and feed this desire to be presenting perfection… As a parent, I know I have done this a time or two… but it’s not fair to the child. What do they learn from the pretense that what they did, with little effort – by scribbling for 10 seconds on a piece of blank paper? They don’t learn to try to draw a straighter line or try to use their imagination… they learn that they need to seek “awe” for what they did.
These same issues encompass us as we grow into adults… and there is The Problem with Perfection... Like, it doesn't exist...
Software development, as I have observed over my years in testing, is ripe with this same mind-set. While we like to poke fun at Microsoft, I really think they must have hit the nail on the head in the arena of not worrying about failure and more heading towards feedback, so they can meet the end-users needs. Maybe they don’t always (or ever) really meet the end-users expectations… but they must be meeting a need. Most folks are still using Windows OS’…. Microsoft Office… and Heaven knows what else that Microsoft puts out…
Yes, we all like to mention the Blue Screen of Death... But we still use the products, even if it is because we “have” to per our organizations/needs.
Why do I care about perfection?
We are to release products/applications/systems that our end users/customers need to complete whatever it is they hope to address. Most of us cannot really “eat our own dog food” ... At least not in the same way our customers will… we lack their minds/knowledge/actions…
This being said, we need to start realizing that Perfection is a lost cause…. And should not be our goal – either as individuals or teams. Our goal is to release software, get feedback, and change – if necessary – what we “thought” our customers/end users wanted. Our goal is to attempt to meet a need. If we cannot fully understand what that “need” is, then we need to be brave enough to try…
Again I find myself thinking about the teachings I have read from Seth Godin... Again I find myself thinking about my personal testing heroes: James Bach and Michael Bolton...
Again I find myself thinking about learning from failure and what a great teacher that is…
I am not just a tester… I am a consumer… as a consumer I have certain expectations… I expect someone to “hear” my issues if I have them. I expect someone to make me believe my opinion counts… to give me a way to accomplish my own expected results… I expect to feel like I matter… But I don’t expect perfection… I venture to say that most folks, over the age of finding out that Santa Claus is not real, have pretty much the same expectations… we are past fairy tales…
In this day, where change is so very frequent… we need to work past the perfection pain points… and work towards meeting goals that matter. I will never be, on a personal level, a super-rich, super model, with no cares in this life… The products I test will never be the bug free applications that meet every users needs…
I guess my thoughts on this today are summed up as follows:
People… and what they do… will NEVER be perfect…
Products… considering how many diverse users they involve… will NEVER be perfect…
Technology… and its constant changes/needs… will NEVER be perfectly understood…
Our goal, as individuals and as people who provide services, should be to learn and try to understand what our own end users need/want/expect… we should hear them… they should know we hear them… then we should make the determination of whether or not we can meet these needs/wants/expectations… and preferably… let them know….
This gives them the power to “decide”, and people like having that option… and it usually makes them feel “heard”… sometimes this is enough, sometimes it isn’t… but none of us, nor any of our products are “Higher Powers”…
Let's just get real... development is an ongoing process... whether it is for individuals or teams or products or beyond...