What is computational thinking

The definition of computational thinking is the thought processes involved in formulating problems so their solutions can be represented as computational steps and algorithms. In other word, by using computational thinking pattern, people can dissect complex problems into pieces which both a human and a computer can understand.

The foundation of computational thinking

Computational thinking is consist of four cornerstones: decomposition, pattern recognition, abstraction and algorithms. First, decomposition is to break down complex problems into smaller, simpler parts. The next key technique is pattern recognition which means recognizing an building connection among and within problems. Third, abstraction requires people to focus on important information and ignore irrelevant details. Last but not least, Algorithms means to build a step-by-step solution to solve a problem. All the four parts are important equally.

Why is it important?

Computational thinking is a way of thinking can be used throughout my whole study and career in the future, because it is the basis of building connections between human beings and computers. As long as I start a new project in computer science, It is unavoidable to use computational thinking. For example, if I want to develop a delivery system, the first step is to decompose the project by tasks. The project will be divided into receiving and classifying customers’ information and request, choosing proper senders to deliver parcels and giving feedback to customers. Then, I need to abstract useful information. Customers’ addresses, the time they order their parcels are the most critical information that I need to collect. In pattern recognition, the most feasible way to arrange the delivery service is to calculate and find the shortest distance between customers and senders. Therefore, the sequence is classifying customers’ requests, collect senders’ status, finding suitable senders, arranging tasks to the available senders and informing customers to help them track their parcels. In algorithm section, in order to set transfer stations, senders’ secondary workplace, each of whom takes charge a certain area, it is required to use algorithm to divide target city and iterate the most time-saving and economical way based on the data collected per half year. Obviously, with the help of computational thinking, a complex problem can be transformed gradually into the tasks which can be executed by computers. So, as a computer science student, I’ve realized that computational thinking is the fundamentals of computer science, and it will definitely enable me to solve countless problems in the future.

Reference:

Aho, A. V. (2011). Ubiquity symposium: Computation and computational thinking. Ubiquity, 2011

back