Handout 3 - Use Modify Create in Computing
Handout 3 - Use Modify Create in Computing
Computational
Thinking for
Youth in Practice
Irene Lee ■ Fred Martin ■ Jill Denner ■ Bob Coulter ■ Walter Allan
Jeri Erickson ■ Joyce Malyn-Smith ■ Linda Werner
Computational thinking (CT) has and Teachers (ITEST), Academies for Young Scientists (AYS) and
been described as the use of abstraction, automation, Research and Evaluation on Education in Science and Engineering
(REESE) programs. The examples provide a lens through which one
and analysis in problem-solving [3]. We examine can consider the implications for learning and teaching computational
how these ways of thinking take shape for middle thinking in grades K through 12.
and high school youth in a set of NSF-supported
programs. We discuss opportunities and challenges Key questions include:
■ What does computational thinking for youth look like in practice?
in both in-school and after-school contexts. Based on ■ How can we support growth in computational thinking, both in
1
(CSTA) and the International Society for Technology in Education
INTRODUCTION
➧ Computational thinking (CT) is a term coined by Jeannette
(ISTE) as part of the Computational Thinking Thought Leaders
project, and to further the discussion by presenting examples of com-
Wing [11] to describe a set of thinking skills, habits and approaches putational thinking in action within programs for youth in both for-
that are integral to solving complex problems using a computer and mal and informal settings.
widely applicable in the information society. Thinking computation-
ally draws on the concepts that are fundamental to computer science,
2
and involves systematically and efficiently processing information and
COMPUTATION THINKING FOR
tasks. CT involves defining, understanding, and solving problems,
reasoning at multiple levels of abstraction, understanding and apply- ➧ YOUTH IN PRACTICE
ing automation, and analyzing the appropriateness of the abstractions In this paper, we respond to several recent calls to describe CT
made. CT shares elements with various other types of thinking such among youth and to identify strategies for integrating CT into
as algorithmic thinking, engineering thinking, design thinking, and K-12 settings [4][5][7]. We apply and build on existing descrip-
mathematical thinking. As such, CT draws on a rich legacy of related tions of CT, which have been based on thinking like a computer
frameworks as it extends previous thinking skills. scientist in college and beyond. Specifically, we offer examples of
This paper aims to help computing and STEM (science, technol- what computational thinking looks like among youth from a range
ogy, engineering and mathematics) educators understand computa- of cultural and socioeconomic backgrounds, both in and out of
tional thinking (what it looks like “in practice”, how it connects with school. Examples are drawn from three domains: modeling and
their existing curriculum, and how to nurture computational think- simulation, robotics, and game design and development. Across
ing in today’s youth) by sharing rich examples from National Science these domains, we have identified commonalities in the nature of
Foundation funded Innovative Technology Experiences for Students youth’s computational thinking.
We found the terms of abstraction, automation, and analysis [3] the process of abstraction to narrow the problem down to something
to be useful for understanding how youth can use CT to approach that could be implemented on the computer using StarLogo TNG,
novel problems. Abstraction is “the process of generalizing from spe- an agent based modeling tool. Restrictions imposed by the model-
cific instances.” In problem solving, abstraction may take the form of ing environment include an upper bound on the number of agents
stripping down a problem to what is believed to be its bare essentials. (4076) and a limit on the size of the environment (101 by 101 cells).
Abstraction is also commonly defined as the capturing of common Within these parameters students designed and created models as
characteristics or actions into one set that can be used to represent testbeds to answer questions about real-world concerns. For exam-
all other instances. Automation is a labor saving process in which a ple, as part of the Project GUTS unit on Epidemiology, a group of
computer is instructed to execute a set of repetitive tasks quickly and students wanted to know if a disease would spread throughout their
efficiently compared to the processing power of a human. In this light, school population given the layout of the school, the number of stu-
computer programs are “automations of abstractions.” Analysis is a re- dents, the movement of the students, the virulence of the disease,
flective practice that refers to the validation of whether the abstractions and the number of students initially infected. See Figure 1.
made were correct. One might ask “Were the right assumptions made
when narrowing the problem to its bare essentials?”, “Were important
factors left out?” or “Was the implementation of the abstraction or
automation faulty?” Table 1 provides a summary of these domains
games, and analyze them in terms of playability, and whether they 3.2 Three-stage Progression “Use-Modify-Create”
have created the best (most efficient, most believable, or most fun) Second, we propose using a three-stage progression for engaging
abstractions. youth in CT within these rich computational environments. This
progression, called Use-Modify-Create, describes a pattern of en-
2.4 Other Domains gagement (see Figure 5) that was seen to support and deepen youth’s
The domains mentioned are by no means a comprehensive list. acquisition of CT in the authors’ NSF projects. It is based on the
There are many other domains such as designing and program- premise that scaffolding increasingly deep interactions will promote
ming webpages, cell phone apps, etc. that have potential to develop the acquisition and development of CT. In the use stage, students
CT in youth. Common among these examples is the active use are consumers of someone else’s creation. For example, they run ex-
of key computational thinking concepts: abstraction, automation periments using pre-existing computer models, run a program that
and, to various extents, analysis, by youth within middle school controls a robot, or play a ready-made computer game. Over time
programs. Through these examples, we posit that not only is CT they begin to modify the model, game or program with increasing
possible at the middle school level, it can easily be embedded levels of sophistication. For example, a student may initially want to
within activities that encourage youth to be creators, innovators, change the color of a character or some other purely visual attribute.
and problem-solvers. Computational thinking projects like these Later the student may want to change the character’s behavior in a
support an iterative cycle of refinement that enables increasing a
sense of agency, where learners are empowered to imagine, create,
play, share, and reflect on what they are learning [9]. In all of these
projects, the end result is a unique product created by the students.
➧ 3 SUPPORTING GROWTH IN
COMPUTATIONAL THINKING
Based on our experiences with youth learning CT both during the
school day and out- of- school contexts, we suggest concrete steps that
can be taken to support the development of computational thinking.
Figure 5: Use-Modify-Create
3.1 Rich Computational Environments Learning Progression
The first is the use of rich computational environments. Rich com-
putational environments are ones in which the underlying abstrac- way that entails developing new pieces of code. Modification of this
tions and mechanisms can be inspected, manipulated and custom- kind necessitates an understanding of at least a subset of the abstrac-
ized. For example, consider the differences between SimCity and a tion and automation contained within a program, model or game.
model in StarLogo TNG. In SimCity, a user may add buildings to Through a series of modifications and iterative refinements, new
a city and see correlations between adding buildings and CO2 pro- skills and understandings are developed as what was once someone
duction but the underlying formulae and model are hidden from else’s becomes one’s own. As youth gain skills and confidence, they
view. Contrast that with a StarLogo TNG environment in which can be encouraged to develop ideas for new computational projects
the user can “look under the hood” and inspect the causal rela- of their own design that address issues of their choosing. Within
tionships and abstractions that are embedded in a model. The rich this “create” stage, all three key aspects of computational thinking:
computational environment is one in which the user can develop abstraction, automation and analysis, come into play.
CT skills and transform from user to creator. See Figure 4. Moving through this progression, it is important to maintain
a level of challenge that supports growth while limiting anxi-
ety. As Repenning [8] notes, students can maintain their sense
of cognitive flow [1] as they progress iteratively through a series
of projects. In this work, students tackle progressively higher de-
sign challenges as their skills and capacities increase. Activities
that were once “too hard” and were anxiety-inducing become
possible with appropriate, incrementally challenging experiences.
Conversely, boredom will set in if challenges don’t keep pace with
growing skills [8]. While we are advocating use of this three-stage
progression to foster growth over time and with increasing capac-
ity, we also raise a caution about taking it too literally. Just as an
early teenage youth is moving from childhood to adolescence in
fits and starts, there are no clean break points from using to modi-
Figure 4: Inspecting the mechanism for infection in a basic contagion fying to creating. Youth may transition back and forth from users
model in StarLogo TNG. to modifiers to creators.
4
programming challenges as a way of introducing them to the com-
CONCLUSIONS
putational thinking that underlies the simulations. Through guided
experimentation, EcoScienceWorks deepens students’ understand- ➧ The call for integrating CT into K-12 settings has
ing of both ecology and computer modeling. been growing increasingly louder, despite the lack of descrip-
The success of the project has been partly a result of address- tions of what learning to think computationally actually looks like
ing some of the challenges in introducing computational think- among youth. In this paper, we have contributed to efforts to define
ing into the classroom head on. For instance, because CT is not and support CT for youth by using examples from several youth
evaluated by standardized testing, it is difficult in the current projects to make two key points.
educational climate for teachers to teach CT concepts directly. The first key point is that existing definitions of CT can be ap-
The ESW staff addressed this constraint by designing a simula- plied to K-12 settings. The examples show that youth can engage
tion-based ecology curriculum in which the CT portions of the in key aspects of computational thinking within programs focus-
ing on modeling and simulation, robotics, and
game design and development. Students from
Implementing CT during the school a range of backgrounds are able to use abstrac-
tion, automation, and analysis to create original
day is a compelling vision, but products when given access to rich learning en-
vironments that include skilled teachers, devel-
there are substantial challenges to opmental considerations, and usually include
new technology. However, the field requires
this, including existing curriculum systematic assessment procedures that build on
existing research from the learning sciences in
standards, lack of opportunities for order to describe the developmental progres-
sion of these three CT constructs. Some of the
teachers to learn CT as part of their authors are currently testing a variety of assess-
ment approaches.
professional development, and lack The second key point is that CT takes place
on a continuum. The use-modify-create pro-
of access to necessary infrastructure. gression is offered as a framework for educa-
tors and researchers that are looking at how
CT develops, and how that development can
curriculum were what students had to do in order to fulfill ex- be supported. But research is needed to understand why students
plicit content learning goals. That is, an ecology curriculum that are thinking at different levels of abstraction, automation, and
arguably required CT was designed to replace the existing cur- analysis. These differences may be a function of students working
riculum that focused on content transfer. With this pedagogical in different phases of the use-modify-create learning progression.
design, the required core ecology concepts could be covered in For example, we suggest that moving from modifying to creating
much greater depth, and CT was fostered through the use and an original project requires increasing levels of abstract representa-
understanding of computational models. tion and understanding. Similarly, simple analysis includes testing
While this work offers a promising example, it is important to rec- and debugging a program, while a deeper level of analysis would
ognize the resources that were necessary in order for it to be success- involve trying to determine if a model can be validated against real-
ful. Infrastructure was not a significant obstacle as each student had world data. As a foundation moving forward, the use-modify-cre-
access to a laptop, district support had been established, and intensive ate framework offers a helpful progression for developing CT over
support was provided by the project staff in the form of professional time. Its greatest benefit is in illustrating the benefits arising from
development and ongoing assistance. Transformative applications of engaging youth with progressively more complex tasks and giving
CT can work in schools with all of these ingredients in place. them increasing ownership of their learning.
Implementing CT during the school day is a compelling vision, This paper aims to inform efforts to engage K-12 students in
but there are substantial challenges to this, including existing cur- CT, and to assess the value of these efforts. We recommend that
riculum standards, lack of opportunities for teachers to learn CT as future efforts get more specific about the type and level of CT that
part of their professional development, and lack of access to neces- will be addressed. The CS Principles project has moved this effort
Computing Research
Association
◆ ◆ ◆ ◆ ◆
www.cra.org