I mean those handles just above every seat in a car. I have no idea what they call those in English.
But I have a name for that specific handle just above the passenger seat. It’s the horror handle. If something goes wrong, the passenger gets to shout “Oooooh shit!” and grab that handle.
There is just one problem. It’s impossible to drive from the passenger seat. No matter how hard we hold on to that handle, we can not steer.
I sat on the passenger side last week on our way to lunch. My duty was to navigate to get to this specific Chinese restaurant I had suggested.
I rarely sit in any other place in a car than right behind the steering wheel, so the trip was insightful. I noticed that I just might be one of those annoying passengers who keeps on nagging all the time. The driver was a customer, so I did my best to be polite.
But what was even more important is that I realized what stands at the core of professional software testing.
As the co-driver I of course had a continuous field of vision to where we were going and how the traffic was. I could continuously feel our speed and sense how we took the speedbumps on the way. I could also see if the car behind us was getting too close. I could estimate whether or not the surface of the road seemed dangerous after the rain. And that is not even the end of my sightings. The list could go on forever.
I could gather all this information from merely observing the situation. Getting to our destination had nothing to do with the meters in the car or numbers I provided by my observations. Just imagine how the ride would have turned out if we had both been staring at the speed-o-meter, the engine cycles, fuel consumption or the distance meter, just like we tend to do in our software projects. We would have found ourselves wrapped around a tree or worse.
Tester is just like a passenger. We cannot directly decide where our project is going. We have no control over the source code, schedule or resourcing for example.
All we can do is communicate what we observe and trust others to make better decisions with the information we deliver.
This trip was a happy one since I could influence our driver. The driver was smart and understood directions well. We also shared a common goal that we had agreed upon earlier. Find that Chinese restaurant.
As the passenger, I tried to give the directions constructively and early enough. Apparently, I even succeeded with it, since we had our lunch in the same place.
But what would have happened, if I had only been a smart ass and given critique such as “We should have taken that turn earlier.”?
My guess is that my trip would have continued on foot.
I think that the meters are an excellent aid for any trip. Metrics helps us avoid running out of juice halfway, for example.
Yet, the right calls should never rest on our metrics alone. The question is almost always about gut feelings and the correct communication. Some could call it intuition, most call it experience. It holds true for both driving and software development.
Facts, meters, and numbers are an excellent aid. But in reality, we base our success on our experience, common sense and that pinch of gut feelings.
Having no trust in these three stands at the root of indecision. And indecision is the worst kind of decision anyone can make.
We testers have two options in our professional life. We can hold that horror handle screaming those “oh-shits” or can we learn to influence the people we serve to get to the destination safely.
So which option should you choose?