D016: The little voice in my head

There is a little voice within my skull that points out the worst of every situation I encounter.

Someone told me once, this is like a nasty friend who is constantly giving me unwise advising—yet, he is me, and I am him. Although I rejected this idea at first, I had to embrace it later as it proved to be accurate.

When I talk with my evil little friend about future plans, he always replies with the worst case scenario. I think this is called being a pessimist.

But pessimism might be useful under specific circumstances.

In the software domain, for example, worst-case analysis drastically improves quality. I'm a natural when it comes to worst-case analysis during the software design phase, and I take advantage of that in my professional life.

You don't want to be “optimistic” when designing software. One shouldn't assume users will use the product “correctly”. You better bet there will be always someone using it in the weirdest way possible—either out of malice or stupidity, it doesn't matter.

Sometimes the “user” is another computer-controlled (sub-)system. If the software running there has bugs (and it does), different things could go wrong as bits flow back and forth.

The code should be able to handle as many scenarios as possible, if you only consider the so-called happy path, the end result is rubbish.

And what I just did with the example above is what I always try to do to counteract my pessimism. I force myself to find some useful aspect in something apparently undesirable.

So, after my obnoxious friend points out the one side of a particular situation, I push myself to look at the other side by considering the opposite view. As a result, if you talk with me about any issue, I will often offer the opposite view for the situation under consideration.

In other words, if you have a pessimistic view, I will offer an optimistic one. Conversely, if you have a very optimistic outlook about a situation, I will point out the downsides.

Understandably, I will come across as an optimistic or a pessimistic person depending on the context of the conversation.

Although this strategy works for me, it is not always that useful for others. So, I should be more careful and restrict it to my own self-talking—unless explicitly asked to provide my view.

#Daily #Software