Thoughts

Five Didactical Perspectives on Computational Thinking

Introduction

This post contributes with five perspectives on how to didactically adress progression in the work with Computational Thinking (CT) in teaching.
I take on here a perspective of CT, that was revitalized and popularized in 2010 by Jeanette Wing, who defined the term as:
“The thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information-processing agent” (Wing, 2010).

Wings take can be seen as problematic in different ways. However, this will not be treated in-depth here.
Although Wing’s formulation is somewhat abstract, special emphasis is placed on the fact that these are cognitive problem-solving strategies, where students model the world through specific forms of representation that are based on informatics and computer science as disciplines. Wing emphasizes that it is about thinking like a computer scientist and that the special modelling competence inherent in the disciplines can be generalized across all subject disciplines in the same way as reading, writing and arithmetic.

With this point of departure, it is the aim here, to provide teachers with perspectives for didactic reflections on CT as a specific way of working in the subjects. It is, therefore, not an attempt to provide instructions, but more to point to points of attention on planning.

Five perspectives:

What follows are five didactic perspectives that point out important aspects in the student’s development of CT as a problem-solving strategy. The five perspectives are:

1. The pre-computational perspective
2. The bodily perspective
3. The abstract perspective
4. Perspectives on problems and their solutions
5. Perspectives on the creative and imaginative

I do not claim this to be a model of progression, but the five points reflect a movement from the concrete towards the abstract. Although students, to a certain degree, possess the ability to think abstractly in different ways, they often come with little or no prerequisites for computational modelling. Therefore, an important and overall point of attention here is to create opportunities for the students to be gradually introduced to computational strategies and methods in interaction between the tangible/concrete and the symbolic/abstract.

The pre-computational perspective

Working computationally involves a basic understanding of symbol manipulation and modelling. This requires the students to become aware that e.g. coding and programming are based on certain kinds of logic and terminologies. The students must learn a special of computational grammar (certain syntaxes) before they can begin concrete computational work. For example, abilities within mathematical logic, decomposition and pattern recognition are part of the prerequisites students must possess in order to work computationally.
This can be taught in many ways, but a well-known and well-tested method for older children is to have them solve mathematical puzzles. One of many examples is Cut Hive Puzzles (http://inabapuzzle.com/),  which I explain in a previous post

Although the computational historically has its origins in mathematics, CT is not only limited to mathematical problem-solving. However, by working with logic tasks, students learn basic principles that can later be transformed into situated computational methods. For example, writing programs consist of certain logical rules and patterns.

The pre-computational perspective must be seen as an indication that students do not necessarily have the necessary prerequisites to think computationally in the sense of a computer scientist, but that this, along with reading and arithmetic, must be trained and developed. In the CT literature, coding and programming are often compared to professional skills that are similar to complex mathematical problem-solving in the natural sciences, and high-level literature analyses in the language subjects. Therefore, here too, the students need a basic understanding that precedes the computational.

The bodily perspective

A more concrete and less abstract approach to understanding and implementing CT in relation to a professional task can be done through physical activities. Activities such as “program your friend” or “bodygramming” could be examples of such approaches. Programming a friend to execute an algorithm can help show how precisely one needs to formulate rules if the computational agent (the friend) is to execute it correctly and the same way every time. The bodily perspective makes it concrete and visible how the algorithm is performed and whether this is done correctly. In such a process, students can isolate and correct the places where things go wrong and discuss how, for example, IF/THEN can be formulated more precisely.

The Finnish researcher Jussi Mikkonen proposes “bodygramming” as a bodily method to teach students programming. Bodygramming means that students physically behave like a computer program, through step-by-step prescribed actions. In this way, the students get an experience of the synchronous processes that are connected to a code at a low, human pace. In this way, an alternative option is offered to understand basic programming concepts and abstractions.
The bodily perspective points out the need for CT to be concrete for the students. These two examples (Program a friend and Bodygrammin) can make programming visible and concrete for students in a way that makes it tangible and debatable. In this way, it is ensured that CT does not just become something that takes place as part of abstract thought processes, but also something that physically unfolds in the world. At the same time, this perspective can shed light on how we as humans (as opposed to computers and AI) partly build our understanding of phenomena on contextual interpretations and intuition.

The abstract perspective

CT embeds a perspective that is based on students’ ability to think abstractly about phenomena in the world and translate these into ways that can be processed computationally and rule-based.

With the Cut Hive example above in mind, this means a move from being able to solve this puzzle to writing down rules for its solution.

A simple example is:

IF <a given input>
THEN <a specific action>

IF <a hexagon with area 2 contains the number 1 or 2>
THEN <the second hexagon contains the missing number>

Writing down rules for programs includes abstractions, generalizations and pattern recognition. Students must be able to exclude other parts of the puzzle in order to simplify and generalize, while at the same time comparing the generalized rules with the rest of the game’s rules (pattern recognition).

An example of the rewriting of a concrete event into a general rule:

The example shows how the abstract perspective in Wing’s definition of CT can play out. What distinguishes this approach to problem-solving in school from others is that it involves thought processes that seek to reduce the complexity and interpretation possibilities of phenomena in such a way that a machine (which cannot make decisions based on intuitive interpretations and emotions) can solve tasks, that would be too difficult or take too long for humans to do. The abstract perspective thus points to the fact that there are specific ways of thinking with special purposes that students must learn.

The problem-based perspective

In most contexts, CT is related to problem-solving of complex problems that cannot be handled by humans alone. In Wing’s formulation, it is also explicitly mentioned that it is both about formulations of problems and solutions to them. Not all problems are relevant nor solvable with the implicit methods alone.
Often, the problems that are sought to be solved are closely connected with and take their place in the subject. However, there are some fundamental characteristics of computational problems in non-computer science subjects:

1. That data is collected and processed (analysed).
2. That an algorithm is created that can help solve the problem
3. That the algorithm can be executed by a computer or human
4. That the problems have multiple or often open solutions

As hinted at academic problems are not tied to the field of informatics or data science. Poems are, for example, full of patterns (e.g. rhyme, metric, syllables) that can be transformed into rules and classifications in relation to recognizing and categorizing other poems. Another approach in language subjects could be to write four sentences and let the students put them in a logical order based on the data the sentences contain.
The problem-based perspective points to a need to reflect on which problem types are suitable for CT and what level and complexity the problem has in relation to the students’ prerequisites. Working with analyzing poems will be difficult for beginners because it requires skills that are based on complex knowledge of genre and language. Putting four sentences together so they make logical sense based on a content analysis would be easy for a high-school student.

The creative and imaginative perspective

Although Wing, in her definition, is particularly concerned with the problem-solving perspective, there are examples in the literature, that CT is involved in more than that. There are also arts and creative perspectives associated with designing solutions to problems or expressing oneself and imaginaries through coding. In such a perspective, creativity is part of shaping something from a set of conditions. Conditions here could mean the fact that algorithms or algorithmic processes are included in the design itself and/or in the product in one way or another.
The German professor Yasmin Kafai, who is, among other things, is one of the developers behind the coding platform Scratch, has in recent years worked with young people’s design of electronic textiles as a special way of expressing themselves. Kafai emphasizes that this way of working with the computational offers special opportunities for young people to have a critical-constructive voice and participate democratically through freedom of expression. The students’ thoughts, feelings and attitudes are expressed, when they design and create different products from textiles that are combined with microcomputers such as Lillypads (see e.g. https://www.exploringcs.org/e-textiles). The creative perspective thus points out that CT in teaching is not always only associated with problems but can also support the creative and soft forms of interpretation.

Concluding remarks

In the recent literature in Denmark, CT is seen as part of a movement focussing on empowering children to be able to take a critical stand towards digitization and the use of the media. In an educational context, one could ask, what possibilities and limitations does the computer as a tool entail when it is involved in the solution of problems and what do students need in order to use them? In this light, a CT competence makes good sense as a modelling competence that, through certain methods, enables the student to transform concrete specific problems into something a computer can help to solve. However, it is also important that teachers consider the following:

  • What CT is not. Is it, as Wing imagines, a transversal and general competence that reaches into, but also beyond, the subjects? Or is it just one of many methodological tools that students must have in their toolbox?
  • How is CT reconciled with the subject’s already built-in logics?
  • To what extent does CT contribute to the students’ general education?

Teaching is complex and the questions here show that the five perspectives highlighted here are not exhaustive, but just specific points of attention that can be included and discussed in relation to the teacher’s other general and subject-didactic reflections.

Leave a comment