Got too little and start too late?
Shivers go down my spine. Just to think of the implications. Almost a hundred years ago Albert Einstein said something profound. But before I tell you more about it, let me take you to Spain where the windmills of Campo de Criptana stand.
The place became famous for its appearance in the 1600’s novella Don Quixote, where a delusional Spanish noble set out to battle the windmills mistaking them for giants. The story, of course, is a symbol of battling imaginary opponents. The kind of battles that are impossible to win.
For the past 14 years as an entrepreneur, I’ve traveled the world and met with 3270 people in conversations about the software development. During the time, I’ve had the privilege to listen to testers and their troubles. I’m one myself after all. In conferences, meetups, trainings and one-to-one coffee sessions, testing professionals sometimes vent their feelings about their profession. There seems to be one source of frustration above all else.
Outsiders see testing as a downstream activity of development. Hence, software arrives to testers too late. We would like to test early and often. And not only that, there aren’t enough resources and time to do testing anyways. We would like to test thoroughly and to get coverage and confidence. The background information and specifications are always inadequate for doing a good job. We would prefer deep and detailed release notes to begin with. And we are right about it all. The world could be a better place for testing.
But software testers are not alone. Go ask a professional in any domain if they have enough time and dime to do a good job? The answer most likely is a big and hairy NO! Let’s face the truth, professionals are perfectionists.
Testers know how important the “test early, test often” -principle is, but this ideal can not withstand the test of reality. Most software development around the world is driven by the project budget and profit margins above all else. There is a contradiction between the professional perfectionism and the harsh truth of software business.
It’s human nature to mostly think short term, to seek that quick fix and to start important things too late. Quick loans and credit card debt are at their all time high. For Americans only, their total tab for consumer debt reached a record of $4 trillion last year. It’s no wonder why the infamous Ponzi scheme works decade after decade as well. For the same reason technical debt tends to grow in software projects and it has a terrible interest rate. It’s human nature.
Testing too little and too late is human nature too. Complaining about it, is to fight a losing battle much as Alonso Quixote did in the books with the windmills. Yes, you could say that the windmill giants were imaginary and our testing problems are real! I admit, it’s a reasonable argument, but let’s dig a little deeper.
Frustration results of a mismatch between expectation and the reality.
I tend to dream for an ideal world for testers. In my vision our profession is respected, we are the rock starts of development and we always get to test early and enough. And not only that, we get adequate resource and information every time we start. Wouldn’t it be wonderful? What I perceive as a problem now, is the gap between my ideals and the reality. My vision is not real, nor is the gap. So, I propose that our issues are as illusory as the giants were in the book. This is what Einstein saw long ago as well when he said.
A man should look for what is, and not for what he thinks should be.
The way to mastery is not to complain in an attempt to change the world. Accept the world, and change yourself instead. Do what works with what you’ve got.