I first saw psychologist Daniel Kahneman in 2001, the year before he won the Nobel Prize for Economics. Dan has since become known as the grandfather of Behavioral Economics and a big influence on computer programmers and researchers developing Artificial Intelligence, smartphones and cognitive computing.
In nine words Dan changed how I think. Those 9 words are:
“We think much less than we think we think.”
Dan’s most important achievements are in his research into human decision making under uncertainty, showing how human decision making behaviors deviate systematically from standard predicted results following economic theories. How we use biases and heuristics — the mental shortcuts we take to make decisions and form opinions.
Kahneman has frequently confirmed the influence of Herbert Simon, a famous American computer scientist and psychologist, and one of the ‘founders’ of Artificial Intelligence and cognitive science, who won the Turing award in 1975 and the Nobel Prize in Economics in 1973. Like Kahneman, Herb Simon’s Nobel Prize in economics resulted for his work in decision-making.
Both Kahneman and Simon taught us how easy it is to make mistakes and fool ourselves through the way we think – or rather don’t think.
So how do we change this and change our way of thinking to get better results?
To thrive in this new world of human and machine collaboration and get the best out of the advances in technology requires a new way of thinking. Jeanette Wing, a Carnegie Mellon University professor, research analyst at Microsoft and currently assistant director of the US National Science Foundation’s computer programs calls this ‘computational thinking.’
Professor Wing has a vision of computational thinking becoming a fundamental skill, ranking alongside reading, writing and arithmetic. The Singapore Government say: “computational thinking should be taught to all Singaporeans and made a national capability.”
Businesses such as Boeing, Google (who are committed to expose everyone to this key 21st century skill), Microsoft and many others are adopting computational thinking to improve their decision-making. According to Jeanette Wing:
Computational thinking can be understood as a fundamental analytical skill that everyone can use to solve problems, design systems, and understand human behavior.
Earlier this week Chris Giles, the Economics Editor of the Financial Times, tweeted a chart showing the growth of demand in the job markets for people with computational thinking skills and the decline of jobs in financial services based on data from the Office of National Statistics:
But as Jeanette Wing states Computational Thinking should be a process everyone learns, not just those involved in computer sciences. As computation and information technology becomes more prevalent, individuals competent in computational thinking are better able to understand the ways which technology can improve the choices and decisions we make.
Computational Thinking is not programming, nor is it about more computer power. You can’t just throw more petaflops at a problem and expect it to be solved. Likewise, you can’t expect machine learning by itself to learn deeply if it isn’t coupled to human debate, reasoning and knowledge.
According to Google specific Computational Thinking techniques include:
Problem decomposition — The ability to break down a task into minute details so that we can clearly explain a process to another person or to a computer, or even to just write notes for ourselves.
Pattern recognition — The ability to notice similarities or common differences that will help us make predictions or lead us to shortcuts. Pattern recognition is frequently the basis for solving problems and designing algorithms. According to some researchers: the secret of the human brain is pattern recognition.
Pattern generalization to define abstractions or models — The ability to filter out information that is not necessary to solve a certain type of problem and generalize the information that is necessary.
Algorithm design — The ability to develop a step-by-step strategy for solving a problem. An algorithm is a series of step-by-step instructions, designed to complete a certain task in a finite amount of time.
Data analysis and visualization
Dan Kahneman’s work is particularly relevant to Computational Thinking as we deal with more and more data and more computing power. He teaches that we see patterns in random data; that we are even more prone to see patterns in random data when in possession of a theory predicting such patterns; that we overweight outcomes we can imagine easily; that even though we prefer more information to less we are hopeless at processing it; that we are hopeless at gauging correlations until they are very obvious.
Economists such as Ricardo Hausmann, a Professor of Economics at Harvard University says:
One idea about which economists agree almost unanimously is that, beyond mineral wealth, the bulk of the huge income difference between rich and poor countries is attributable to neither capital nor education, but rather to ‘technology.’
But what is often missing from this discussion is a key component of technology – knowhow.
Computational Thinking puts that knowhow into the hands of those that choose to learn this important process. Knowhow is an ability to recognize patterns and respond with effective actions.
For those that want to improve their ability to understand and respond to the changing nature of technology, Computational Thinking can be a powerful way to bridge the gap between the problems of big data, robotics, artificial intelligence and cognitive assistants and improve practical decision making.