“I don’t know”. These might just be the hardest words to say in any language. We avoid saying them, scared of coming across as doubtful and uncertain. This fear is understandable as we admire those who are knowledgeable and confident, even more so in a professional context.
As software testers, our team members and managers expect us to be firm and certain, providing clear answers. They want us to hand them that comforting blanket of certainty. Over the past years, I grew increasingly uncomfortable with that. I ended up having a hard time being sure of anything, to the extent that my confidence as a software tester started suffering. “You’re rejecting certainty, just like Socrates”, someone said. “That’s skepticism. You’re a tester, embrace it!”. That sounded like a good way to get out of my little Socratic crisis, but it left me with a new challenge: how does one embrace skepticism, and how can this help me improve my software testing activities? I wanted to get to the bottom of this and, for a year, decided to submerge myself in all things skeptic in hope of finding clues to help me with my testing and my struggles with doubt. It was a fascinating journey that brought me to both sides of the spectrum, ranging from philosophy, religion, critical thinking to science and even pseudo-science. The latter proved to be a portal into the world of the odd, the awkward and the downright bizarre. Now that I surfaced safely, it is time to reflect and make sense of what happened. I will tell the story of how I embraced skepticism and be came a proud and reasonable doubter. I will share how this influenced my software testing activities and how I harnessed the power of doubt: by creating a portfolio of critical thinking heuristics that can be valuable addition to any human’s toolbox.