Related work

Computational thinking encompasses a variety of concepts and capabilities such as collection, organisation and analysis of data, algorithmic thinking, abstraction, generalization and evaluation (Barr & Stephenson, 2011; Shute et al., 2017). The aforementioned skills are empowered by a set of peripheral attitudes or dispositions that are yet important dimensions of computational thinking. These include; endurance for ambiguity, determination to work on problems for which the solutions are not obvious, confidence in confronting complexity, the ability to cooperate and communicate with peers to accomplish common goals and to reach solutions to given problems (Barr et al., 2011).

Many of the concepts, skills, attitudes and dispositions mentioned above are not exclusively related to computational thinking. In fact, they are not even new. Therefore, the question that arises is how computational thinking differs from other kinds of thinking, such as mathematical thinking or critical thinking. Trying to answer this question we could say that computational thinking combines a distinctive compound of thinking skills that, when united, provide the conditions of an advanced problem-solving form. Additionally, it is more tool oriented. Finally, yet importantly, it utilizes effectively problem-solving skills such as trial and error, iteration and even guessing, which are impractical within the context of other kinds of thinking but make sense when conditions provide automation and higher speeds (Barr et al., 2011).

Computational thinking unplugged

The Computer Science Unplugged approach, which was at first introduced by the University of Canterbury in New Zealand, proposes the demonstration of Computer Science concepts in unplugged environments (CSUnplugged). Due to the philosophy of this approach, students could experience Computer Science challenges through a variety of learning activities that do not demand programming knowledge and do not include the use of computers. In this way, children gain their first contact with the kind of thinking that is anticipated by a computer scientist. Computer Science Unplugged does not just expose students to Computer Science but it also introduces them to the fundamental concepts of computational thinking, which they can employ to solve real-world problems in creative and attractive ways (Bell et al., 2009; Wohl et al., 2015).