Computational Thinking

Computational thinking is a series of thinking activities that cover the breadth of computer science, such as problem solving, system design, and understanding of human behavior, using the fundamental concepts of computer science.

Abstraction

Problem formulation attempts to conceptualize a problem verbally, e.g., by trying to formulate a question such as “How does a mudslide work?,” or through visual thinking, e.g., by drawing a diagram identifying objects and relationships.

Read More

Automation

The solution needs to be expressed in a non-ambiguous way so that the computer can carry it out. Computer programming enables this expression. The rule in Figure 1 expresses a simple model of gravity: if there is nothing below a mud particle it will drop down

Read More

Analysis

The solution gets executed by the computer in ways that show the direct consequences of one’s own thinking. Visualizations, for instance the representation of pressure values in the mudslide as colors, support the evaluation of solutions.

Read More

Jeffrey David Ullman

Jeffrey David Ullman is an American computer scientist and the Stanford W. Ascherman Professor of Engineering, Emeritus, at Stanford University. His textbooks on compilers, theory of computation, data structures, and databases are regarded as standards in their fields. He and his long-time collaborator Alfred Aho are the recipients of the 2020 Turing Award, generally recognized as the highest distinction in computer science.

Read More








Reflective writing

‘It is not sufficient to have an experience in order to learn. Without reflecting on this experience it may quickly be forgotten, or its learning potential lost.’ (Gibbs, 1988, p9)