0% found this document useful (0 votes)
28 views

15 The-Effects-Of-Scaffolded-Programming-Scripts-On-Pre - 2022 - International-Jou PDF

The document discusses the effects of scaffolded programming scripts on pre-service teachers' computational thinking skills. It finds that introducing computational thinking modules and teaching algorithmic thinking through robot programming can significantly improve pre-service teachers' algorithmic thinking and debugging abilities. However, teacher education programs currently lack knowledge on how to promote computational thinking.

Uploaded by

KERLY
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views

15 The-Effects-Of-Scaffolded-Programming-Scripts-On-Pre - 2022 - International-Jou PDF

The document discusses the effects of scaffolded programming scripts on pre-service teachers' computational thinking skills. It finds that introducing computational thinking modules and teaching algorithmic thinking through robot programming can significantly improve pre-service teachers' algorithmic thinking and debugging abilities. However, teacher education programs currently lack knowledge on how to promote computational thinking.

Uploaded by

KERLY
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 22

The effects of scaffolded programming scripts on pre-service teachers’

computational thinking: Developing algorithmic thinking through


1. Introduction
programming robots
Charoula Angeli abstract
University of Cyprus, Cyprus

article info
Workers in the areas of science, technology, engineering and mathematics play a significant role in the sustained
growth and stability of the global economy, and, thus constitute a critical component in helping all countries
Article history:
Received 30 June 2020 worldwide to prosper. In this context, computational thinking constitutes an important skill to have as it enables
Received in revised form 4 May 2021 workers to develop creative solutions to complex problems. Nonetheless, across all economies worldwide, there is a
Accepted 17 May 2021 Available need to have more workers who are able
online 2 June 2021 to think through problems, challenges, and solutions in computational terms. It is thus of utmost importance to
integrate the teaching of computational thinking in K-12 education in order to reduce the skills gap between
education and the workplace. A pertinent and crucial question that arises is whether teachers have the knowledge
Keywords:
and skills to teach students how to think computationally. Existing research shows that teacher education
Computational thinking
Algorithmic thinking
departments do not currently have the knowledge to promote computational thinking in their programs. The present
Debugging study focuses on two aspects of computational thinking, such as, algorithmic thinking and debugging skills with the
Robotic activities use of scaffolded programming scripts in an educational technology undergraduate course. The results show
Pre-service education statistically significant learning gains in pre-service teachers’ algorithmic thinking and debugging skills in the context
Scaffolded programming scripts of robotic programming activities with LEGO WeDo. Limitations and future research directions are discussed.
LEGO WeDo © 2021 Published by Elsevier B.V.

Nonetheless, across all economies worldwide, there is a need to


have more people who have the skills to think through prob-
The modern workplace requires a set of thinking skills that are preliminary evidence exists showing that the introduction of
grouped under the title of computational thinking. Computational computational thinking modules in the teaching of existing teacher
thinking is an amalgam of thought processes involved in solving education courses can have positive results on pre-service teachers’
problems of various complexity, such as algorithmic thinking, understanding of computational thinking concepts (Yadav et al., 2014).
decomposition, pattern recognition, abstraction, and debugging (Wing, Thus, the issue of how to promote computational thinking in pre-service
2006). The solutions to the problems are represented in a form that can teacher education is timely, and, any new studies undertaken toward
be effectively carried out by an informationprocessing agent, such as a this research purpose are much needed and are fully warranted (Gretter
computer. Therefore, while computational thinking is more than just & Yadav, 2016).
algorithmic thinking, the use of computational thinking skills to solve a Accordingly, an important issue that arises is what concepts to teach
problem will ultimately involve algorithmic and accompanying about computational thinking and how to teach them in the context of
programming skills in order to generate the desired solution. existing teacher education courses without undertaking major
Why is computational thinking so important in the workplace? Much restructuring efforts in changing existing curricula to include
of what takes place in organizations today involves problem solving with computational thinking skills. In this research study, the teaching of
or without a computer. Thus, even if someone is not in a position to computational thinking is approached from the perspective of teaching
create a solution using programming languages and computers, being algorithmic thinking through programming in a mandatory educational
able to understand and think through problems using computational technology course. As it is supported by other researchers (Robins,
concepts is vital. Rountree, & Rountree, 2003; Sengupta, Kinnebrew, Basu, Biswas, &
Clark, 2013; Wilensky, Brady, & Horn, 2014), teaching first algorithmic
thinking before moving on to other computational thinking skills
E-mail address: [email protected].
synergistically deepens the learning of computational thinking, and, thus
https://doi.org/10.1016/j.ijcci.2021.100329 2212- teaching programming should start as early as possible in school at all
8689/© 2021 Published by Elsevier B.V. educational levels and ages (Grover & Pea, 2013).
lems, challenges and solutions in computational terms. It is thus of To this end, the present study proposes the use of scaffolded
critical importance to integrate the teaching of computational thinking programming scripts in the context of an existing educational technology
in K-12 education in order to reduce the skills gap between education course in order to teach second-year pre-service elementary school
and the workplace. In order to be able to do that, school teachers need teachers how to think algorithmically by programming lego robots using
to be adequately trained to teach computational thinking or aspects of LEGO WeDo, an educational robotics kit suitable for students in the age
computational thinking in their content areas. group of 7 and above.
The importance of teaching computational thinking across the K-12
curriculum has been strongly argued for by many educational scholars 2. Theoretical framework
and researchers (Grover & Pea, 2013; Guzdial, 2008; Wing, 2006). At
the same time, there is evidence that teacher education departments Computational thinking is a term used since the 1950s and describes
lack the knowledge and skill to teach pre-service teachers about the notion of using algorithmic thinking to produce appropriate output
computational thinking (Angeli & Valanides, 2020; Yadav, Mayfield, to a given input (Denning, 2009). Wing’s article has rekindled the
Zhou, Hambrusch, & Korb, 2014; Yadav, Zhou, Mayfield, Hambrusch, & interest in promoting computational thinking in education (Wing, 2006).
Korb, 2011). While in general, the research in this area is scarce, some Collective efforts aiming at developing a definition for computational
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

thinking include the two National Academy of Sciences Workshops of problems as objects, and can develop solutions to problems
(National Research Council, 2010, 2011) and the initiative undertaken by as black boxes. Solutions are elegant and stripped of
The Royal Society (The Royal Society, 2012). Also, workshops organized unnecessary details.
by the Computer Science Teachers Association (CSTA) and the 3. The object level is the third level in the hierarchy. At this level,
International Society for Technology in Education (ISTE). one can think computationally in ways that do not depend on
The 2010 National Research Council’s (National Research Council, upon the specifics of a programming environment. Mainly, one
2010, 2011) report differentiated computational thinking from computer can think about functions (generalizations) that rely on inputs.
literacy, computer programming, and computer applications (i.e., games Thus, while abstraction at the fourth level involves thinking
and simulations), and broadened the term to include core concepts from about solutions to problems as black boxes, at the third level
the discipline of computer science, such as abstraction, decomposition, common patterns are recognized, and abstractions are
pattern generalization, visualization, problem-solving, and algorithmic generalized through parameterization for wider use.
thinking. 2. The program level is the second level in the hierarchy. At this
Similarly, the Royal Society (The Royal Society, 2012) offered a level, one understands algorithms as sets of instructions written
concise definition of computational thinking as ‘‘the process of in a specific programming language. Algorithmic thinking is a
recognizing aspects of computation in the world that surrounds us, and problem-solving skill related to devising a step-by-step solution
applying tools and techniques from computer science to understand and to a problem. Sequencing (i.e., planning an algorithm, which
reason about both natural and artificial systems and processes’’ (p. 29). involves putting actions in the correct sequence), and flow of
CSTA and ISTE developed an operational definition of computational control (i.e., the order in which individual instructions or steps
thinking as a problem-solving process that includes, but is not limited to, in an algorithm are evaluated), are considered essential
the following elements: (a) Formulating problems in a way that enables elements of thinking computationally at this level.
us to use a computer and other tools to help solve them; (b) Logically 1. The execution level constitutes the lowest level in the hierarchy.
organizing and analyzing data; (c) Representing data through At this level, one understands algorithms as computer programs
abstractions, such as, models and simulations; (d) Automating solutions that run on specific machines and receive values or signals as
through algorithmic thinking (i.e., a series of ordered steps); (e) inputs. While this level is the lowest in the hierarchy, it is an
Identifying, analyzing, and implementing possible solutions with the goal important one, because here one develops and practices the
of achieving the most efficient and effective combination of steps and skill of debugging, i.e., the skill to recognize and fix errors when
resources; and (f) Generalizing and transferring this problem-solving actions/outputs do not correspond to instructions.
process to a wide variety of problems. An issue that arises directly from the representation of
Despite the fact that currently there is not one unanimous definition computational thinking in the form of the PGK hierarchy, is about what
of computational thinking, Grover and Pea (2013) concluded that side of the PGK hierarchy teaching interventions should try to tackle
researchers have come to accept that computational thinking is a first. For example, is it better to first teach teachers how to create
thought process that utilizes the elements of abstraction, generalization, abstractions and generalizations of problems (two highest levels of the
decomposition, algorithmic thinking, and debugging. Abstraction is the hierarchy) before teaching them how to develop algorithms, write, and
skill of removing characteristics or attributes from an object or entity in debug computer code (two lowest levels), or the other way around? The
order to reduce it to a set of fundamental characteristics (Wing, 2011). author posits that it is best to teach teachers how to think in
While abstraction reduces complexity by hiding irrelevant detail, computational terms in exactly the same way that they will teach their
generalization reduces complexity by replacing multiple entities which students, so that teacher training can directly transfer to real classroom
perform similar functions with a single construct (Selby, 2012). For contexts. A number of computer science education researchers have
example, programming languages provide generalization through written about their concerns in regards to teaching abstraction to school
variables and parameterization. Abstraction and generalization are often children (Armoni, 2013). These concerns are primarily linked to the
used together as abstracts are generalized through parameterization to incompatibility between abstraction, an essential process in computer
provide greater utility. Decomposition is the skill of breaking complex science and computational thinking, and children’s weakness to
problems into simpler ones (National Research Council, 2011; Wing, understand abstraction because of their young age. Armoni (2013)
2006). Algorithmic thinking is a problem-solving skill related to devising explained that abstraction is an inherent component of computational
a step-by-step solution to a problem and differs from coding (i.e., the thinking that is always encapsulated during the process of thinking
technical skills required to be able to write code in a programming about and automating a solution to a problem. From a Piagetian
language) (Selby, 2012). Additionally, algorithmic notions of sequencing perspective, children before the age of seven cannot really understand
(i.e., planning an algorithm, which involves putting actions in the correct concrete logic, whereas children between seven and eleven years old
sequence), and algorithmic notions of flow of control (i.e., the order in can solve problems that apply to concrete objects, but not problems
which individual instructions or steps in an algorithm are evaluated) are that apply to abstract concepts or phenomena. Thus, it might be better
also considered important elements of computational thinking (Lu & to start from the two lower levels of the PGK hierarchy before gradually
Fletcher, 2009). Debugging is the skill to recognize when actions do not moving up to the two higher ones.
correspond to instructions, and the skill to fix errors (Bers, Flannery, Along these lines of reasoning, Lye and Koh (2014), in their literature
Kazakoff, & Sullivan, 2014). review on teaching and learning computational thinking, revealed that a
In the work of Perrenet, Groote, and Kaasenbrood (2005), and favorite approach for teaching computational thinking is through
Perrenet and Kaasenbrood (2006) computational thinking skills are computer programming. Programming is a procedure which enables
represented in a four-level hierarchy known as the PGK hierarchy: problem solving by creating algorithms (series of commands) that are
executed by a variety of tools (Ching, Hsu, & Baldwin, 2018; Sullivan,
4. The problem level is the fourth and highest level in the hierarchy
Bers, & Mihm, 2017). Thus, programming exposes students to
and represents the skill of abstraction. At this level, one thinks

2
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

computational thinking using computer science concepts (Lye & Koh, teachers completed a mandatory course in basic computing skills. Thus,
2014). Moreover, review studies support that computer programming all research participants had basic computing skills in the areas of
through robotics can be a promising educational approach for teaching windows, word processing, spreadsheets, presentation tools, and the
computational thinking (Çetin & Demircan, 2018; Ioannou & Makridou, Internet. Final grades on the computing course ranged from 5.5 (out of
2018; Jung, Kim, Lee, Lee, & Ahn, 2018), as learners can directly interact 10) to 9.5 (out of 10), with an average of 7.5 (out of 10), indicating
with a robot and observe the immediate effects of their interactions on adequate basic computing skills for the class as a whole. The average
the robot’s behavior (Bers et al., 2014; Chalmers, 2018; Highfield, 2010; age of the participants was 18.75 years old (SD = 0.37) and the majority
Kazakoff & Bers, 2012; Stoeckelmayr, Tesar, & Hofmann, 2011; Wing, of the participants was females. There were 44 females and 6 males in
2006). the course. None of the participants had previous experience with
Recent studies on how to teach school teachers about computational programming, and building and programming robotic devices. Thus, all
thinking have used programming scripts as the main training method pre-service teachers were novices in the areas of algorithmic thinking,
(Saari, Blanchfield, & Hopkins, 2015). Saari et al. (2015) argue that this programming, and robotics. Student–teachers’ initial algorithmic
method is beneficial to novice teachers with no previous knowledge thinking and debugging skills were also assessed using a pretest that
related to programming, because they can see a completed was also administered as a posttest in order to detect changes in
programming script with all essential elements, and thereafter use it as a student– teachers’ algorithmic thinking and debugging skills (McCauley
teaching instrument in their own classrooms. In addition, Matthíasdóttir et al., 2008).
(2006) explains that programming scripts allow for individualization
enabling learners to work in more productive ways while receiving the 3.2. The LEGO WeDo Education construction set
assistance they need from more expert others on a one-to-one basis.
In this study, the author used the idea of scaffolded programming LEGO WeDo, which is designed for students ages 7 and up, enables
scripts to teach novice pre-service teachers about programming. The novices to construct robots and easily program the robots using the
simple-to-complex sequencing of whole-task programming scripts was LEGO WeDo programming language. LEGO WeDo is a popular robotics
incorporated to deconstruct complex programming tasks into a set of kit that is commonly used in elementary school classrooms worldwide
simple to complex programming subtasks in order to reduce the (Mayerová, 2012). The LEGO WeDo robotics set, shown in Fig. 1,
cognitive load imposed by a complex programming task on teachers’ includes different pieces and mechanical parts in order to build LEGO
mental resources. In relation to this issue, the four-component models.
instructional design (4C/ID) model, a framework for systematic learning The construction kit contains robot bricks, two sensors, a LEGO USB
with complex tasks (Van Merriënboer & Kirschner, 2017), was used for hub and a motor. The set comes with an easy to use visual
designing the programming scripts used in the study herein. In the 4C/ID programming environment and an activity pack which contains simple
model, learners are asked to perform meaningful whole tasks in guides for building models. According to Ilieva (2010), children working
authentic situations, where the tasks comprise all key aspects of the with the LEGO WeDo construction set will come to know the
complete task. In addition to providing learners with procedural surrounding world by recreating it through creative
information and supportive guidance to complete complex tasks,
authentic whole-tasks are organized in a simple-tocomplex order (Van
Merrienboer & Sweller, 2005). The simpleto-complex progressive
learning approach has been empirically explored and has shown its great
potential in complex learning domains, including programming learning
in school classrooms and computer-based learning environments (Van
Merriënboer, 1997).
Accordingly, in this study the author examined the development of
pre-service teachers’ algorithmic thinking and debugging skills through
the use of scaffolded programming scripts. Each programming script
included a sequence of programming subtasks ordered from simple to
more complex with continuous diminishing support, following Van
Merriënboer’s (1997) instructional design principles in regards to
teaching complex technical skills/content. To this end, the present
study sought to answer the question: ‘‘How does learning with
scaffolded programming scripts in the context of programming robotic
devices affect the development of pre-service teachers’ algorithmic
thinking and debugging skills?

3. Method
Fig. 1. The LEGO WeDo 1.0 robotics set.

3.1. Participants

Fifty second-year pre-service elementary school teachers who were constructions. In addition, Mayerová (2012) reported in her studies that
enrolled in a mandatory educational technology course in a Southern LEGO WeDo robots can be programmed through a simple, visual, and
European university participated in the study after signing consent easy-to-use programming environment ideal to use in elementary school
forms. Prior to taking the educational technology course, student– classrooms. For these reasons, the LEGO WeDo robotics kit was

3
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

considered an appropriate tool to use in this study for training pre- abilities (Hammond & Gibbons, 2005). In the context of classroom
service elementary teachers, because later the pre-service teachers interaction, the term scaffolding has been used to describe the
themselves will have an opportunity to use it with students either during temporary assistance that teachers provide for their students to assist
their early-field school experiences or as teachers in school classrooms. them to complete a task or develop new understandings, so that they
Another reason for choosing to use LEGO WeDo in this study is related will later be able to complete similar tasks alone (Mercer, 1994).
to the fact that LEGO WeDo constitutes a ‘‘low floor’’ (i.e., easy to learn Maybin, Mercer, and Stierer (1992) stated that scaffolding is not just
how to use) and ‘‘high ceiling’’ (i.e., affords the development of vibrant any assistance which helps a learner accomplish a task. It is assistance
computer programs) (Resnick et al., 2009) robotics environment which is intended to bring the learners closer to a state of competence
allowing novice pre-service teachers to engage in interesting problem- which will enable them eventually to complete such a task on their
solving tasks with it. This means that the robotics kit has a small learning own. In the context of developing computational thinking during
curve allowing pre-service teachers to focus on developing algorithmic learning with robotics activities, Angeli and Valanides (2020) used
thinking and debugging skills without struggling to learn how to use the various types of scaffolds contigent upon individual cognitive
tool per se. Chalmers (2018), who researched the effects of learning differences and found that scaffolding is effective only when it is within
with LEGO WeDo in elementary school classrooms, found that during the learner’s zone of proximal development (ZPD). Vygotsky (1978)
learning with the robots, students were using algorithmic thinking skills, argued that the ZPD is a key element in the learning process, and he
such as sequencing and loops, and exhibited a computational thinking defined it as ‘‘the distance between the actual development level (of
perspective through building and programming robots as well as the learner) as determined by independent problem solving and the
debugging programming scripts when the robots did not perform as level of potential development as determined through problem solving
planned. under adult guidance or in collaboration with more capable peers’’ (pg.
86). In relation to education, ZPD is important to consider, because it
3.3. Programming tasks suggests the upper and lower limits, or the ‘zone’, within which new
learning will occur with the use of scaffolds. If the instruction is too
Four programming tasks, related to three robots, namely, ‘‘The difficult, the learner is likely to be frustrated. If it is too low, the learner
Dancing Birds’’, ‘‘The Smart Spinner’’, and ‘‘The Roaring Lion’’, shown in is presented with no challenge and simply is not interested in learning
Fig. 2, were used for developing pre-service teachers’ algorithmic something. Thus, for an effective teacher– student relationship,
thinking and debugging skills. For each programming task, pre-service learning occurs when students are working within their ZPD and when
teachers were given a textual description of a behavior that the robot teachers, through their mediating support role, are able to scaffold
had to exhibit, and, were instructed to write down pseudocode first for a students to achieve the next level of their cognitive development.
suitable algorithm (see Appendix C for an example). Then, they were Thus, scaffolding is a term that resonates well with teachers and
asked to code the algorithm using the Lego WeDo programming teacher education research. In the study herein, three scaffolded
language, run the computer program, and debug it, if necessary. After programming scripts, in paper form, were used for teaching pre-service
debugging, student–teachers were asked to write down the teachers about algorithmic thinking and debugging. The goal here was
corrected/revised computer program. The following criteria were used to provide gradual scaffold support for various completed or semi-
for assessing student–teachers’ algorithmic thinking and debugging completed programming tasks before asking the student–teachers to
skills: (a) the LEGO WeDo programming instructions were put in the write, without support, a new algorithm and accompanying code for a
correct sequence (4 points), (b) the flow of control was correctly decided new programming task. The first programming activity was about the
robot
‘‘The
Dancing
Birds’’
and
consisted
of seven
sections.
The
second
Fig. 2. The Dancing Birds, Smart Spinner, and Roaring Lion robots.
(3 points), and (c) programming errors were identified, removed, and programming activity was about the robot ‘‘The Smart Spinner’’ and
fixed (3 points). Accordingly, a total score on a scale from 0 to 10 points consisted of five sections, and the third activity was about the robot
was used for assessing algorithmic thinking and debugging on each ‘‘The Roaring Lion’’ that also consisted of five sections. In essence, the
programming task. Students were allowed up to 15 min for each three robots were selected, because they constituted examples of
programming task. (See Fig. 3.) robotic constructions that ranged from easy to more advanced, both in
terms of constructing and programming them, targeting the gradual
3.4. Teaching intervention: Scaffolded programming scripts development of algorithmic thinking and debugging skills. Accordingly,
for each robotic construction, a scaffolded programming script was
The metaphor of scaffolding has been widely used to argue that, designed and developed to teach pre-service teachers how to program
just as builders provide essential but temporary support, teachers need each robot to demonstrate specific behaviors or actions.
to provide temporary sequential supporting structures to assist Each section in a scaffolded programming script consisted of four
learners to develop new understandings, new concepts, and new programming subtasks sequenced from simple to more complex with
continuous fading support for the learner (see Appendix A for a

4
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

complete example). Students were presented with programming tasks


ranging from worked-out programming tasks to semi-completed
programming tasks to new programming tasks. This instructional design
followed van Merrienboer’s (Van Merriënboer, 1997) 4C/ID theory that
provides a set of guidelines of how to teach complex or technical
content. Workedout programming tasks provided full instructional
scaffolding for the learner, semi-completed programming tasks provided
partial scaffolding, and new programming tasks no scaffolding. To better
explain how these ideas were used for the design of the scaffolded
programming scripts, a description is provided about the layout of the
first section of ‘‘The Dancing Birds’’ programming script.
The section consisted of four programming tasks as follows. The first
task provided full scaffolding support for a completed computer program
(a worked-out programming task) written in the LEGO WeDo
programming language. The student–teachers were asked to use LEGO
WeDo to generate the program, run the program, and write in the space
provided what they observed. The purpose of the first programming task
was for the preservice teachers to realize that specific computer
instructions corresponded to specific robotic actions, and that Fig. 3. Learning gains in the skills of sequencing, flow of control, and debugging as measured by
sequencing was one essential aspect of programming and therefore the pretest and posttest.

algorithmic thinking. For the second task, student–teachers were again


given a completed computer program. They were asked to run the
program and change it if needed so that the robot exhibited a particular contexts (McCauley et al., 2008), and (b) three programming tasks,
behavior. The second task introduced student–teachers to debugging; related to three robots, namely, ‘‘The Dancing Birds’’, ‘‘The Smart
that is to recognize that specific instructions in the programming script Spinner’’, and ‘‘The Roaring Lion’’, for assessing pre-service teachers’
did not correspond to actions, and to remove and fix errors. The third algorithmic thinking and debugging skills.
programming task provided partial scaffolding support and asked
student–teachers to complete a semi-completed program using the 3.5.1. Algorithmic thinking and debugging skills pretest/posttest
LEGO WeDo programming language. Finally, for the fourth task, all The test was administered individually both as a pretest and a
scaffolds were removed and student–teachers were asked to write new posttest, and consisted of four sections, including two questions in each
pseudocode for the robot to perform a particular action. Then, student– section (McCauley et al., 2008). Regarding the psychometric properties
teachers were asked to write LEGO WeDo computer code for the of the test, McCauley et al. (2008) reports that two content experts
pseudocode, run the program, change it if needed, and write the assessed the validity of the test, and, resolved after discussion their
new/revised code in the space provided. The purpose here was for the differences. In order to determine the reliability of the test, the split-
student–teachers to receive gradual support through a number of half methodology was used and the reliability coefficient was found to
sequential completed or semi-completed programming tasks before be r = 0.89, which shows that the test is reliable (McCauley et al.,
asking them to devise a new algorithm on their own without support, in 2008).
order to provide a general solution to a new problem in pseudocode The aim of the three first sections of the test was to assess student–
form before writing computer code using the LEGO WeDo programming teachers’ algorithmic thinking skills, such as, sequencing,
language. correspondence between actions and instructions and control flow. The
fourth section assessed student–teachers’ debugging skills, that is the
3.5. Data collection instruments skill to recognize and correct errors. Most importantly, the test situates
the context of the questions in simple real-life tasks in order to show
Research data were collected using: (a) a pretest/posttest on the direct connection of learning to think algorithmically with real-life
assessing algorithmic thinking and debugging skills in real-world problem solving. In more detail, through the first section of the test,
student–teachers are assessed on sequencing skills, through the second
section on correspondence between actions and instructions, through
the third section on flow of control, and through the fourth section on
debugging. The test is included in Appendix B. The minimum mark on
the test was 0 points and the maximum mark was 16 points. Fifteen
minutes were allowed for administering the test.

5
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

Table 1 construct
Student–teachers’ descriptive statistics on the algorithmic thinking and debugging skills pretest/posttest.
the
‘‘Smart
Sequencing Correspondence between actions and instructions
Spinner’’
M SD Range N M SD Range N
and
Pretest program
1.54 1.36 0–4 50 1.93 1.60 0–4 50
the
Posttest
3.19 1.12 0–4 50 3.48 .92 0–4 50 robot
Debugging Flow of control using the
M
second
SD Range N M SD Range N
Pretest
1.42 1.31 0–4 50 2.07 1.76 0–4 50
Posttest
3.48 .79 0–4 50 3.53 1.16 0–4 50
3.5.2. Programming tasks scaffolded programming script that was given to them. At the end of this
For each programming task, student–teachers were given a textual Table 2
Descriptive statistics of student–teachers’ overall performances on the algorithmic thinking and
description of behavior that the robot had to exhibit, and, they had to debugging skills pretest and posttest.
write down pseudocode first for a suitable algorithm (see Appendix C for
Overall performance on Overall performance the on
an example). Then, they were asked to code the algorithm using the the pretest posttest
Lego WeDo programming language, run the computer program, and
debug it, if necessary. After debugging, student–teachers were asked to M SD range N M SD range n

write down the corrected/revised computer program. Each computer 6.96 3.98 0–16 50 13.66 2.82 0–16 50
program was scored on a scale from 0 to 10 points, based on the activity, students were asked to work individually on a new
following criteria: (a) the LEGO WeDo programming instructions were programming task related to the ‘‘Smart Spinner’’ that was used for
put in the correct sequence (4 points), (b) the flow of control was assessment purposes. Subsequently, the same procedures were
correctly decided (3 points), and (c) programming errors were identified, followed for the ‘‘Roaring Lion’’. Hence, the research data were
removed, and fixed (3 points). Student–teachers were allowed up to 15 collected over a period of three weeks. At the end of the last research
min for each programming task. section, the posttest on algorithmic thinking and debugging was
administered. Lastly, it is mentioned that all students were able to
3.6. Research procedure finish each programming task in 15 min, which was the time allotted,
and so no concessions were made for a different time.
Research data were collected in three three-hour laboratory
meetings facilitated by the principal investigator and author of this 4. Results
research study. Initially, the researcher used a series of reallife examples
in order to explain that algorithmic thinking and debugging are essential Table 1 shows the descriptive statistics of student–teachers’ initial
skills that everyone needs to have in order to cope well with the and final scores on algorithmic thinking (i.e., sequencing,
challenges in the modern workplace and real life. The pretest on correspondence between actions and instructions, and flow of control),
algorithmic thinking and debugging skills was then administered. After and debugging as these were measured by the pretest and posttest.
that, student–teachers were introduced to the elements of the LEGO As shown in Table 1, student–teachers’ initial scores in regards to
WeDo kit before building their first robot (‘‘Dancing Birds’’). sequencing (M = 1.54) and debugging (M = 1.42) were lower in
Subsequently, the first programming script was handed out to them. In
comparison to their initial scores on the two other skills, namely,
the beginning, the researcher explained the programming tasks and
correspondence between actions and instructions (M = 1.93) and flow
discussed each computer command (coding) systematically. The
researcher also discussed the definition of an algorithm, sequencing of of control (M = 2.07).
instructions, flow of control in the form of loops, and debugging. While Based on the posttest scores, student–teachers were able to raise
this process was followed systematically for the first two sections of the their initial scores on all skills by more than one unit. The skill that
‘‘Dancing Birds’’ programming script, soon after that the oral scaffolds demonstrated the largest increase was the skill of debugging, followed
provided by the researcher were removed, and student–teachers were by the skill of sequencing, correspondence between actions and
able to assume full agency of their learning discovering by themselves all instructions, and flow of control. Fig. 1 shows student–teachers’
other commands in the LEGO WeDo programming language. At the end learning gains for the skills of sequencing, flow of control, and
of the first programming activity, students were asked to work debugging across the two administrations of the pretest and posttest.
individually on a new programming task that was used for assessment In Table 2, student–teachers’ total scores on the pretest and posttest
purposes (see Appendix C for an example). are presented. According to the results in Table 2, student– teachers
Seven days later, the second three-hour research phase followed. scored more than 6 units higher (M = 13.66) on the posttest, than they
Students were welcomed back and reminded of what was accomplished did on the pretest, signifying the effectiveness of the teaching
during the first meeting. Additionally, for repeated measures purposes, intervention.
students were asked to work on the same programming task as the one
they worked on at the end of the first phase. Then, they were asked to

6
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

Subsequently, a multivariate analysis of covariance (MANCOVA) was programming task and the Roaring Lion programming task, F (1, 49) =
conducted to assess whether there were statistically significant 223.53, p < .01, F (1, 49) = 24.37, p < .01, and F (1, 49) = 223.93, p < .01,
differences between student–teachers’ posttest scores on the respectively.
algorithmic thinking skills of sequencing, correspondence between Fig. 4 shows student–teachers’ development of sequencing, flow of
Table 3 control,
Descriptive statistics on student–teachers’ performance on the four programming tasks. and
Programming Dancing
task 1: Birds (first testing occasion) Programming task 2: debugging
Dancing Birds (second testing occasion)
over time
M SD range N M SD range N across the
Sequencing 1.61 .96 0–4 50 2.12 1.14 0–4 50 four
Flow of control 1.09 .53 0–3 50 1.77 .63 0–3 50
Debugging 1.06 .57 0–3 50 1.69 .56 0–3 50
Total 3.76 2.05 0–10 50 5.58 2.21 0–10 50
Programming t ask 3: Programming task 4:
Smart Spinner Roaring Lion
M M SD range N
SD range N
Sequencing 2.43 .67 0–4 50 2.93 .73 0–4 50
Flow of control 2.09 .35 0–3 50 2.59 .45 0–3 50
Debugging 2.00 .29 0–3 50 2.68 .47 0–3 50
Total 6.52 1.15 0–10 50 8.20 1.56 0–10 50
actions and instructions, flow of control, and debugging taking into programming tasks.
consideration their pretest scores on the skills. The results showed that
student–teachers’ pretest scores on each skill were found to be 5. Discussion
statistically significant covariates on their posttest scores on each
respective skill as follows: (F (1, 49) = 32.04, p < .01) for sequencing, (F The results of the study showed that student–teachers experienced
statistically significant learning gains in the skills of sequencing,
(1, 49) = 19.09, p < .01) for correspondence between actions and
correspondence between actions and instructions, flow of control, and
instructions, (F (1, 49) = 6.27, p < .05) for flow of control, and (F (1, 49)
debugging after learning with the scaffolded programming scripts in the
= 23.81, p < .01) for debugging. After removing the effects of the context of robotic activities. These results are in line with research
covariates, the results indicated statistically significant learning gains in findings reported in the literature about the positive effects of learning
student–teachers’ scores on the posttest as follows: (F (1, 49) = 68.23, computer programming on learners’ development of algorithmic
p < .01) for sequencing, (F (1, 49) = 21.60, p < .01) for correspondence thinking skills and debugging (Bers et al., 2014; Resnick et al., 2009). In
between actions and instructions, (F (1, 49) = 6.27, p < .05) for flow of addition, the results showed that student–teachers’ initial debugging
control, and (F (1, 49) = 88.54, p < .01) for debugging. scores were lower in comparison to their initial scores on the other skills
The descriptive statistics in terms of the four programming tasks (see Figs. 1 and 2), a finding that is also supported by existing research in
regarding the robots Dancing Birds (two testing occasions), Smart the literature (Hartmann, MacDougall, Brandt, & Klemmer, 2010;
Spinner, and Roaring Lion are shown in Table 3. McCauley et al., 2008).
The mean performances were found to be for: (a) Sequencing - 1.61 Overall, the results indicate that the robotics intervention with
(SD = .96) for the first administration of the Dancing Birds programming scaffolded programming scripts was successful in developing pre-
task, 2.12 (SD = 1.14) for the second administration of the Dancing Birds service teachers’ algorithmic thinking skills and debugging. The design
of the robotics intervention with the scaffolded programming scripts in
programming task, 2.43 (SD = .67) for Smart Spinner, and 2.93 (SD =
the study is unique in that it incorporates particular strategies for
0.73) for Roaring Lion; (b) Flow of control – 1.09 (SD = .53) for the first
developing knowledge in the areas of computer programming and
administration of the Dancing Birds programming task, 1.77 (SD = .63) algorithmic thinking skills. The scaffolding strategies that were
for the second administration of the Dancing Birds programming task, incorporated have been shown to help student–teachers understand
2.09 (SD = .35) for Smart Spinner, and 2.59 (SD = .45) for Roaring Lion; programming (Sentance & Csizmadia, 2017; Van Gorp & Grissom,
(c) Debugging - 1.06 (SD = .57) for the first administration of the Dancing 2001), while the programming scripts were carefully designed for each
Birds programming task, 1.69 (SD = .56) for the second administration of robot to scaffold the learning of algorithmic thinking skills from
the Dancing Birds programming task, 2.00 (SD = .29) for Smart Spinner, sequencing to debugging to writing pseudocode and computer code,
and 2.68 (SD = .47) for Roaring Lion; and (d) Total score – 3.76 (SD = and testing the program. All in all, the study makes a unique
2.05) for the first administration of the Dancing Birds programming task, contribution to the computer science literature by showing the
5.58 (SD = 2.21) for the second administration of the Dancing Birds effectiveness of a pedagogical strategy that incorporates multiple
strategies to develop algorithmic thinking and debugging skills through
programming task, 6.52 (SD = 1.15) for Smart Spinner, and 8.20 (SD =
programming robots.
1.56) for Roaring Lion. Repeated measures analyses on the total scores
It is also worth mentioning that from a practical perspective the
revealed statistically significant differences between the first and second
study is also significant as the design of the training intervention can be
administration of the Dancing Birds programming task, the second
easily used in the context of a real classroom where LEGO WeDo is used
administration of the Dancing Birds programming task and the Smart
as part of the curriculum. This means that the scaffolded programming
Spinner programming task, and between the Smart Spinner
scripts can be easily adapted and used with elementary school

7
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

students, thus the study provides teachers with the specifics of a groups. For example, carrying out experimental and quasi-experimental
teaching strategy that can be directly applied during the teaching of studies in investigating the teaching of algorithmic thinking and
algorithmic thinking skills with various robotic devices in real classroom debugging skills in teacher education courses and beyond can be a
settings. promising and useful line of future research. Those improvements will
An issue that can be raised here is whether scaffolded programming allow for more rigorous accounts on the effectiveness of the
scripts constitutes a suitable approach for teacher education students interventions enabling researchers to develop a better understanding of
as well where learners are adults. The results of this study showed that the teaching of algorithmic thinking and debugging in teacher education
scaffolded programming scripts was a suitable approach for the teacher courses and other fields.
education students who participated in this study. It is restated though Also, while in this study the development of novice preservice
that the participants in this study were all novices with no prior teachers’ algorithmic thinking and debugging was promoted through the
knowledge in programming or robotics. Thus, the approach was use of scaffolded programming scripts as the primary instructional
effective and efficient for this particular cohort of university students, method, the field can benefit from future studies that will examine
because they lack prior knowledge and the step-by-step approach from learning designs for the purpose of promoting all computational thinking
simple to complex tasks provided a facilitating effect on their learning. skills across the four levels of the PGK hierarchy. As the results showed,
the
scaffolded

Fig. 4. Learning gains in the skills of sequencing, flow of control, and debugging across the four programming tasks.
It is speculated though that for more expert university students in their programming scripts afforded the development of computational
junior or senior years, the scaffolding programming scripts approach thinking at the two lower levels of the PGK hierarchy that are directly
will probably be beneficial at the beginning of their engagement, but related with the notions of algorithmic thinking and debugging.
along the way, it will evade its positive impact. This speculation However, researchers ought to gradually address the development of all
resonates well with the expertise reversal effect (Kalyuga, 2017; computational thinking skills in teacher education courses using
Kalyuga & Renkl, 2010), and, also demonstrated in Christodoulou’s appropriate learning designs. In particular, future research studies on
(Christodoulou, 2020) study on scaffolding techniques in teacher computational thinking can benefit from interventions where the
education, that procedures and techniques designed to reduce learners are first engaged in problem recognition and formulation and
extraneous cognitive load and increase levels of instructional guidance thereafter in designing and automating authentic solutions for solving
are more effective for novice learners, but may inhibit learning for the problems. Problem recognition is important to be included in future
more experienced learners by interfering with retrieval and application research studies, because it is what it will enable learners to develop the
of their available knowledge structures. Therefore, unnecessary skills of abstraction and pattern recognition (generalizability).
guidance and scaffolding should be removed as the learners acquire Lastly, another issue that arises is whether the intervention used in
higher levels of proficiency in a specific domain. In conclusion, this study, namely the scaffolded programming scripts along with the
scaffolded programming scripts can be used in teacher education robotics kit LEGO WeDo, will have transfer effects to other settings with
programs to teach about computational thinking skills, but teacher different programming languages and robotics kits. This issue related to
educators should be constantly assessing student–teachers’ levels of the generality of programming skills is important to further investigate
expertise and accordingly employ other teaching strategies in order to with important implications for learning design and utilization of
differentiate instruction and maximize learning gains for all students. programming environments in teacher education courses and beyond.

6. Limitations and future directions 7. Selection and participation

The research design assumed in this research study was a onegroup The study herein did not involve the participation of children as
only design, thus the field can benefit from undertaking more advanced subjects/participants in this study, only pre-service teachers.
research designs in future studies, such as designs with two or more Specifically, fifty second-year pre-service elementary school teachers

8
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

who were enrolled in a mandatory educational technology course in a novices in the areas of algorithmic thinking, programming, and
Southern European university participated in the study after signing robotics.
consent forms. All research participants had basic computing skills in
the areas of windows, word processing, spreadsheets, presentation
tools, and the Internet. The average age of the participants was 18.75 Declaration of competing interest
years old (SD = 0.37) and the majority of the participants was females.
There were 44 females and 6 males in the course. None of the The authors declare that they have no known competing financial
participants had previous experience with programming, and building interests or personal relationships that could have appeared to
and programming robotic devices. Thus, all pre-service teachers were influence the work reported in this paper.

9
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

Appendix A

10
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

11
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

12
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

13
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

14
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

15
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

16
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

17
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

Appendix B

18
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

19
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

20
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

Appendix C Bers, M. U., Flannery, L., Kazakoff, E. R., & Sullivan, A. (2014). Computational thinking and
tinkering: Exploration of an early childhood robotics curriculum. Computers & Education,
72, 145–157.

References

Çetin, M., & Demircan, H. Ö. (2018). Empowering technology and engineering for STEM
Angeli, C., & Valanides, N. (2020). Developing young children’s computational thinking with education through programming robots: a systematic literature review. Early Child
educational robotics: An interaction effect between gender and scaffolding strategy. Development and Care, 1–13.
Computers in Human Behavior, 105, Article 105954. Chalmers, C. (2018). Robotics and computational thinking in primary school. International
Armoni, M. (2013). On teaching abstraction in computer science to novices. Journal of Journal of Child-Computer Interaction, 17, 93–100.
Computers in Mathematics and Science Teaching, 32, 265–284. Ching, Y. H., Hsu, Y. C., & Baldwin, S. (2018). Developing computational thinking with
educational technologies for young learners. TechTrends, 62(6), 563–573.

21
C. Angeli International Journal of Child-Computer Interaction 31 (2022) 100329

Christodoulou, A. 2020. e-TPCK: An adaptive E-learning system for developing pre-service Sengupta, P., Kinnebrew, J. S., Basu, S., Biswas, G., & Clark, D. (2013). Integrating computational
teachers’ technological pedagogical content knowledge (Doctoral Dissertation). University thinking with K-12 science education using agent-based computation: A theoretical
of Cyprus. framework. Education and Information Technologies, 18(2), 351–380.
Sentance, S., & Csizmadia, A. (2017). Computing in the curriculum: Challenges and strategies
Denning, P. J. (2009). The profession of IT beyond computational thinking. Communications of
from a teacher’s perspective. Education and Information Technologies, 22(2), 469–495.
the ACM, 52, 28–30.
Stoeckelmayr, K., Tesar, M., & Hofmann, A. (2011). Pre-primary children programming robots: a
Gretter, S., & Yadav, A. (2016). Computational thinking and media & information literacy: An first attempt. In Proceedings of 2nd international conference on robotics in education
integrated approach to teaching twenty-first-century skills. TechTrends, 1–7. INNOC - Austrian society for innovative computer sciences, Vienna, Austria (pp. 185–192).
Sullivan, A. A., Bers, M. U., & Mihm, C. (2017). Imagining, playing, and coding with KIBO: using
Grover, S., & Pea, R. (2013). Computational thinking in K–12: A review of the state of the field.
robotics to foster computational thinking in young children (p. 110). Hong Kong: The
Educational Researcher, 42, 38–43.
Education University of Hong Kong.
Guzdial, M. (2008). Education: Paving the way for computational thinking. Communications of The Royal Society (2012). Shut down or restart? the way forward for computing in UK schools.
the ACM, 51, 25–27. London: The Royal Society.
Van Gorp, M. J., & Grissom, S. (2001). An empirical evaluation of using constructive classroom
Hammond, J., & Gibbons, P. (2005). Putting scaffolding to work: The contribution of scaffolding
activities to teach introductory programming. Computer Science Education, 11(3), 247–
in articulating ESL education.
260.
Hartmann, B., MacDougall, D., Brandt, J., & Klemmer, S. R. (2010). What would other Van Merriënboer, J. J. (1997). Training complex cognitive skills: A four-component instructional
programmers do: suggesting solutions to error messages. In Proceedings of the SIGCHI design model for technical training. New Jersey: Educational Technology Publications.
conference on human factors in computing systems (pp. 1019-1028). Van Merriënboer, J. J., & Kirschner, P. A. (2017). Ten steps to complex learning: A systematic
approach to four-component instructional design. Routledge.
Highfield, K. (2010). Robotic toys as a catalyst for mathematical problem solving. vol. 15, In
Van Merrienboer, J. J., & Sweller, J. (2005). Cognitive load theory and complex learning: Recent
Australian primary mathematics classroom (pp. 22–27).
developments and future directions. Educational Psychology Review, 17(2), 147–177.
Ilieva, V. (2010). ROBOTICS in the Primary School – how to do it? In Proceeding of SIMPAR 2010 Vygotsky, L. S. (1978). Socio-cultural theory. Mind in Society, 52–58.
workshops, Darmstadt, Germany (pp. 596–605) Wilensky, U., Brady, C. E., & Horn, M. S. (2014). Fostering computational literacy in science
. classrooms. Communications of the ACM, 57(8), 24–28.
Ioannou, A., & Makridou, E. (2018). Exploring the potentials of educational robotics in the Wing, J. (2006). Computational thinking. Communications of the ACM, 49, 33–35. Wing, J. M.
development of computational thinking: A summary of current research and practical (2011). Computational thinking. In VL/HCC (p. 3).
proposal for future work. Education and Information Technologies, 23(6), 2531–2544. Yadav, A., Mayfield, C., Zhou, N., Hambrusch, S., & Korb, J. T. (2014). Computational thinking in
Jung, U., Kim, H., Lee, M. H., Lee, H., & Ahn, S. (2018). A study on the factors influencing elementary and secondary teacher education. ACM Transactions on Computing Education
computational thinking ability of secondary school students in bebras challenge 2017. The (TOCE), 5.
Journal of Korean Association of Computer Education, 21(3), 21–33. Yadav, A., Zhou, N., Mayfield, C., Hambrusch, S., & Korb, J. T. (2011). Introducing computational
Kalyuga, S. (2017). Expertise reversal effect and its implications for learner-tailored instruction. thinking in education courses. In Proceedings of the 42nd ACM technical symposium on
Educational Psychology Review, 19(4), 509–539. computer science education (pp. 465–470). ACM.
Kalyuga, S., & Renkl, A. (2010). Expertise reversal effect and its instructional implications:
Introduction to the special issue. Instructional Science, 38(3), 209–215.
Kazakoff, E., & Bers, M. (2012). Programming in a robotics context in the pre primary classroom:
The impact on sequencing skills. Journal of Educational Multimedia and Hypermedia, 21,
371–391.
Lu, J. J., & Fletcher, G. H. (2009). Thinking about computational thinking. ACM SIGCSE Bulletin,
41(1), 260–264.
Lye, S. Y., & Koh, J. H. L. (2014). Review on teaching and learning of computa tional thinking
through programming: What is next for K-12? Computers in Human Behavior, 41, 51–61.
Matthíasdóttir, Á. (2006). How to teach programming languages to novice students? Lecturing
or not. In International conference on computer systems and technologies-compsystech:
Vol. 6 (pp. 15-16).
Maybin, J., Mercer, N., & Stierer, B. (1992). Scaffolding learning in the classroom. (pp. 186–195).
Mayerová, K. (2012). Pilot activities: LEGO WeDo at primary school. In Proceedings of 3rd
international workshop on teaching robotics, teaching with robotics integrating robotics in
school curriculum, Trento, Italy (pp. 32-39).
McCauley, R., Fitzgerald, S., Lewandowski, G., Murphy, L., Simon, B., Thomas, L., et al. (2008).
Debugging: a review of the literature from an educational perspective. Computer Science
Education, 18(2), 67–92.
Mercer, N. (1994). Neo-Vygotskian theory and classroom education, Language, literacy and
learning in educational practice. (pp. 92–110).
National Research Council (2010). Committee for the workshops on computational thinking:
report of a workshop on the scope and nature of computational thinking. Washington, DC:
National Academy Press.
National Research Council (2011). Committee for the workshops on computational thinking:
report of a workshop on pedagogical aspects of computational thinking. Washington, DC:
National Academy Press.
Perrenet, J., Groote, J. F., & Kaasenbrood, E. (2005). Exploring students’ understanding of the
concept of the algorithm: Levels of abstraction. ACM SIGCSE Bulletin, 37, 64–68.
Perrenet, J., & Kaasenbrood, E. (2006). Levels of abstraction in students’ understanding of the
concept of the algorithm: The qualitative perspective. ACM SIGCSE Bulletin, 38, 270–274.
Resnick, M., Maloney, J., Monroy-Hernández, A., Rusk, N., Eastmond, E., & Brennan, K. (2009).
Scratch: programming for all. Communications of the ACM, 52, 60–67.
Robins, A., Rountree, J., & Rountree, N. (2003). Learning and teaching programming: A review
and discussion. Computer Science Education, 13(2), 137–172.
Saari, E. M., Blanchfield, P., & Hopkins, G. (2015). Learning computational thinking through the
use of flash action scripts. In Proceedings of the 7th international conference on computer
supported education: Vol. 2.
Selby, C. C. (2012). Promoting computational thinking with programming. In Proceedings of the
7th workshop in primary and secondary computing education, New York (pp. 74-77).

22

You might also like