DIGITAL LIBRARY
TEACHING COMPUTATIONAL THINKING WITH SCAFFOLDED PROGRAMMING SCRIPTS
University of Cyprus (CYPRUS)
About this paper:
Appears in: EDULEARN23 Proceedings
Publication year: 2023
Page: 4575 (abstract only)
ISBN: 978-84-09-52151-7
ISSN: 2340-1117
doi: 10.21125/edulearn.2023.1211
Conference name: 15th International Conference on Education and New Learning Technologies
Dates: 3-5 July, 2023
Location: Palma, Spain
Abstract:
The present study responds directly to calls for more research into how to include the teaching of computational thinking in existing teacher education courses. In particular, the study proposes using scaffolded programming scripts for teaching computational thinking to novice pre-service teachers.

It is widely accepted that computational thinking is a thought process that involves abstraction and automation (Wing, 2006, 2011; Denning, 2009; Kramer, 2007; Dijkstra, 1972). Abstraction removes characteristics or attributes from an object or entity to reduce them to essential features (Wing, 2011). Dijkstra (2009), Wing (2006), and others supported that thinking computationally means working on multiple levels of abstraction. For example, Perrenet, Groote, and Kaasenbrood (2005) and Perrenet and Kaasenbrood (2006) proposed a hierarchy, known as the PGK hierarchy, of four levels of abstraction as follows:

4. The problem level is the fourth and highest level in the hierarchy. At this level, one thinks of problems as objects and can develop solutions to problems as black boxes. As a result, solutions are elegant and stripped of unnecessary details.
3. The object level is the third level in the hierarchy. At this level, one can think computationally in ways that do not depend on the specifics of a programming environment. Mainly, one can think in terms of generalizations that rely on inputs.
2. The program level is the second level in the hierarchy. At this level, one understands algorithms as instructions written in a specific programming language. Algorithmic thinking is a problem-solving skill for devising a step-by-step solution to a problem.
1. The execution level constitutes the lowest level in the hierarchy. At this level, one understands algorithms as computer programs that run on specific machines and receive values or signals as inputs. While this level is the lowest in the hierarchy, it is important because here, one develops and practices the skill of debugging, i.e., recognizing and fixing errors when actions/outputs do not correspond to instructions.

Accordingly, in this study, computational thinking was examined using the four-level hierarchy of abstraction and focused on teaching computational thinking through a scaffolded programming script. Each scaffolded programming script included a sequence of programming subtasks ordered from simple to more complex with continuous diminishing support, following van Merrienboer’s (1997) instructional design principles regarding teaching complex technical skills/content.

To this end, the study sought to answer the question: “How did learning with scaffolded programming activities with robots affect pre-service teachers’ computational thinking? Fifty second-year pre-service teacher education students enrolled in a mandatory educational technology course participated in the study.

The research results revealed the significant development of novice pre-service teachers’ computational thinking skills at the Program Level (Level 2) and Execution Level (Level 1) of the PGK hierarchy. These findings are significant, as they showed that novice pre-service teachers with no prior experience with computer programming and debugging developed these two skills in a relatively short amount of learning time.
Keywords:
Scaffolded programming scripts, preservice teachers, robotics.