Computational thinking is a relatively new term and the topic of much discussion in the educational system today. As per current scenario computational thinking is a highly valuable skill that is becoming a topic of increasing interest among computational education researchers as well as computer scientists. The reason for this due to the significant benefits associated with it in terms of problem-solving. This review introduces computational thinking as a term and gives some characteristics surrounding the skill set.
We then examine the benefits and advantages of computational thinking in general and the areas in which it may be applied. We also explore the importance of computational thinking in education and teaching practice and note areas in which this is currently being implemented. Finally, we make recommendations for the inclusion of computational thinking as a core topic in primary and secondary education.
COMPUTATIONAL THINKING IN DETAIL:
Computational thinking can be broken down into different facets of thought each with its own particular strengths and applications the following section describe computational thinking aspects in more detail.
Logical thinking is perhaps the most important part of computational thinking. Logic in this sense may be confused with a computer’s logical calculation however in terms of computational thinking it refers to a deduction or extrapolation of new information or data based on existing information. According to “Curzon Black” the logical aspect is informing realistic conclusions not reaching correct assumptions by chance.
Algorithms play a major part in problem-solving in computer science especially in repetitive problems. This aspect of computational thinking is perhaps the most closely aligned to computer science itself. Algorithmic thinking can also be thought of as strategic thinking or step-by-step processing. Algorithmic thinking in general problem solving can greatly improve efficiency, especially when dealing with problems of similar nature.
In computer science and in particular in algorithm design efficiency deals with the minimization of resources required by an algorithm to solve a problem. Although many computational resources may be defined two are of significant importance the time it takes for an algorithm to solve a problem and the memory space required while solving. Of these two, however, the time required is usually the most important. This means that specific thought must go into designing an algorithm to best handle a specific type of problem it is not possible to simply speed up an algorithm at runtime to improve its time complexity. In terms of algorithm design an “efficient algorithm” takes the least number of steps to solve a problem.
Innovation is a key characteristic of computational thinking and is best evidenced in the fact that computer science lies at the forefront of modern innovation. According to the Cable News Network (CNN, 2014), the top ten inventions are currently all results of amazing innovations in computer science. Innovative thinking trains the mind to question things that already exist to challenge assumptions and ultimately to think “outside the box”. This aspect gives computational thinkers a significant advantage in problem-solving.
We are currently standing on the brink of a new era of learning. As technology advances and computers and computational solutions are involved more and more in our everyday lives all levels of education must at some point take a turn to frame young minds to prepare for an increasingly digital world. Computational thinking has been named by several computer science and educational authorities as to the literacy of the 21st century and something which is being addressed at the tertiary level with high degrees of success. As shown in this review, however, some work is still to be done at the primary and secondary school level to reap the enormous benefits of students’ development of computational thinking skills.
This transformation is not an easy one as it involves significant changes to pedagogy and practice and necessitates collaboration and co-operation from every party involved from researchers to educators. While there is still discussion over the exact bounds of computational thinking as a term there is significant agreement on the benefits of computational thinking as a key skill in all aspects of our society from doctors to engineers, managers to researchers a workforce trained in computational problem-solving spells efficiency, economic benefit, and even further advances to technology. However, these reasons only highlight the need to provide students from a young age with the core principles of this valuable skill.