My first formal academic interest – many years before I started programming – was mathematics. I can't be sure looking back, but as I recall I was drawn strongly to the idea that mathematics somehow provides absolute truth and certainty.
Nothing I encountered across my education seemed as certain or irrefutable as a mathematical proof of a statement or theorem. Even mathematical areas dedicated to studying randomness, estimation, and error, such as probability theory or numerical analysis, allow you to make and prove very definite, incontrovertible statements about uncertainty in various ways – at least, uncertainty as defined within these mathematical theories.
My understanding is that many people interested in mathematics feel this way, and that links can even be drawn from these ideas back to the Ancient Greeks and Platonic idealism, if not earlier. And while Gödel's incompleteness theorems famously cast much doubt on the notion of mathematical certitude, I would tend to consider myself (if only for reasons of faith) a believer in the power of mathematics to reveal and prove genuine mathematical truths – whatever that means, exactly.
With that all said, however, I am not a professional mathematician, but an aspiring software engineer. And unfortunately, it seems that the moment you step outside the pristine world of mathematics, all claims to absolute knowledge and certainty go completely out the window. In fact, in the real world, I fear that the apparent certainty misapplied mathematics can seem to provide can be profoundly misleading, or even dangerous.
Many people far more qualified to speak on this subject than me, including Nassim Taleb and Cathy O'Neil, have examined these issues in great depth. Such subjects frequently provoke heated debate and disagreement between those who agree with a given mathematical model and those who do not. I think this is well illustrated by this quote from Charlie Munger, vice chairman of Berkshire Hathaway, on the Efficent Market Hypothesis (EMH):
"I have a name for people who went to the extreme efficient market theory—which is 'bonkers.' It was an intellectually consistent theory that enabled them to do pretty mathematics. So I understand its seductiveness to people with large mathematical gifts. It just had a difficulty in that the fundamental assumption did not tie properly to reality."
I shan't comment on the correctness of Munger's statement as applied to the EMH in this instance. But the issue he describes, that of mapping an inadequate mathematical model to reality and drawing erroneous conclusions as a result, is something which I would very much like to avoid across the course of my career.
I shall briefly examine a few strategies for how to operate in an uncertain world, taken from science, engineering and business. On the face of it, business may seem rather separate from the other two – but I am hoping to work in the technology industry, where it could be argued that all three fields work in tandem. Furthermore, from my limited reading, I believe each of these three cultures have unique things to offer in addressing the problem of uncertainty.
Rather than trying and failing to summarise each of these incredibly vast subjects in a couple of paragraphs, I thought I'd use the remainder of this post to list a few relevant resources for further reading. I'll keep this list updated should I come across anything new and interesting in future.
My understanding of how science is able to make concrete progress in the face of uncertainty is simply the scientific method. Some additional resources:
Though less well-known, some see the engineering design process as a sort of engineering equivalent of the scientific method. I really need to study this more before I can say much more about it, though.
While the resources listed below are not specifically devoted to handling uncertainty, the process of building systems that never existed before requires the writers to grapple with this problem in a very hands-on fashion.
I have found the few business books that I've read to be extremely insightful, though (unsurprisingly) very different to the resources discussed above. In particular, I found that the importance of vision, belief, drive, and execution in the face of challenge and uncertainty was emphasised far more often – although I have no doubt that these are mandatory qualities for great scientists and engineers, too.
In terms of handling uncertainty, a point which I have seen come up a number of times here is the simple effectiveness of serious, extended debate. Basically, getting a number of knowledgeable, motivated people together and arguing about what to do for as long as it takes. And then, whenever anything changes or comes to light, arguing some more.
This approach might not have the enticing purity of a scientific model, say; and there is no way of mathematically proving its worth. However, it does appear to have been used in developing some of the most successful organisations in modern history, including many in the tech industry.
Some resources:
"By the time I was twenty, I had lived through a Hungarian Fascist dictatorship, German military occupation, the Nazis' "Final Solution," the siege of Budapest by the Soviet Red Army, a period of chaotic democracy in the years immediately after the war, a variety of repressive Communist regimes, and a popular uprising that was put down at gunpoint... many young people were killed; countless others were interned. Some two hundred thousand Hungarians escaped to the West. I was one of them."