Becoming Healthily Uncertain Doubt by Doubt

Fiona Charles’s workshop “We Can’t Know Everything – Promoting Healthy Uncertainty on Software Projects” at Let’s Test 2014 reminded me of a dusty old idea at the back of my mind…

Once when I was musing about what good has seven years and 2 degrees at the university done to me, I realized that one of the greatest lessons I learned was that I learned to doubt. I learned to be suspicious of quick and definite answers. I learned to deal with not knowing things for sure. I became conscious of how fallible I am.

What did I study that taught me this? I studied English language and literature.

I started out along with a bunch of others thinking that we shall be really good at English, that we shall be experts of sorts. I ended up being an expert doubter scrambling for information from a variety of resources to have some degree of certainty in a specific and limited context. It’s what studying a language teaches you: usually the meaning of words is not straightforward and it tends to depend on context. “No wonder context-driven testing makes so much sense to me,” I thought.

I have discussed the feeling of constant uncertainty with my course mates and they have agreed that it’s one of the most persistent lessons they’ve learned. Conversely, we’ve noticed that it’s not a lesson other people have learned or willingly learn when it comes to language. If I’m asked to translate a word or a sentence, I can rarely offer up an immediate translation, and this is when people express their confusion. “It’s just a word” or “it’s not that complicated” is what I hear.

As a professional doubter, I beg to differ. I need to use several heuristics to determine what could be a suitable word, for example. What is actually meant (use rephrase as a method) and what is the specific context? What is the style? What is the register? Sometimes there may be a few words that look very similar in meaning but may have nuances in the contexts they’re being used. Choosing the right one from that set may take some additional research into the usage of the word. Eventually, I’ll have to make a decision and accept it that I may still be wrong.

That’s how I’ve been exposed to and conditioned by uncertainty in the unexpected event of my becoming a software tester. I don’t know if others have similar experiences from different specialties. Also, I still need to think about if I can find a way to translate parts of my experience into something that can help other people on the software projects.

I still have this question, though… Will long-term exposure to (a certain kind of) uncertainty help to deal with it or can there be short-term strategies that help as well?

2 thoughts on “Becoming Healthily Uncertain Doubt by Doubt

  1. Very thoughtful, Helena. One thing I’ve noticed over the years is in a situation I tend to trust the folks who are /uncertain/ and cautious more than the ones who are certain they have it all figured out.

    Often, the more experienced folks have seen enough counter-indicators, and enough variety of examples of things that could work, that they observe and experiment and present things as hypothesis, not as fact.

    Thus the great irony is that the loudest voices in the software room are often the least experienced. (I say often because sometimes true beginners realize they are beginners, and are cautious, while some deep experts in a specific context, when operating in their context, can be rightly confident.)

    I think you made your point about uncertainty and words very well. I use slightly different terms; I’m more likely to say that words are symbols, and can mean different things to different people at different points in time. Thus, taking ideas, translating them in the mind into words, passing those words to someone else, and having them translated back to the other mind is an exercise in information loss. Good communicators can minimize the loss, but another way to get better is to tighten the feedback loop – to say the wrong thing in such a way that forces a clarifying question and gets you to “right” sooner.

    This is why I jokingly talk about “The thing with the stuff” or “I gotta see a person about a thing” – being vague gives the other person the benefit of building the skill of dealing with ambiguity.

    Or not. I pretty much just made the previous paragraph up. (Unless I didn’t.)

    Anyway, great post, thanks for letting me rant. 🙂

    • Thank you for your comment, Matt! You’re welcome to rant 🙂

      Indeed, communication is often seen in a simplistic way: you send out a package, the package is received, unpacked, interpreted right as you meant it, a response is sent pack and you open it, interpret it, and, eventually, get it. Unfortunately, this is not the case due to all of the contextual factors.
      While semantics is important, I reckon pragmatics may be even more important for testers. Oftentimes, I also find myself observing and thinking about discourse in a given situation as I find clues about the system I’m dealing with.

      Regarding your comment on “words as symbols” – it’s close to what we have learned from Ferdinand de Saussure. Words are signs and as such, they’re arbitrary. The spelling of the word (the signifier) and the concept of it (the signified) have an arbitrary relationship – there is no direct relationship between them (although some critics argue that onomatopoeia is an exception).
      And then there are words in context where pragmatics comes in… I’m used to be the one going into minute details about the use of a term somewhere in software and have had to explain over and over again why it’s important to be consistent with terminology in a software product. I definitely have a heightened sensitivity towards potential misunderstandings due to “slightly switching up” the terms but I’m not sure why a lot of developers (I’ve worked with) are so “numb” about it. (And then we could continue with the discussion that language is not neutral, how using a language we also re-create our reality using the non-neutral system that a language is…).
      This could be probably a potentially positive influence of integrating some focus on the humanities into computer science: it could help to realize the co-existence of multiple modes of thinking, human expression, ethics… Recently, I’ve been thinking that the attention to technological depth should somehow be balanced with knowledge of how humans relate to technology and what it does to them (end rant).
      There’s this interesting tension that comes from being perceived as someone who’s supposed to know their sh*t and then being this someone who expresses uncertainty and who doesn’t want to make concrete decisions (yet). I’m in this situation right now. Although I suspect most of the tension is in my head (along with high expectations to myself) and others are fine with the loose process for now.

      Oh well… thanks for letting me rant! 🙂

Chime in!

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s