Conference PaperPDF Available

Floors and Flexibility: Designing a Programming Environment for 4th-6th Grade Classrooms

Authors:

Abstract

The recent renaissance in early computer science education has provided K-12 teachers with multiple options for introducing children to computer science. However, tools for teaching programming for children with wide-scale adoption have been targeted mostly at pre-readers or middle school and higher grade-levels. This leaves a gap for 4th -- 6th grade students, who differ developmentally from older and younger students. In this paper, we investigate block-based programming languages targeted at elementary and middle school students and demonstrate a gap in existing programming languages appropriate for 4th -- 6th grade classrooms. We analyze the benefits of Scratch, ScratchJr, and Blockly for students and curriculum developers. We describe the design principles we created based on our experiences using block-based programming in 4th -- 6th grade classrooms, and introduce LaPlaya, a language and development environment designed specifically for children in the gap between grades K-3 and middle school students.
Permission to make digital or hard copies of all or part of this work for personal or
classroom use is granted without fee provided that copies are not made or
distributed for profit or commercial advantage and that copies bear this notice and
the full citation on the first page. Copyrights for components of this work owned by
others than ACM must be honored. Abstracting with credit is permitted. To copy
otherwise, or republish, to post on servers or to redistribute to lists, requires prior
specific permission and/or a fee. Request permissions from permissions@acm.org.
SIGCSE’15, March 4–7, 2015, Kansas City, MO, USA.
Copyright © 2015 ACM 978-1-4503-2966-8/15/03…$15.00.
http://dx.doi.org/10.1145/2676723.2677275
Floors and Flexibility: Designing a Programming
Environment for 4th-6th Grade Classrooms
Charlotte Hill†, Hilary A. Dwyer‡, Tim Martinez†, Danielle Harlow‡, Diana Franklin†
{charlottehill, franklin}@cs.ucsb.edu, {hdwyer, dharlow}@education.ucsb.edu, tmartinez@umail.ucsb.edu
†Computer Science Department
UC Santa Barbara
‡Gevirtz Graduate School of Education
UC Santa Barbara
ABSTRACT
The recent renaissance in early computer science education has
provided K-12 teachers with multiple options for introducing
children to computer science. However, tools for teaching
programming for children with wide-scale adoption have been
targeted mostly at pre-readers or middle school and higher grade-
levels. This leaves a gap for 4th – 6th grade students, who differ
developmentally from older and younger students.
In this paper, we investigate block-based programming languages
targeted at elementary and middle school students and
demonstrate a gap in existing programming languages appropriate
for 4th – 6th grade classrooms. We analyze the benefits of Scratch,
ScratchJr, and Blockly for students and curriculum developers.
We describe the design principles we created based on our
experiences using block-based programming in 4th – 6th grade
classrooms, and introduce LaPlaya, a language and development
environment designed specifically for children in the gap between
grades K-3 and middle school students.
Categories and Subject Descriptors
D.1.7 [Programming Techniques]: Visual Programming;
K.3.2 [Computer and Information Science Education]:
Computer Science Education.
Keywords
Computer science education, elementary school, middle school,
graphical programming. novice programming environments
1. INTRODUCTION
In an effort to engage young children in computer science,
computer scientists have developed a variety of educational
programming platforms, activities [23, 9, 17, 4] and outreach
programs [3, 2, 12]. In the past few years, momentum has
increased for elementary schools to teach computational thinking
in their classrooms. Eighth graders’ reported interest in pursuing a
career in science and engineering areas is a strong predictor of
whether or not they will later pursue a science career [28].
Further, after-school opportunities or summer camps where
middle and elementary school students are likely to be introduced
to computer science are less available to students from
impoverished areas [6]. Adding computational thinking to earlier
grade levels and integrating the subject into K-8 schooling will
provide students from more backgrounds exposure to computer
science at an age when they prepare to make decisions about their
future. Moreover, these efforts may increase diversity in computer
science fields, combat the dire shortage of computing majors, and
create a higher level of the computing literacy that will be
necessary for the innovators of the next century.
In order to gain deeper insight into how 4th – 6th grade students
(children ages 9-12) learn computer science, we modified an
existing middle-school curriculum from the Animal Tlatoque
summer camp to be appropriate for 4th grade [12]. We provided
programming activities in a variant of Scratch [23] with starting
files that the students manipulated and modified. During the 2013-
14 academic year, we revised and refined these activities based on
feedback from the classrooms about what students struggled with
and excelled in.
Although elementary school students are capable of programming
[21, 28], while developing curricula for 4th – 6th grade, we found a
gap in the programming languages available for children. Many
popular block-based languages are targeted either toward pre-
readers or children with math and language skills above 4th – 6th
grade. Moreover, these languages are embedded in programming
environments with interface features not developmentally
appropriate for this age group; they contain features that are too
complex, making the floor for entry too high for these students, or
they do not provide students appropriate control over their
projects. Additionally, existing block-based languages either
require curriculum developers to create projects that fit the
constraints of the environment, or to have the programming
background needed to customize the environment for the project.
New tools that are sufficiently flexible and have an entry floor
level appropriate level for upper elementary school students are
needed to make computer science successful in a regular
classroom.
Here we present our design goals for a block-based language
targeted towards 4th – 6th grade. Our design goals are influenced
by the challenges that students faced during the pilot of our
curriculum when using a programming environment not
developmentally appropriate for their age. We look at Scratch,
ScratchJr, and Blockly, and assess their appropriateness for
curriculum development at this age group [23, 13, 10]. Finally, we
introduce LaPlaya, the language we designed to fill the gap in
development environments for upper elementary school
classrooms.
This paper is organized as follows. We provide background on the
elementary school classroom setting and a brief summary of
related work in Section 2. In Section 3, we look at existing block-
based languages (Scratch, ScratchJr, and Blockly). In Section 4
546
we detail the design principles we used to create a new
programming environment, LaPlaya. Finally, Section 5 contains
our plans for future work.
2. BACKGROUND & RELATED WORK
Students’ academic knowledge and skills increase rapidly as they
progress throughout elementary school and into middle school. A
development environment for this age group must be flexible and
expand as they learn, or the students will outgrow it. Students in
upper elementary school differ in important ways from their
younger counterparts. In second and third grade, “the mechanical
demands of learning to read are so taxing at this point that
children have few resources left over to process the content. In
fourth through eighth grade, children become increasingly able to
obtain new information from print” (p. 333) [26]. In fact, upper
elementary school is an important transitional time for children’s
development. These students are developing linguistic,
kinesthetic, and cognitive skills necessary to successfully interact
with computers. Further, these students are learning key concepts
from other fields, like math and science, needed to successfully
program. As examples, key math concepts such as division,
negative numbers, and percentages are taught during upper
elementary school.
Fourth graders today are commonly described as “digital natives”
because they have never known a world without computers or the
Internet [5]. Although access to technology varies, particularly
depending on students’ socioeconomic levels, today’s 4th graders
have some familiarity with computers and ideas about how to
interact with them. Students enter the computer lab already
familiar with computers, but as users rather than developers.
Kolikant characterizes computer science classes as encounters
between intertwined cultures. Students are members of the culture
of school, and are already familiar with computers as part of the
“user” culture [5], but they are newcomers to the computing
culture.
Previous studies have looked at the development environment’s
influence on students’ roles as users or developers. In the creation
of ScratchJr, a visual language based on Scratch, the developers
removed “instant gratification” buttons, or buttons that produce an
immediate effect on the state of the program, so children would
spend less time playing with the software’s features and more
time creating [18]. However, Kazakoff found that kindergarteners
using ScratchJr in their classroom still spent a significant time
using the environment’s paint editor instead of programming [18].
Kerr provided pre-built scenes to students for creating digital
stories and found that they used more constructs and methods, and
spent twice as long modifying their programs as students who
created all the scenes themselves [19]. The development
environment itself plays a crucial role in guiding students to be
developers rather than users.
Researchers in human computer interaction have identified
multiple points to consider when designing software for children,
as children interact with computers differently than adults.
Bruckman, Bandlow, Dimond, and Forte noted that software
designers must attend to the physical and cognitive differences of
children such as their limited skills with typing, reading, and
manipulating keyboards and mice, as well as their more limited
linguistic experiences which prevent them from understanding
metaphors common among adults [7]. For example, program
designers must attend to children’s fine motor control. Compared
to adults, children struggle holding down the mouse for extended
periods or even double-clicking; therefore, young children tend to
perform point-and-click movements more quickly and accurately
than drag-and-drop commands [15, 27]. As another example,
young children can become easily distracted by complex
interfaces, and Halgren et al chose to redesign interface by hiding
advanced tools, so children (ages 5-14) would not stumble upon
them and get lost in their functionality [16]. These findings
influenced our development of LaPlaya, which we describe in
Section 5.
Studying children’s learning of computer science is additionally
complex because the programming environment directly impacts
available opportunities for learning. Several programming
languages developed for children and novice programmers such as
Scratch, Alice, and AgentSheets use graphical programming
environments and limit the commands available for students to
use [23, 8, 25]. Compared to traditional programming
environments, graphical programming lowers the cognitive
barriers to programming by removing obstacles such as
remembering specific vocabulary and formatting rules of
computer languages. Instead of writing out programming
commands, users snap commands together to form scripts and see
the output of their programs immediately, thereby circumventing
most required syntax or specific vocabulary. As a result, these
languages offer benefits for novice programmers of all ages.
Malan and Leitner advocated using Scratch even at the
undergraduate level, as a gateway language to languages like Java
[22]. Further, block based languages like Scratch can improve
students’ attitudes and increase confidence in programming [20].
3. POPULAR BLOCK-BASED
ENVIRONMENTS
Block based environments have gained popularity with novice
programmers because they reduce the need for typing and get rid
of many syntax errors. Unlike textual programming languages,
block based languages are closely tied to the development
environment in which they are embedded. Many development
environments are inspired by Scratch, a block-based language
designed for ages 8-16 [23]. Scratch provides blocks of
programming commands that users attach together like puzzle
pieces to create scripts that control the actions of the sprites, 2D
characters on the stage. In this section, we present our findings
from using Scratch in 4th – 6th grade classrooms and then look at
ScratchJr and Blockly, two other block-based environments, and
their appropriateness for this age group [13, 10]. Example scripts
from Scratch, ScratchJr, Blockly, and LaPlaya are shown in
Figure 1.
3.1 Methods
Our results on Scratch are informed by the pilot of a 4th grade
computational thinking curriculum. This curriculum consists of
three types of activities: short, pre-populated projects that students
can finish within a lab period; off computer activities in the
classroom that tie computational thinking concepts back to every
day life; and an open-ended design-thinking digital story project.
This curriculum was designed specifically for Scratch [12] and
introduced multiple concepts necessary for digital storytelling:
sequential execution, event-based programming, initialization,
message passing, costume changes, and scene changes. The
initial version used the original Scratch language in a slightly
modified environment; blocks that had not been introduced were
hidden in order to support the short, lab-length conceptual
learning tasks.
We piloted the curriculum in fifteen 4th – 6th grade classrooms at
five schools across California. We refer to these schools as A, B,
547
C
I
n
A
T
p
3
W
w
s
t
h
p
u
d
3
I
n
e
p
e
s
t
o
p
l
e
9
n
d
s
e
t
h
A
b
s
y
g
t
o
u
t
o
p
v
c
P
d
3
S
t
h
b
c
a
h
C
, D an
d
E, wit
h
n
schools B an
d
, C, and D, w
he schools
p
articipating, sta
r
3
.2 Findin
g
e originally i
e piloted it i
s
truggled with s
o
h
is analysis, w
e
p
ilot materials.
F
sed a variant
d
ifficulties stude
3
.2.1 The In
t
our pilot c
nvironment dis
p
re-
p
opulated p
r
e
lements. Some
s
tarted with, ma
k
o
add these ba
c
p
rojects), we fo
u
e
ast 4.5% of p
r
9
.6% of project
s
umber of proj
eveloped these
tudents submitt
lement of the p
e original vers
dditionally, st
y “instant grat
prite” button a
y
ou click on it.
T
g
roups. As an e
x
o
one project.
u
nnecessary spri
allow student
roblem, “insta
ehicles for ex
omputer lab
roviding the a
d
esigning an int
e
3
.2.2 The La
S
cripts can mo
v
ey look, from
locks needed
oncepts above
re appropriate
ide specific bl
Common Co
r
Cartesian co
Negative
n
Percent
a
Decimal n
u
Table 1. Math
A being the fir
d
E, we collecte
d
observed inst
h
a
d
varying n
u
t dates, and or
g
s
tended our cur
n
4
th
grade cla
s
o
me math conc
e
focus on scho
or the schools
o
f Scratch and
ts had at scho
t
erface:
D
istr
a
asses, we fou
t
racted or allo
w
ojects without
students delete
d
k
ing it difficult
c
k later. In sch
o
nd that stude
ojects, and de
s
. These numbe
r
cts where spri
statistics from
f
d, but when st
oject they nee
on of the provi
dents of this ag
fication” butto
ds a new rand
hese buttons c
x
ample, one stu
d
Further, in sc
h
t
es in 10.1% of
to explore and
t gratification”
loration to dis
a
s students o
b
ility to limit
rface for this a
n
guage:
M
at
h
e sprites acros
their size to t
to change the
t
he 4
th
grade lev
e
r older groups,
cks when wor
r
e Concept G
r
o
rdinates
n
umbers
a
ges
u
mbers
Concepts in S
t school trial a
only student p
uction and int
mbers of cl
d
er of projects.
iculum to use
srooms, we fo
pts and parts o
ls A and B, t
with later star
changed the in
t
o
ls A and B.
a
ctions and
D
n
d aspects of
ed students to
clear ways o
f
d
the scripts or
s
or even imposs
i
o
ols A and B (
ts deleted pro
l
eted provided
s
s might be lo
tes or scripts
inal versions o
u
dents realized t
h
ed, they freque
d
ed file.
group are like
n
s [18]. For ex
a
m sprite to th
an be distractin
d
ent in our stud
y
ools A and
projects. Altho
find different
buttons can s
t
ractions that s
p
b
serve their
p
s
uch features i
s
g
e group.
h
Content
the screen an
eir color. How
states of spri
e
l. Although so
m
Scratch does n
o
ing with youn
r
ade
E
xam
pl
5
6
6
4
ratch and the
d E being the la
r
ojects. In scho
o
rviewed studen
a
ssrooms, gra
d
cratch, but wh
nd that stude
f
the interface.
F
h
e first to use
o
t
dates (C-E),
w
t
erface to addr
e
D
ifficulties
the developm
elete parts of t
f
recovering l
o
s
prites that the
fi
i
ble in some ca
s
142 students, 5
ided sprites in
s
cripts in at le
a
er than the act
w
ere deleted.
W
assignments t
ey had deleted
n
tly restarted w
i
l
y to be distract
e
a
mple, a “surpr
i
stage every ti
for younger a
y
added 34 spri
t
B
, students add
e
gh it is import
ays of solving t
itch from bei
read through t
p
eers’ compute
r
s
important wh
e
d
change the w
a
ver, many of t
t
es require m
a
e of these bloc
t provide ways
g
er age groups.
l
e Scratch Bloc
k
C
ommon Core
st.
o
ls
t
s.
d
es
e
n
n
ts
F
or
o
ur
w
e
e
ss
e
nt
h
e
o
st
i
le
s
es
1
6
at
a
st
u
al
W
e
h
at
a
n
i
th
e
d
i
se
m
e
g
e
t
es
e
d
a
nt
h
e
n
g
h
e
r
s.
e
n
a
y
h
e
a
th
ks
to
In
this se
c
langua
g
Math
S
Initiali
z
coordi
n
studen
t
coordi
n
makin
g
audien
c
concep
examp
l
Cartes
i
done
w
(x and
of the
C
5
th
gra
d
sprite
w
Scratc
h
moves
for ou
r
memo
r
Ne
g
ati
v
b
locks,
sprite
(
the ori
anythi
n
value.
X
b
lo
c
variabl
e
Math
S
eleme
n
P
erce
n
are no
unders
t
unders
t
size p
e
studen
t
3.3
O
In thi
s
approp
r
Scratc
h
[13].
B
of Co
d
succes
s
p
rogra
m
3.3.1
Scratc
h
when
u
gratifi
c
focus
o
knowl
e
suppor
t
Becaus
high a
s
uses s
y
than S
c
k
c
tion, we look
g
e and when t
h
S
tandards [24].
ing position
ates, variables,
t
s have not le
a
ates, negative
the entry floo
c
e. Table 1 sh
o
t appears in th
l
e bloc
k
that req
an Coordinate
w
ith a
g
o to (spr
i
y coordinates)
b
Cartesian coor
e. Students ca
here they wan
h
auto-
p
opulates
to memorize w
o
projects, and
r
izing rather tha
n
v
e numbers: N
e
,
and embed in
such as the siz
i
gin, (0,0), in t
h
g out of the to
Negative num
b
ks to reduce t
e value. Negati
Standards until
n
ta
r
y school will
n
ta
g
es: Size a
n
o
t introduced u
n
and percentag
t
and what 100
%
rcentages are
s are unlikely t
ther bloc
s
section, we
l
r
iateness on 4
t
h
Jr, recently rel
lockly is used
e, a program
ful in enco
m
ming [10].
ScratchJr
Jr fixes many
sing Scratch
c
ation” buttons
h
n programmin
dge, and an op
for using x,y c
e it is aimed at
s
is desired for
4
mbols instead
c
ratch.
at the math c
o
h
ey are introd
u
and changin
time) require
ar
ned by the s
t
numbers, de
r
too high for 4
t
ws each conce
e Common Co
r
q
uires this conce
p
s
: Setting a spr
i
ite or mouse po
b
lock. The latt
e
d
inate system,
w
use an altern
t
it to go
b
efore
s
the proper x a
n
o
uld require mo
r
e do not enc
understanding
egative numbe
b
locks that ch
a
or color). Scra
e center of t
p
-right quadran
t
ers are also use
he size, volu
ve numbers ar
6th grade, s
o
not know how
d volume are
n
til 6
th
grade.
parts of a
%
means for tha
t
of the origin
o
know.
k
-based env
i
ook at Scratc
h
– 6
th
grade
c
ased for the iP
y Code.org in
ing initiative
u
raging studen
t
of the math a
ith younger ag
h
ave been remo
v
. The blocks in
tional grid ove
o
ordinates.
5-7 year olds,
4
th
– 6
th
grades.
o
f words an
d
h
a
o
ncepts used in
u
ced in the Co
m
values (siz
athematical c
t
art of 4
th
gra
d
imals, and
t
h
grade student
s
p
t, the grade i
n
e Math Stand
p
t [24].
te to an absolut
inter)
b
lock or
a
e
r requires an u
n
hich is not intr
te approach o
selecting the
g
o
n
d y values. The
e repetition tha
urage procedur
.
s are used in
nge the appea
ch’s Cartesian
e stage, which
requires a neg
d
by change (s
o
e, x or y coo
e
not in the Co
m
many studen
o make the val
et with percent
Not only m
u
hole, they al
t
variable; for
e
l picture size,
i
ronments
Jr and Block
c
lassrooms and
d, is aimed tow
ts curriculum a
that has bee
s and teach
d interface is
e
groups. Most
ed to encourag
ScratchJr requi
lay on the stag
ScratchJr’s ceili
The programmi
s a smaller bl
the Scratch
m
mon Core
e
, volume,
o
ncepts that
d
e (e,g, x,y
p
ercentages),
s
, our target
n
which this
a
rds, and an
e
location is
a
go to x: y:
n
derstanding
o
duced until
f
placing the
to block, as
sequence of
n
we wanted
e
s based on
m
ost motion
r
ance of the
p
lane places
means that
g
ative x or y
o
mething) by
r
dinate, and
m
mon Core
t
s in upper
u
e smaller.
ages, which
u
st students
so need to
e
xample, the
which the
l
y for their
curriculum.
a
rd ages 5-7
n
d the Hour
n
massively
e
rs to try
s
ues present
the “instant
e
students to
r
e less math
e
adds extra
i
ng is not as
ng language
o
ck selection
548
I
t
p
S
t
h
L
t
e
t
h
t
h
3
B
C
B
l
i
i
n
o
D
c
a
a
t
o
e
B
i
t
i
t
c
n
3
g
W
a
l
o
t
h
S
b
B
o
W
e
S
a
t
h
c
n
t
does not have
resent in Scrat
cratch; users pi
e complexity n
ike Scratch, S
achers can use
at students ca
ey may delete
3
.3.2
B
lockl
y
lockly is the b
ode. Unlike Sc
lockly and be
i
miting users to
Blockly are si
ut of blocks to
evelopers creat
reate unique bl
a
dded control fo
a
ny age group,
b
create project
nded, explorato
lockly can be
t
lacks the open-
has a high ov
c
lassroom elem
e
ecessary to dev
3
.4 Brid
g
i
n
g
reater flex
i
hen creating o
spects of Scrat
w floors, wide
e math) the fl
cratchJr provid
e challenging
lockly provide
verhead for
playground” en
e wanted a co
e
nvironment an
d
cratchJr’s atten
ge group, and
ese languages
onstruct a set o
n
ew
p
rogrammi
n
variables, lists,
h. Additionally,
k scenes for th
eded to approp
ratchJr works
pre-
p
opulated fi
see and modif
s
prites and find t
h
y
l
oc
k
-
b
ased lang
u
atch and Scrat
in coding; eac
specific project
s
ilar to Scratch
ontrol character
each project i
cks and interfa
r
developers m
e
b
ut curriculum d
e
s. Additionally,
r
y projects like
sed to create sc
ended options p
r
e
rhead for proje
c
e
ntary school te
lop projects usi
g
the
g
ap
w
i
bilit
y
r curriculum, w
h, ScratchJr, a
alls, and high
o
ors are not low
e
s a lower floor
a
f
or upper elem
e
s more conten
t
roject creatio
v
ironment optio
n
bination of Sc
low entry
t
ion to develop
m
lockly’s flexibi
and the feedb
design principa
n
g environment,
L
Figure
1
or many of the
ScratchJr is m
ir sprites to act
iately challenge
b
est for open-e
n
les for assignm
y
any gi
v
en spr
i
ey need them l
age used in th
c
hJr, users cann
o
h
project is cre
a
designed by d
and ScratchJr;
s
.
Javascript, wh
e elements for
ans that Blockl
ev
elopers need
t
students canno
t
in Scratch or S
ffolded projects
esent in Scratc
c
t development.
chers will ha
n
g Blockly.
ith lower fl
e
wanted a lang
u
n
d Blockly. Scr
a
eilings, but in s
enough for ou
a
nd ceiling, but
t
ntary school s
flexibility, it
n
and lac
k
s
n
present in Scr
a
atch’s “playgro
oint for curri
ental require
l
ity. We used ou
r
ck from our p
l
s that guided ou
r
L
aPlaya.
. Movement s
control structu
re structured th
in. ScratchJr lac
4
th
– 6
th
graders.
ded projects,
nts. The danger
tes and scripts
a
ter on.
popular Hour
t simply open
ted in Javascri
e
velopers. Proje
c
sers create scri
i
ch allows them
each project. T
can be used
o know Javascr
t
engage in op
e
c
ratchJ
r
. Althou
g
for 4
th
– 6
th
gra
d
h
and ScratchJ
r
a
n
It is unlikely t
h
e the backgrou
o
ors and
age that combin
tch gives stude
o
me cases (such
r
target age gro
u
t
hey are too low
t
udents. Althou
g
has too high
the open-end
e
tch and Scratch
nd” programmi
ulum develope
ents of the tar
experiences w
lot classrooms
r
development o
f
ripts in (from
r
es
a
n
ks
b
ut
is
so
of
u
p
p
t,
c
ts
p
ts
to
h
is
f
or
i
pt
e
n-
g
h
d
e,
n
d
h
at
n
d
e
d
n
ts
as
u
p.
to
g
h
a
n
e
d,
J
r.
n
g
r
s,
g
et
i
th
to
f
a
4. L
A
LaPlay
a
enviro
n
[14].
W
existin
g
classro
o
classes
versio
n
Our de
s
criteria
.
4
th
– 6
t
h
p
roject
s
could s
teacher
Practic
a
create
d
enviro
n
interfa
c
accessi
b
b
ackgr
o
b
ased
imple
m
scienc
e
summe
4.1
S
Our go
a
design
e
p
rincip
a
range
o
student
curricu
l
determ
i
p
rogra
m
functio
n
want t
o
necess
a
The L
a
p
roject
s
student
b
ackgr
o
includ
e
compl
e
do not
can loc
not ne
e
the car
alread
y
l
eft) Scratch, S
c
A
PLAYA
a is a bloc
k
-
b
as
e
n
ment inspired
b
W
e created a se
t
g
bloc
k
-
b
ased e
n
o
ms. A beta ver
s
in the 2013-14
n
in the 2014-15
s
sign principles,
s
. First, we want
h
grade, rather t
h
over each othe
upport use in fo
s with or wit
l challenges t
ifferent constra
ments. Our thir
e to support
b
le to curriculu
m
o
unds. The desi
g
languages an
m
entation of ou
r
e
summer cam
p
e
rs [13].
S
upport mu
al was to create
e
rs when develo
p
l: support mult
f curricular ty
s design and cr
l
a with targete
d
i
ned goals co
m
ming environ
ality to suppo
constrain av
ry to complete t
a
Playa environm
e
with options f
s. Developers
und; for exam
e
an analysis sc
r
e
tes the project.
run but show s
k scripts or spri
e
d to manipulate
.
sprite to move
programmed t
ratchJr, Bloc
d language bas
b
y Scratch for s
u
of design prin
vironments an
ion of LaPlaya
school year, an
s
chool year.
hown in Table
d to support di
h
an privilege eit
h
. Our second cr
rmal learning e
out a backgr
h
at teachers fac
e
nts and opport
d criterion was
reating studen
m
d
evelopers wit
h
g
n
p
rinciples are
d
our own
f
r
curriculu
m
a
n
p
s for 6
th
– 8
t
u
ltiple t
y
pes
an environment
p
ing assignment
s
iple types of ta
es, from pure
ate over long p
d
projects of
p
r
e
pleted in as
m
ent should offe
r
r
t open-ended p
r
ilable blocks a
h
e task.
nt allows deve
r the scripts and
an hide sprites
le, a project
ipt that says “
Scripts can be s
udents how to
t
es available to
s
.
For example, i
n
t
o the different
c
e other sprites
ly and LaPlay
ed on Snap!, a
d
u
pporting higher
iples for LaPla
our experience
w
as used in som
e
we plan to us
2, were inform
e
ferent kinds of
h
er open-ended
o
terion was that
vironments wit
und in comp
in a tradition
nities than infor
hat we wanted
projects and
out extensive
informed by ex
i
indings durin
nd
while runni
n
t
h
grade studen
t
of tasks.
that did not lim
i
s
. This led to th
e
s
ks. We wanted
l
y open-ended
p
riods of time, t
e
-
p
opulated spri
t
little as 10
m
r
a wide range o
r
ojects; and dev
e
d functions to
l
opers to create
p
sprites that will
or scripts that
ith a distinct e
reat job!” whe
own as inert e
reate the script
tudents, but tha
Figure 2, stud
ities. Curriculu
so they are l
a
d
evelopment
grade levels
y
a based on
s
in the pilot
e
of our pilot
e
an updated
e
d by several
curricula for
o
r scaffolded
o
ur interface
h
elementary
u
ter science.
a
l classroom
m
al learning
the designer
tasks to be
p
rogramming
i
sting bloc
k
-
g
the pilot
n
g computer
t
s for three
i
t curriculum
e
first design
to support a
p
rojects that
t
o scaffolded
t
es and pre-
m
inutes. The
f blocks and
e
lopers may
only those
p
repopulate
d
be visible to
work in the
n
d goal may
n
the student
x
amples that
.
Developers
t
students do
e
nts program
m
developers
o
cke
d
. Some
549
L
s
m
f
4
c
T
n
r
t
o
m
u
c
s
w
c
t
h
I
n
s
a
r
n
h
l
a
p
f
t
h
4
T
p
m
m
p
S
c
a
s
m
s
d
s
o
u
F
m
aPlaya blocks
ince they are n
ay also choose
f
or open-ended p
r
4
.2 Requir
e
c
ontent.
he computer sc
n
on-computer s
c
equires both ma
read and u
athematical u
nderstand, and
ontend that th
upport the deve
ant math and
oding. Nor do
ey would do so
n
LaPlaya, the
o
s
tage, removing
t
nd y coordina
eplaced by incr
e
ot need negativ
h
as
s
et size to
X
rge) that corre
p
ercentages relat
i
or the Cartesian
e subject of on
4
.3 Include
T
he developm
e
rogrammers to
ight be incline
ore familiar
rogramming as
tudents today
omputers as co
new experienc
cience educati
ultiple viewpo
tudents in a
evelopment en
cience should e
wn programs
nrelated feature
igure 2. A K
m
ode
nd block catego
t needed for thi
to leave the ent
i
r
ojects.
onl
rad
ence content in
ience content
h and literacy s
derstand com
derstandings li
percentages,
w
interface an
opment of new
literacy require
w
e want to requi
r
in their normal
c
o
rigin, (0,0), is i
n
t
he need for neg
es) block. All
c
e
ase/decrease (s
t
numbers to d
X
blocks with
a
s
pond to absolu
t
iv
e to the origin
a
coordinate syste
g
oing research.
an a
g
e-ap
p
e
nt environm
e
rite code. Tho
d to avoid cod
w
ith, such as
p
ects of the e
n
enter the co
puter users. Us
for these stude
o
n is a cultural
ints; they are
classroom, an
ironment that
courage stude
or an audienc
s
of the interface
E
LP-CS projec
t
ries, such as “S
o
s
project. Altern
a
re environment
e
- and age-a
p
he environment
bove grade le
k
ills as progra
m
ands. Some c
e addition, wh
w
hich they ma
y
programming
ath and literac
ents to precl
r
e teachers to te
a
c
urricular plans.
n
the lower left-
h
ative numbers i
n
c
hange (state)
b
a
te) by X
b
locks
crease the valu
solute amount
e sizes on the
a
l picture size.
R
is much more
ropriate in
nt should e
e comfortable i
ng in favor of
manipulating
vironment, like
uter lab alre
ing the comput
ts. Kolikant ar
encounter wh
ewcomers to
also comput
introduces stu
n
ts to be develo
p
e
rathe
r
than u
s
(such as a paint
in LaPlaya, a
o
unds”, are hidd
e
a
tively, develop
e
visible to stude
n
p
propriate
should not rely
el. Programmi
mers must be a
ommands requ
i
ch 4
th
graders
d
y
not. While
w
language sho
skills, we do
de students fr
ch content bef
and corner of t
n
the
g
o to x: y:
b
y X blocks w
e
so students wo
u
e
. Finally, LaPla
y
(small, mediu
screen rather th
emoving the ne
challenging an
t
erface.
n
courage nov
i
the role of “us
activities they
a
settings or n
an image edit
dy familiar w
r as a developer
ues that compu
re students ha
omputer scien
e
r users [5].
ents to compu
ers creating th
s
ers
p
laying w
i
editor).
s
seen in stud
e
e
n
e
rs
n
ts
o
n
n
g
b
le
i
re
d
o
w
e
u
ld
n
ot
o
m
o
re
h
e
(x
e
re
u
ld
y
a
m
,
a
n
e
d
d
is
ce
e
r”
a
re
o
n-
o
r.
i
th
is
t
er
v
e
c
e,
A
t
er
e
ir
i
th
nt
As m
e
gratific
errors
b
p
opula
t
develo
p
for stu
d
to exp
e
the mo
r
areas),
elemen
t
4.4
S
Finally
,
degree
teacher
using
e
creatin
g
b
ackgr
o
with fa
c
As tea
c
may w
a
classro
o
enviro
n
used b
y
LaPlay
a
develo
p
mode
develo
p
opene
d
same b
l
files f
o
scienc
e
4.5
S
Scrat
c
with o
u
b
etwee
n
these l
a
learnin
g
We fo
u
advanc
e
issues
b
develo
p
Scratc
h
their i
n
p
opula
t
T
a
D
P
r
S
mul
t
o
Re
q
grad
e
ap
p
c
Incl
u
ap
p
i
n
Sup
p
de
v
ntioned earlier,
ation” buttons
d
ecause it was
ed projects, b
ers can hide as
d
ents, such as th
e
riment with th
e familiar role
curriculum dev
n
ts in ea
r
ly proje
c
upport pr
, creating a sta
in computer
s at the elemen
xisting projects
content so s
und could crea
cility in Scratch
c
hers become
m
nt to adjust ex
o
m activities. A
ment (develope
students to fini
a has two mo
p
er mode for pr
o
for teachers a
n
ers to manage
in the student
locks that could
r assignments
e
knowledge.
S
ummary
h, ScratchJr, an
r stated desig
the languages
a
nguages, only
a
and developm
u
nd the Scratch
i
ed for 4
th
– 6
t
h
b
ut is designed
f
mentally appr
Jr can be used
n
terface designs
t
e
d
projects. B
l
ble 2. Compa
La
P
D
esi
g
n
r
inci
p
le
Sc
S
upport
t
iple types
o
f tasks
q
uire only
e
- and age-
p
ropriate
c
ontent
u
de an age-
p
ropriate
n
terface
p
ort project
velopers
in our pilot cla
d
istracted stude
n
asy to delete s
t hard to ge
ects of the inter
“add sprite” b
programming
f “user” and pl
lopers could hi
c
ts.
oj
ect develo
p
ting file for a
cience. Althou
ary school lev
s
, we believe i
n
meone without
e new material.
could make a n
ore comfortable
sting material o
s such, we cont
r
mode) should
b
s
h the projects.
es for viewin
ject developers
nd
students. T
h
available cont
e
v
ersion. Develo
p
be used in stud
e
d
oes not requir
e
Blockly were
principals, so
nd our design
n indication th
nt context that
i
nterface feature
s
h
grade. Scratch
or a younger a
o
priate for 4
th
with open-ende
d
are problemat
i
l
ockly
p
rovides
ison of Scratch
Playa for 4th –
c
ratch
S
crat
c
sses, we found
n
ts and led to u
n
rites and script
them back.
ace that might
u
tton. To encou
r
locks (instead
a
ying with non-
p
d
e these “non-
p
r
o
p
ers.
roject should
h most comp
e
l may
b
e more
n
lowering the t
h
a strong comp
In our scenario
w project in les
with the envir
r
map
p
rojects t
o
nd that the pro
e similar to the
and editing
and teachers, a
h
e developer
m
e
nt in a
p
rojec
t
ers create proje
e
nt mode, so cre
a
more advanc
ot designed to
identifying in
rinciples is not
a
t they we
r
e not
e are working
and math cont
Jr re
m
edied m
a
e group, maki
– 6
th
grade.
S
or scaffolded
i
c when worki
n
developers gr
e
ScratchJr, Blo
6th grade
c
hJ
r
Blockly
that “instant
n
recoverable
s
in the pre-
I
n LaPlaya,
b
e distracting
r
age students
o
f staying in
p
rogramming
o
gramming”
n
ot require a
u
ter science
comfortable
h
reshold for
u
ter science
, any person
s
than a day.
o
nment, they
o
their other
j
ect creation
e
nvironment
a
project: a
n
d a student
m
ode allows
t
when it is
c
ts using the
a
ting starting
e
d computer
b
e consistent
c
onsistencies
a
criticism of
ideal for the
w
ith.
e
nt were too
a
ny of these
n
g it also not
S
cratch and
p
rojects, but
n
g with pre-
e
ater control
ckly and
LaPlaya
550
over block options when creating projects and can be used to make
grade level-appropriate assignments for 4th – 6th grade. However,
experienced programmers must design these projects. Further,
Blockly does not have an option for a “playground” environment
where students can create their own projects without a starting file.
In developing LaPlaya we built on the strengths of each of these
interfaces to create a programming environment tailored to 4th – 6th
grade students in a classroom setting.
5. FUTURE WORK
We plan to continue studying students’ experiences learning
computational thinking and how development environments shape
their learning. In particular, we will look at the word choice of
blocks in visual programming languages, and whether younger
students benefit from a language with more blocks that produce
visual effects.
In addition, we plan to extend our work to looking at teachers’
learning. In our pilot, we found that many teachers did not have
prior experience teaching computational thinking. We plan to
research how teachers learn computational thinking, and map the
terrain of teacher education in science and technology.
6. ACKNOWLEDGMENTS
This work is supported by the National Science Foundation
BPC Award CNS-0940491 and CE21 Award CNS-1240985.
7. REFERENCES
[1] Achieve, I. The Next Generation Science Standards. The
National Academies Press, 2013.
[2] Alliance, S. The stars alliance: A southeastern partnership for
diverse participation in computing. NSF STARS Alliance
Proposal. http://www.itstars.org/.
[3] Arroyo, I. et al. Effects of web-based tutoring software on
students’ math achievement. In AERA, 2004.
[4] Bell, T., Witten, I. H. & Fellows, M. Computer Science
Unplugged. 2006.
[5] Ben-David Kolikant, Y. (Some) Grand Challenges of
Computer Science Education in the Digital Age: A Socio-
Cultural Perspective. In WiPSCE, 2012.
[6] Bradley, R. H., & Corwyn, R. F. (2002, February).
Socioeconomic status and child development. Annual Review
of Psychology, 53, 371–399.
[7] Bruckman, A., Bandlow, A., & Forte, A. 2012. HCI for kids.
In J. A. Jacko (Ed.) The human-computer interaction
handbook: fundamentals, evolving technologies, and emerging
applications (841 – 862). Boca Raton, FL: Taylor & Francis
Group, LLC.
[8] Cooper, S., Dann, W., and Pausch, R. 2000. Alice: a 3-D tool
for introductory programming concepts. J. Comput. Sci. Coll.
15, 5 (April 2000), 107-116.
[9] Dann, W., Cooper, S., & Pausch, R. Making the connection:
programming with animated small world. ITiCSE, 2000.
[10] Empson, R. 2 Weeks and 600+ Lines of Code Later, 20M
Students Have Learned An “Hour Of Code”, TechCrunch.
http://techcrunch.com/2013/12/26/code-org-2-weeks-and-
600m-lines-of-code-later-20m-students-have-learned-an-hour-
of-code/
[11] Flannery, L. P., et al. Designing ScratchJr: Support for Early
Childhood Learning Through Computer Programming. In IDC
’13.
[12] Franklin, D., Conrad, P., Aldana, G., et. al. Animal Tlatoque:
Attracting Middle-School Students to Computing through
Culturally-Relevant Themes. In SIGCSE ‘11.
[13] Franklin, D., Conrad, P., Boe, B., Nilsen, K., Hill, C., Len, M.,
Dreschler, G., Aldana, G., et al. Assessment of Computer
Science Learning in a Scratch-Based Outreach Program. In
SIGCSE ’13.
[14] Garcia, D., Segars, L. & Paley, J. 2012. Snap! (build your own
blocks): tutorial presentation. J. Comput. Sci. Coll. 27, 4 (April
2012), 120-121.
[15] Gelderblom, H., & Kotze, P. 2009. Ten design lessons from
literature on child development and children’s use of
technology. In IDC 2009.
[16] Halgren, S., et al. 1995. Amazing Animation™: Movie making
for kids design briefing. In SIGCHI ‘95.
[17] Hood, C. S. & Hood, D. J. Teaching programming and
language concepts using legos. In ITiCSE, June 2005.
[18] Kazakoff, E. R. Cats in Space, Pigs that Race: Does self-
regulation play a role when kindergartners learn to code?
(Unpublished doctoral dissertation). Tufts University,
Massachusetts, 2014.
[19] Kerr, J., Kelleher, C., Ellis, R. & Chou, M. 2013. Setting the
scene: scaffolding stories to benefit middle school students
learning to program. In IEEE VL/HCC, 95-98.
[20] Lewis, C. M. 2010. How programming environment shapes
perception, learning and goals: Logo vs. scratch. In SIGCSE
’10.
[21] Lewis, C. M. 2011. Is pair programming more effective than
other forms of collaboration for young students?, Computer
Science Education, 22, June 2011,
DOI=10.1080/08993408.2011.579805
[22] Malan, D. J. & Leitner, H. Scratch for Budding Computer
Scientists. In SIGCSE’07.
[23] Maloney, J., et al. The scratch programming language and
environment. Trans. Comput. Educ., 10(4): 1–15, Nov. 2010.
[24] National Governors Association Center for Best Practices,
Council of Chief State School Officers. Common Core State
Standards (Math), National Governors Association Center for
Best Practices, Council of Chief State School Officers,
Washington D.C., 2010.
[25] Repenning, A. 1993. Agentsheets: a tool for building domain-
oriented visual programming environments. In CHI '93.
[26] Santrock, J. W. Child Development. McGraw Hill, Boston,
2004.
[27] Strommen, E. 1994. Children’s use of mouse-based interfaces
to control virtual travel. In CHI ’94.
[28] Tai, R., Liu, C., Maltese, A., & Fan, X. 2006. Planning early
for careers in science, Science, 312, 5777, 1143–11.44.
551
... Visual programming tools transform young children into active creators of games, animations, and interactive stories in various disciplines (e.g., language, science, or mathematics), which can boost their interest in CT learning (Mladenovic et al., 2018;Moors et al., 2018). Many of these visual-based tools work on touch devices (tablets) whose interactive interface makes them even more accessible to young learners and children (Hill et al., 2015). ...
... At the moment, existing studies are limited to K-3 age children, as this is the official target group of ScratchJr and, and as older children can use the more advanced Scratch version. However, some researchers have argued that Scratch may be too advanced for children in grades 4-6 (e.g., Hill et al., 2015). At the same time, as argued by Papadakis et al. (2016), even though ScratchJr was designed with younger children (K-3) in mind, this does not limit the potential complexity of the designs. ...
... Even though ScratchJr is primarily addressed to young children this does not limit the affordances of the programming environment which allow diversification and complexity in the produced projects (Papadakis et al., 2016). As such, ScratchJr can be also used by older children in primary school, rather than Scratch which is a more demanding programming environment (Hill et al., 2015), while also providing ground for investigating children's computational practices across the K-6 spectrum. ...
Article
There are increasing calls to introduce computational thinking in schools; the arguments in favor call upon research suggesting that even kindergarten children can successfully engage in coding. This contribution presents a cross-sectional study examining the coding practices and computational thinking of fifty-one primary school children using the ScratchJr software; children were organized in two cohorts (Cohort 1: 6-9 years old; Cohort 2: 10-12 years old). Each cohort participated in a six-hour intervention, as part of a four-day summer club. During the intervention children were introduced to ScratchJr and were asked to collaboratively design a digital story about environmental waste management actions, thus adopting a disciplinary perspective to computational thinking. Data analyses examined children's final artifacts, in terms of coding practices and the level of computational thinking demonstrated by each cohort. Furthermore, analysis of selected groups' storyboard interviews was used to shed light on differences between the two cohorts.
... Floors and Flexibility (Designing a Programming Environment for 4th-6th Grade Classrooms [22]): Several studies focused on Human-Computer Interaction show the differences between how children interact compared to adults. It is these differences that must therefore be kept in mind when designing visual tools for programming, since the development interface plays a fundamental role, as it aims to promote change in the students' roles as they transition from being mere users to developers. ...
... In terms of the design of graphical user interfaces, the developers of computational thinking platforms should use a user-centered approach in order to achieve tools that are intuitive, usable and appealing [13], [22], [31], [32]. As per the ISO 9241-210:2019 standard on the "Ergonomics of human-system interaction-Part 210: Human-centered design for interactive systems," six design principles are defined as follows. ...
... These alternatives include the implementation of technology adapted to the different educational stages [22], [25], systems that measure the retention flow of students on the platform and that allow measuring the cognitive loads that are imposed on students [15], and assistive technologies that are activated when the user cannot find a solution to the problem [23]. ...
Article
Full-text available
Contribution: This document presents a systematic bibliographic review that demonstrates the need to conduct research on how the user experience impacts the development of computational thinking. Background: In the field of computer science, computational thinking is defined as a method that enhances problem-solving skills, system design, and human behavior understanding. Over the last few decades, several tools have been proposed for the development of computational thinking skills; however, there is no area of study that evaluates the implications or the impact that these types of platforms have on users belonging to any knowledge area. Research Question: Do user interfaces influence the development of computational thinking skills? Methodology: To address this issue, a systematic review of the literature was conducted using the preferred reporting items for systematic reviews and meta-analyses (PRISMA) methodology for analyzing and evaluating scientific publications. Findings: The results show that despite the dearth of literature on the subject, the specific design of a user interface has a significant impact on the development of computational thinking. Bearing the above in mind, it is necessary to conduct research that delves more deeply into the effects caused by the technologies that are used to develop computational thinking, this being a line of research that is worthy of consideration.
... Therefore, in the development of the sustainable AI interdisciplinary course, there are many related AI teaching content or education policies attached. However, previous studies have reminded and shown that language and mathematical barriers would prevent young students from learning to program and AI [1,3]; meanwhile, the formal learning site is lack of learning tools or platforms which is suitable for young students to easily learn AI integrated with STEAM application (AI-STEAM) at present [4]. To allow the young students to learn program, block-based programming (BBP), such as Scratch, MIT App Inventor, and so on, was proposed [3]. ...
... However, previous studies have reminded and shown that language and mathematical barriers would prevent young students from learning to program and AI [1,3]; meanwhile, the formal learning site is lack of learning tools or platforms which is suitable for young students to easily learn AI integrated with STEAM application (AI-STEAM) at present [4]. To allow the young students to learn program, block-based programming (BBP), such as Scratch, MIT App Inventor, and so on, was proposed [3]. To allow the young students to reserve technical knowledge and skills related to AI application without those barriers, the Personal Image Classifier (PIC) website was proposed and evaluated in the current study. ...
Article
Full-text available
This study attempted to evaluate the learning effectiveness of using the MIT App Inventor platform and its Personal Image Classifier (PIC) tool in the interdisciplinary application. The instructional design was focused on applying PIC in the integration of STEAM (i.e., Science, Technology, Engineering, Art, and Mathematics) interdisciplinary learning, so as to provide sustainable and suitable teaching content based on the experiential learning theory for 7th grader students. Accordingly, the sustainable AI-STEAM course with the experiential learning framework has been implemented and verified, so as to confirm that the AI-STEAM course is not too difficult for young students. Many basic concepts involved in the AI-STEAM course, regarding programming logic, electromechanical concepts, interface design, and the application of image recognition, were measured in this study. The results showed that the students not only made significant progress in learning effectiveness, but also in particular made significant improvements in two parts: electromechanical concepts and image recognition knowledge. In the end, this study further provides some advice on the sustainable AI-STEAM course based on the survey of some important factors including active learning, and self-efficacy after confirming that it is not a barrier for the young students to learn the sustainable AI-STEAM course developed in this study.
... Moreover, they often provide scaffolding that enables the child to understand and correct mistakes so that the challenge can be successfully completed [36,70]. Some kits also enable free exploration, inviting children to create their own stories, compose their own music, or modify and build robots to accomplish any task they wish [22,23,35]. Open ended projects are usually introduced at the end of a more scaffolded curriculum and are meant to provide greater challenge, and higher enjoyment due to the possibility to personalize outputs in a way that gives more meaning to the child's effort [30]. ...
... Block-based programming languages generally feature GUIs where snippets of code are portrayed as pieces of puzzles that can be combined together to create a more complex set of instructions for a program. Scratch [55], Blockly [17] and Snap are some of the most widespread examples of block-based programming languages, but several others have been developed [2,7,23,32]. ...
Conference Paper
Many computational toolkits to promote early learning of basic computational concepts and practices are inaccessible to learners with reduced visual abilities. We report on the design of TIP-Toy, a tactile and inclusive open-source toolkit, to allow children with diferent visual abilities to learn about computational topics through music by combining a series of physical blocks. TIP-Toy was developed through two design consultations with experts and potential users. The frst round of consultations was conducted with 3 visually impaired adults with signifcant programming experience ; the second one involved 9 children with mixed visual abilities. Through these design consultations we collected feedback on TIP-Toy, and observed children's interactions with the toolkit. We discuss appropriate features for future iterations of TIP-toy to maximise the opportunities for accessible and enjoyable learning experiences.
... Map-Blocks [163] CT-Blocks Teach programming with online weather data. LAPLAYA [63] Snap! Block-based environment for middle school students. Table 10. ...
Preprint
Full-text available
Block-based environments are visual programming environments, which are becoming more and more popular because of their ease of use. The ease of use comes thanks to their intuitive graphical representation and structural metaphors (jigsaw-like puzzles) to display valid combinations of language constructs to the users. Part of the current popularity of block-based environments is thanks to Scratch. As a result they are often associated with tools for children or young learners. However, it is unclear how these types of programming environments are developed and used in general. So we conducted a systematic literature review on block-based environments by studying 152 papers published between 2014 and 2020, and a non-systematic tool review of 32 block-based environments. In particular, we provide a helpful inventory of block-based editors for end-users on different topics and domains. Likewise, we focused on identifying the main components of block-based environments, how they are engineered, and how they are used. This survey should be equally helpful for language engineering researchers and language engineers alike.
... Block-based programming environments remove many of the hurdles to programming activities, such as the need to learn the complex syntax of traditional programming languages. However, difficulties remain, especially in younger grade levels, leading to a growing body of research providing guidelines for creating age-appropriate learning environments to support computational thinking [12]. ...
Chapter
Developing narrative and computational thinking skills is crucial for K-12 student learning. A growing number of K-12 teachers are utilizing digital storytelling, where students create short narratives around a topic, as a means of creating motivating problem-solving activities for a variety of domains, including history and science. At the same time, there is increasing awareness of the need to engage K-12 students in computational thinking, including elementary school students. Given the challenges that the syntax of text-based programming languages poses for even novice university-level learners, block-based programming languages have emerged as an effective tool for introducing computational thinking to elementary-level students. Leveraging the unique affordances of narrative and computational thinking offers significant potential for student learning; however, integrating them presents significant challenges. In this paper, we describe initial work toward solving this problem by introducing an approach to block-based programming for interactive storytelling to engage upper elementary students (ages 9 to 11) in computational thinking and narrative skill development. Leveraging design principles and best practices from prior research on elementary-grade block-based programming and digital storytelling, we propose a set of custom blocks enabling learners to create interactive narratives. We describe both the process used to derive the custom blocks, including their alignment with elements of interactive narrative and with specific computational thinking curricular goals, as well as lessons learned from students interacting with a prototype learning environment utilizing the block-based programming approach.
Chapter
Recent years have seen growing interest in utilizing digital storytelling, where students create short narratives around a topic, as a means of creating motivating problem-solving activities in K-12 education. At the same time, there is increasing awareness of the need to engage students as young as elementary school in complex topics such as physical science and computational thinking. Building on previous research investigating block-based programming activities for storytelling, we present an approach to block-based programming for interactive digital storytelling to engage upper elementary students (ages 9 to 10) in computational thinking and narrative skill development. We describe both the learning environment that combines block-based narrative programming with a rich, interactive visualization engine designed to produce animations of student generated stories, as well as an analysis of students using the system to create narratives. Student generated stories are evaluated from both a story quality perspective as well as from their ability to communicate and demonstrate computational thinking and physical science concepts and practices. We also explore student behaviors during the story creation process and discuss potential improvements for future interventions.
Article
Block-based programming (BBP) environments have become increasingly commonplace computer science education. Despite a rapidly expanding ecosystem of BBP environments, text-based languages remain the dominant programming paradigm, motivating the transition from BBP to text-based programming (TBP). Support students in transitioning from BBP to TBP is an important and open design question. This work identifies 101 unique BBP environments, analyzes the 46 of them and identifies different design approaches used to support the transition to TBP. The contribution of this work is to provide a snapshot of the current state of BBP environments and how they support learners in transitioning to TBP.
Article
Abstraction is one of the most fundamental ideas in computer science (CS), and as such, according to Bruner, it should be taught spirally, starting as early as possible and revisited at every level of education. However, teaching CS abstraction to novices is a very challenging task, and CS educational research has often demonstrated students’ difficulties in learning this idea, in different contexts and at different age levels. The challenge in teaching CS abstraction is even greater when dealing with young students, since according to theories on children’s cognitive development, their abstraction abilities may still be not fully developed. In 2013, Armoni [5] introduced a framework for teaching abstraction in the context of algorithmic problem solving, intended for novice students. We studied the effect of this framework in an introductory CS course for 7th graders, in which Scratch was used as the programming language for implementing algorithmic solutions. Our findings indicate that the framework was highly effective for developing CS abstraction skills as well as other related skills and aspects, such as the tendency to provide explanations for solutions, the use of initialization processes, and the perception of the nature of CS. It also significantly improved students’ general CS performance in this course
Conference Paper
Full-text available
The goal of this paper is to articulate (some of) the grand challenges that computer science education (CSE) at the school level faces in the digital age. Based on the socio-cultural theoretical idea that learning means entering a culture, I suggest viewing schooling as an encounter between intertwined cultures. Computer science (CS) students can be viewed as members of many intertwined cultures: (a) they are newcomers to the professional computing culture, but (b) most are also old timers in a "user" culture, living in a world surrounded by information-communication technologies (ICT), and also have informal learning experience (and values) within ICT, mostly from out-of-school experience; and finally, (c) they are members of the school culture which itself is currently in a process of transformation due to the digital age). Using this framework, I discuss two interrelated grand challenges of CSE in K-12 school levels: (1) the need to adjust the CS curriculum to better overlap with lifelong learning skills; and (2) the need to better learn the characteristics of the "digital" generation and attune education to address these needs.
Article
Full-text available
Background: Intelligent tutoring systems. Computer-based intelligent tutoring systems (ITS) provide one promising option for helping students prepare for high stakes assessments. Research on intelligent tutoring systems has clearly shown that users of tutoring software can make rapid progress and dramatically improve their performance in specific content areas. Although much ITS research focuses on military, industry, and other non-academic training situations, evaluation studies of several ITS for school mathematics also show benefits to student users in school settings. Specifically, studies of the Carnegie Tutor (CMU) for algebra and the AnimalWatch tutor (UMass-Amherst) for arithmetic indicate that student users successfully master specific skills and that their attitudes towards math become more positive as a result of working with the software ( < www.carnegielearning.com >; Arroyo, Beck, Schultz & Woolf, 1999; Beal & Arroyo, 2002). However, existing ITS are limited in several ways. First, as stand-alone applications that must be installed on individual computers, they are difficult to disseminate, update and extend. Second, although they provide effective instruction, few ITS have really taken advantage of the instructional possibilities of dynamic multimedia techniques such as animation, techniques that are common in commercial software (Beal, Beck, Westbrook, Atkin, & Cohen, 2002). For example, both the Carnegie Tutor and AnimalWatch systems are basically interactive electronic worksheets. Third, although current ITS model the student's knowledge on an ongoing basis in order to provide effective help when needed, there have been only preliminary attempts to incorporate knowledge of student group characteristics (e.g., profile of cognitive skills, gender) into the tutor and to use this profile information to guide instruction (Shute, 1995). Objectives. The main goal of the current project is to implement and evaluate a web-based intelligent tutoring system for high-stakes math achievement tests (Beal, Arroyo, Royer, & Woolf, 2003). The system, called Wayang Outpost, currently provides tutoring for SAT-Math problems, but has been designed so that problem content appropriate for other math achievement tests (e.g., the MCAS in Massachusetts) can be added to the existing architecture. Wayang Outpost is designed to provide web-based access to a) tutoring on SAT-Math problems, using information about the student's cognitive profile to customize instruction and improve performance on high stakes assessments and b) modules to assess and enhance the student's profile of cognitive strengths and weaknesses. Within the main goal of implementation and evaluation, the project aims to assess three specific objectives. First, it is necessary to determine if the system will function properly in a technological sense when used by students in classroom contexts. For example, can the server handle multiple users? Do all files load appropriately? Does the audio coincide with the Flash files? In short, the project aims to verify the technological integrity of the system. Once it is
Article
Full-text available
Scratch is a visual programming environment that allows users (primarily ages 8 to 16) to learn computer programming while working on personally meaningful projects such as animated stories and games. A key design goal of Scratch is to support self-directed learning through tinkering and collaboration with peers. This article explores how the Scratch programming language and environment support this goal.
Article
Full-text available
A popular approach to introducing students to computer science is to involve middle-school students in engaging programming activities. One challenge in such a program is attracting students who are not already positively predisposed to computing. In order to attract a diverse audience, we developed a summer program based on culturally-relevant themes that appealed to our two target audiences, females and Latina/os. This paper describes our success in developing and implementing a computing curriculum and recruiting materials for a 2-week summer camp integrating two themes, animal conservation and Mayan culture. Scratch programming was used to engage students in creating animations about animals and Mayan culture, allowing them an interdisciplinary experience that combined programming, culture, biology, art, and storytelling. Our recruiting efforts resulted in an application pool that was 73% female and 67% Latina/o, with only 6.5% in neither group. We had 34 students complete the program. Pre- and post- surveys showed that the number of students citing computer science as their top choice for a career doubled and interest in computer science as a career more than tripled.
Conference Paper
Research suggests that storytelling can motivate middle school students to explore computer programming. However, difficulties finding and realizing story ideas can decrease time actually spent on programming. In this paper, we present guidelines for constructing story scenes that reliably inspire ideas for novice programmers creating stories. To evaluate the impact of pre-built scenes with strategic design constraints on early programming behavior and attitudes, we conducted a between-subjects study comparing participants who used pre-built scenes and participants who crafted their own scenes. The results suggest that story starter scenes enable novice users to explore programming in the environment sooner, allow users to add and modify significantly more novel programming constructs during the length of the study, and maintain motivation for learning to program via storytelling.
Conference Paper
In learning to program, students must gain an understanding of how their program works. They need to make a connection between what they have written and what the program actually does. Otherwise, students have trouble figuring out what went wrong when things do not work. One factor that contributes to making this connection is an ability to visualize a program's state and how it changes when the program is executed. In this paper, we present Alice, a 3-D interactive animation environment. Alice provides a graphic visualization of a program's state in an animated small world and thereby supports the beginning programmer in learning to construct and debug programs.
Conference Paper
Many institutions have created and deployed outreach programs for middle school students with the goal of increasing the number and diversity of students who later pursue careers in computer science. While these programs have been shown to increase interest in computer science, there has been less work on showing whether participants learn computer science content. We address two questions, one specific, and the other more general: (1) "What computer science did our middle school students learn in our interdisciplinary two-week summer camp?" (2) "How can computer science concepts be assessed in the context of Scratch-based outreach programs"? We address both questions by presenting the design of our summer camp, an overview of our curriculum, our assessment methodology, and our assessment results. Though the sample size is not statistically significant, the results show that a two-week, interdisciplinary, non-academic summer camp can be effective not only for engaging students, but also for imparting CS content. In just two weeks, with a curriculum not entirely focused on computer science, students displayed competence with event-driven programming, initialization of state, message passing, and say/sound synchronization. We have employed assessment methodologies that avoid written exams, an approach both outreach and classroom-based programs may find useful.
Conference Paper
ScratchJr is a graphical programming language based on Scratch and redesigned for the unique developmental and learning needs of children in kindergarten to second grade. The creation of ScratchJr addresses the relative lack of powerful technologies for digital creation and computer programming in early childhood education. ScratchJr will provide software for children to create interactive, animated stories as well as curricula and online resources to support adoption by educators. This paper describes the goals and challenges of creating a developmentally appropriate programming tool for children ages 5-7 and presents the path from guiding principles and studies with young children to current ScratchJr designs and plans for future work.
Article
This workshop is for high school and college teachers of general-interest ("CS 0") computer science courses. It presents the programming environment used in two of the five initial AP CS Principles pilot courses. SNAP! (Build Your Own Blocks) is a free, graphical, drag-and-drop extension to the Scratch programming language. Scratch, designed for 8--14 year olds, models programs as "scripts" without names, arguments, or return values. SNAP! supports older learners (14--20) by adding named procedures (thus recursion), procedures as data (thus higher order functions) structured lists, and sprites as first class objects with inheritance. Participants will learn SNAP! through discussion, programming exercises, and exploration. See http://snap.berkeley.edu for details. Laptop required.