Escolar Documentos
Profissional Documentos
Cultura Documentos
CHILDRENTHROUGHTHEINTERACTIONWITHSMARTDEVICES
MsC.Dissertation
By
JosRafaelMoraesGarciadaRocha
Recife,
Janeirode2016
Dissertao
apresentada
como
do
Centro
de
Informtica
da
Universidade
Federal de Pernambuco
Recife,
Janeiro de 2016
1
Dissertao
apresentada
como
do
Centro
de
Informtica
da
Universidade
Federal de Pernambuco
Aprovada em 15/01/2016
BANCA EXAMINADORA
PhD. Cristiano Coelho de Arajo UFPE
________________________________________________
PhD. Vinicius Cardoso Garcia UFPE
________________________________________________
PhD. Alberto Cesar Cavalcanti Frana UFRPE
________________________________________________
Recife,
Janeiro de 2016
2
Agradecimentos | Acknowledgements
Aps trs anos, recordar de todas as pessoas que contribuiram direta e indiretamente
para a concluso deste trabalho no uma tarefa fcil, ento tentarei fazer os devidos
agradecimentos em ordem cronolgica. Primeiramente, gostaria de agradecer o apoio dos
meus pais, Garcia e Audrey, que me propiciaram todas as condies fsicas, mentais e
financeiras para que eu pudesse concluir um dos maiores desafios que decidi enfrentar. Sou
muito grato tambm a minha irm, Raissa, que sempre me incentivou a continuar trilhando
este caminho, e me ajudou bastante com seu conhecimento na lngua inglesa. Agradeo a
minha sogra Henriqueta Luiza, por me incentivar, principalmente na reta final do trabalho.
Aos meus colegas de turma agradeo o suporte para a concluso da primeira parte do curso,
em especial os mais prximos: Clecio Costa, Herminig Everson, Plcido Segundo e Jos
Alfredo. Aos meus amigos Diego Nascimento e Diogo Carvalho, que me ajudaram na ideao
e no design grfico do meu projeto. Gostaria de agradecer tambm aos meus amigos das
empresas Fingertips e C.E.S.A.R. nas quais trabalhei durante o perodo do mestrado - a lista
de nomes bastante extensa, mas eles sabem que agradeo profundamente pelo apoio. As
palavras no seriam suficientes para agradecer ao meu orientador, Vinicius Garcia, que
aceitou entrar comigo nessa empreitada e colaborou ativamente com seu conhecimento e sua
experincia, alm de me colocar no caminho correto sempre focando no objetivo final, a
concluso deste trabalho. Da mesma forma, no tenho como agradecer suficientemente a
minha co-orientadora, Taciana Pontual, que me ajudou muito com seu conhecimento
especfico e foi bastante criteriosa em suas sugestes, prezando sempre pela qualidade do
trabalho. No poderia deixar de agradecer ao professor Luciano Meira, que em determinado
momento, em uma curta conversa, ajustou o rumo do meu trabalho, evitando que eu
provavelmente percorresse um caminho muito mais tortuoso do que percorri. Agradeo
tambm a todas as outras pessoas que contriburam direta ou indiretamente para a concluso
desse trabalho. E por fim, demonstro minha imensa gratido a pessoa que talvez tenha me
acompanhado mais de perto, minha esposa, Mariana, que me deu todo o suporte psicolgico,
alm de me acompanhar nos experimentos, me ajudou com seus conhecimentos sobre
mtodos de pesquisa e que, na reta final, ainda ajudou com suas habilidades em design
grfico, construndo algumas figuras para o trabalho.
Abstract
Nowadays the computational thinking is one of the most important skills a person
should develop to be more well prepared for the near future. By the middle of this century,
this ability will probably have the same level of importance of fundamental skills like reading
and writing, and people will need to learn programming and problem solving with
computational thinking from an early age. Researches trying to stimulate the introduction of
this skill set to young children, and this has been done since 1967 when the Massachusetts
Institute of Technology created the first language aiming this kind of public called LOGO.
Although the studies in the area of developing computational thinking on children started
almost six decades ago, the importance of teaching programming in schools is not widely
spread around the world, in places like Brazil, this skill is starting to be introduced to children
older than 10 years-old. In contrast, the United States and some european countries are using a
variable set of approaches to introduce these concepts to young children, usually by creating
toys and games which these concepts can be developed within them. Unfortunately most of
approaches are aimed for already literate children, very few of them do not require reading
skills, limiting the minimum age of users to approximately 6 years old. This work has the
intention to argue that younger children are not only able to develop algorithms and initiate
the development of computational thinking skills, but also this practice will be quite
profitable for their future. An experiment involving 10 children with age between 4 and 6
years old is presented here, where the selected children played a game developed specially for
this work, and their performance was able to produce data that is going to be analyzed
further to test the main hypothesis, additionally, while reviewing the literature, problems
related to the effects of letting children use smart devices and internet without supervision
were identified, in order to advocate the usage of this technology by young children, possible
causes and risks of these problems are presented and ways to avoid them as well.
SUMMARY
1 INTRODUCTION... 11
2 STATE OF THE ART.16
2.1 DEVELOPING COMPUTATIONAL THINKING ON CHILDREN: BASIC
CONCEPTS AND HISTORICAL FINDINGS....17
2.2 A TAXONOMY FOR APPROACHES TO INTRODUCE CHILDREN TO
PROGRAMMING..29
2.2.1 TEACHING MECHANICS OF PROGRAMMING..29
2.2.2 SOCIAL LEARNING....30
2.2.3 PROVIDING REASONS TO PROGRAM..31
2.2.4 EMPOWERING MECHANICS OF PROGRAMMING...32
2.3 CHAPTER SUMMARY...34
3 THE GAME: HOW IT WAS BUILT, AND WHAT IT ACHIEVED....35
3.1 PILOT VERSION, TESTING AND RESULTS....38
3.2 BETA VERSION USED FOR THE EXPERIMENT....45
3.3 THE EXPERIMENT, TESTING THE GAME'S BETA VERSION WITH
CHILDREN.47
3.3.1 THE 4 YEAR-OLD'S ANALYSIS...48
3.3.2 THE 5 YEAR-OLD'S ANALYSIS...52
3.3.3 THE 6 YEAR-OLD'S ANALYSIS...56
3.3.4 A COMPARISON BETWEEN THE THREE GROUPS...60
3.4 CHAPTER SUMMARY...60
4 RISK ASSESSMENT AND MITIGATION..62
5 CONCLUSION.67
5.1 FUTURE WORK..68
5.1 REFERENCES..71
LIST OF FIGURES
Figure 1: The Valiant turtle 12
Figure 2: Roamer educational robot ..19
Figure 3: Roamer Too, Roamer's second generation ...20
Figure 4: Flashlight with touch sensor built with electronic blocks ...21
Figure 5: FlowBlocks (left) and SystemBlocks (right)..................................................................22
Figure 6: Tern (left) and Quetzal (right) ......................................................22
Figure 7: RoboEduc Level 1 (left), Level 3 (center), and Level 5 (right) ...............................24
Figure 8: LogoBlocks user's interface. ..................................................................24
Figure 9: Scratch interface ............................................................................................26
Figure 10: ScratchJr interface ...................................................................................27
Figure 11: A kindergartener project working on a pre-made environment (left), a project based
on a story by two kindergartners (right).................................................................28
LIST OF TABLES
Table 1: M's first three attempts on level 1 ..42
LIST OF CHARTS
Chart 1: First 4 year-old Score x Attempts...50
Chart 2: Second 4 year-old Score x Attempts...51
Chart 3: Third 4 year-old Score x Attempts.....52
Chart 4: First 5 year-old Score x Attempts...54
Chart 5: Second 5 year-old Score x Attempts...55
Chart 6: Third 5 year-old Score x Attempts.....56
Chart 7: First 6 year-old Score x Attempts...58
Chart 8: Second 6 year-old Score x Attempts...59
Chart 9: Third 6 year-old Score x Attempts.....60
10
1.Introduction
Through the past few years the learning process that is applied in elementary school
has been criticised more often. Questions about its effectiveness are being made and some
schools have already tried to improve it by adding some disciplines that may prepare the
students better for the World's demands (WAGNER, 2008). This chapter briefly introduces
the main area of study of this work, explicits its main questions, objective, hypothesis and
researchmethodology.
According to Wing (2006)computationalthinkingisoneoftheabilitiesthattheworld
is demanding from people, and it will probably be listed as a fundamental skill set in a few
years. This skill set includes the computer science foundations such as: abstraction as the
ability to separate thecomplexityofthingsindifferentlevels,thinkrecursively,programming
logic,essentiallysolvingproblemsusingthecomputersciencefundamentals.
The programming logic, as part of computational thinking skill set, is often listed as
one of the most important skills to be learned sooner and, since the early 90's developing
thinking skills by programming has been stimulated (COSTA, 1991). Nowadays, in a
majority of countries, programming is only learned when the person reaches adolescence or
early adult age, at college . Some studies and applications are trying todelivertochildrenan
early access to this skill throughclasses,games,puzzles,andapplicationssuchasAlice,a3D
environment to create animations and tell stories, and Scratch, an environment to create
stories, games and animations, LEGO mindstorms, a tool set to create robots and develop
programs to control them (DE PAIVA et al.,2015FARIASetal.,2015MATTOS,S.2015
FINCHERetal.,2010).
The introduction of programming concepts to teenagers and children have been
studied since before the personal computer was introduced to the stores. Most of the studies
related to this researcharefocusedonhowtoachievethetwomostvaluedaspectsofthearea,
which are lowering thebarrierstoprogramminganddesigninga"higherceiling"withalower
barrier (TEMPEL,2012).Whenthebarriersarelowermorepeoplecanaccessthetechnology
and people with less previous knowledge of mathematics, logic andprogrammingcanaccess
the technologyandstarttocreateprograms.Moreover,aneasierapproachtobeusedmightbe
considered to have a "higher ceiling", if people can create more complex programs with it
11
than with previous ones. This chapter provides a brief introduction of the historical
achievementsoftheareatobemoredetailedonthenextchapter.
In 1967 the MIT (Massachusetts Institute of Technology) started working on Logo, a
multiparadigm language based on the functional language LISP, which was introduced to
schools in 1980 by Papert (TEMPEL, 2012). In his work, Papert (1980) advocated that
children would beabletocomprehendandplaywithLogo,andassoonasitwereacceptedby
the schools, theeducationalsystemwouldhavetochangeandadapttoit,butclearlyitdidnot
go this way as many countries are still tryingtointroduceprogrammingtoschoolsmorethan
3decadesafterPapertpublishedhiswork.
With Logo, a famous application was created, known as the Logo turtle, which was
basically a game where a turtle was controlled by the user with Logo commands. The game
was popular among computer users, and then following with the idea the floor turtle was
created,alittlerobotconnectedtothecomputertomaterializethevirtualturtleusedonLogo's
programs. It enabled children to send simple commands for the machine to execute such as:
move to the sides, back and forward, all in Logo language. Papert (1980) explained that
children were able to interact with the turtle and make it reflect their own cognitive process.
In 1983ValiantTechnologystartedtoshiptheircommercialversionofthefloorturtle,named
Valiant Turtle (Figure 1). It consisted of a remotely controlled version of the floor turtle
which was a great improvement, and also it had space toplugapenorpencilonthetopofit,
whichenabledtheturtletomakedrawingsonthesurface.
Figure1:TheValiantTurtle
Source:http://roamerrobot.tumblr.com,accessedin02/12/2015.
12
With the advent of Logo in the late 60's a series of research and works were done in
the area of teaching programming to children(describedinthenextchapter),butthemajority
of the new approaches, like Scratch and LEGO Mindstorms for example, requires reading
skills, building a barrier for preschool children to start learning programming skills. Most of
the recent approaches of the area that concentrate efforts on young children try to avoid
written text actions, replacing them with icons and contextualized buttons to provide a more
reachableandintuitiveuserinterface,forexampleScratchJrandRoamerToo.Moredetailson
theseapproacheswillbeseenonthenextchapter.
Withappropriateapproaches,teachingprogrammingtochildrencandeliverevenmore
than just a useful skill, programming classes can alsohelpthedevelopmentofbasicconcepts
of science, technology, engineering and mathematics (HOLMQUIST, 2014). Wyeth (2001)
advocates that the increasing need of introducingtechnologytoyoungchildrenisundeniable,
considering that educators have to prepare the next generations for the 'information
revolution'. Although an approach ofhowtoteachprogrammingtochildrenhasnotreacheda
consensus yet, it is considered that it needs to be gradual and assisted. According to
Zuckerman et al. (2005) an interesting approach is with digital manipulatives or familiar
objects,asitincreasestheacceptanceofchildrentotechnology.
Considering that children manipulating new technology is probably an unavoidable
scenario that willbefacedworldwide,itisimportanttoparentsandschoolteacherstoprepare
themselves properly to provide such contact, and there are many possible strategies to
introduce children to smart devices in ways that willbeproductive,enablingthemtodevelop
new skills and play at the same time. Conversely, unsupervised and uncontrolled usage of
smartphones, tablets and the internet can lead to very serious problems such as: addiction,
loneliness, obesity, hearing and vision impairments and the situation is aggravated the
youngerthechildis(PONTES,H.,GRIFFITHS,M.,PATRO,I.,2014).
There are many initiatives on teaching children how to create programs, and
developing basic programming skills, some of these approaches are focused on young
childrenwith4yearsoldaverage,butveryfewoftheseapproachespresentstudiessuggesting
that children are able to use it properly, and the ones that present such study, mostly do not
evaluate thechildren'sresultsintheprocess.Consideringthisfact,thisresearchinvestigatesif
preschoolers are able to develop algorithms, and if they develop programming skills when
playingprogramminggames.
13
The specific profile and the differences between ages raised important facts that are detailed
inChapter3.
Chapter 2reviewstheliteraturetoprovideahistoricaloverviewandthestateoftheart
of the studies regarding developing programming skills on children. Chapter 3 is focused on
detailing how the game was designed and developed, how it was initially tested, which
changes were made between versions, and also presents a quantitative analysis on the data
collected as the results of the research, and a detailed report of how children interacted with
the game. Chapter 4 provides a risk assessment in children interacting with technology and
waystomitigatethoserisks.Chapter5drawtheconclusionsofthework.
15
2.Stateoftheart
measurements difference, the computer programming group may have had a creativity
improvement, and outperformed the CAI group in metacognitive tasks and similar results
werefoundondirectiontests.
Otherapproachesintroduceprogrammingtochildreninsimilarwaysofhowcomputer
science students learn, implementing simple algorithms like easy mathematical calculations,
building lists and drawing lines for example, far away from their interests. Moreover,
programming was introduced without guidance when things went wrong (debugging), and
childrenwerenotstimulatedtodeeplyunderstandwhenthingswentright(CLEMENTS,H.&
GULLO, F. 1984). According to Resnick (2009) those were the main reasons why some
children could not master the syntax of the early programming languages and were the main
challengestoovercomebackinthe80s.
Tomotivatechildrentogetintouchwithprogramming,theLEGO/Logolanguagewas
introduced in the late 80s. LEGO/Logo is a language based on Logo designed to control
machines built with Lego programmable bricks, sensors and motors. The kids were able to
build the machines, connect them with the computer, and program them with LEGO/Logo
(RESNICKOCKOPAPERT,1988).
To unleash the robots from thecablesconnectedtothecomputerstheLegoCompany1
introduced the programmable brick, which is a tiny computer embedded on a Lego brick.
Joining some blocks people are able to create simpleelectroniccircuitsandcontrolmotorsto
automate something, for example: door opening, switching lightson/off,andalsomovingcar
toys(RESNICKetal.,1996).
The Lego Company is still investing in the robotics area, and nowadays we can find
all sorts of machines made from Lego bricks and motors. The company produced, out of the
programmable bricks initiative, a set of products known as LEGO Mindstorms2 for building
robots with Lego bricks and programming them with a visual language built for the product
called RCX Code, and the TuftsUniversityalsocreatedanenvironmentnamedROBOCODE
to develop programs for LEGO Mindstorms, there are several other third parties approaches
available,includingenvironmentsthatsupportsLua,VisualBasicandJavaforexample.
According to Holmquist (2014), educational robotics can be a great tool for making
students engage and learn science, technology engineering and math (STEM) and for
Availableathttp://www.lego.com/a ccessedin02/12/2015.
Availableathttp://mindstorms.lego.coma ccessedin02/12/2015.
18
elementary students toys can be used to this objective. She conducted a research with fourth
grade students (9 10 yearsold) to describe the process of using robotics to facilitate the
understanding of STEM concepts. Roamer Too, a reinvention of the floor turtle, wasusedas
tool for the research. This version is also a second generation of the Roamer created in1983
andmostlyusedinEuropeanschoolsattheendofthe80s.
Both versions of the Roamer were designed to be independent robots, no need for
cables, Bluetooth devices or any other tools commonly required by other approaches. The
robots have a commands keypad on top of them that enables users to previously set up their
actions and then play. The first version (Figure 2) had only one keypad option, while the
second generation (Figure 3) is considerably smaller andprovidesdifferentkeypadsforusers
of different ages, also it can communicate with the user to help with debugging and give
advicesuchasrememberingtoshutitdown.
Figure2:Roamereducationalrobot
Source:http://www.valianttechnology.com,accessedin02/12/2015.
The work of Holmquist in 2014 with fourth grade students was conducted in a way
that the children involved built a project that the robot needed to complete using sequential
tasks, and also built the set of instructions to lead the robot to complete the tasks. She
observed a list of STEM concepts such as forces, motion, programming, designing, and
metrics units. The study was a comparison between 2 groups, one used robots, and the other
didnot.Theanalysiswasqualitativeandtheactivitiesproposedtothestudentswerethesame.
The students were presented toafictionaladventurewheretheyneededtorescueaspaceship,
19
and they needed to design the pathway and work together to complete the task. Holmquist
used a pretest to assess the previous STEM knowledge of each group, and then conducted a
class to teachbasicinstructions.Thefullexperimenttook5sessionsofbetween1and2hours
of duration. The only difference between the two groups was that when the group with the
robot needed to program the robot and design thepath,theothergroupneededonlytodesign
thepath.Asfortheresults,thegroupwithrobotsshowedaconsiderablypositivedifferencein
engagement, and the results of the post test on STEM concepts were slightly higher in
comparisonwiththegroupwithoutrobots.
Figure3:RoamerToo,Roamer'ssecondgeneration
Source:http://www.valianttechnology.com,accessedin02/12/2015.
Important contributions to the area involve the creation and use of digital
manipulatives, which are based on manipulative toys like cuisenaire rods and pattern blocks
with digital circuits embedded to add computational and communications capabilities to the
regular toys (RESNICK et al. 1988). Lego bricks for example are manipulatives with which
people canjoinblocksandcreateaform,likeacastleorananimal,andalsoturnlightsonand
off,makethemrunacrosstheroomamongotherfeatures.
20
Using the electronic blocks, a manipulative toy using modified LEGO blocks with
electronic systems inside, a research involving 40 children between 4 and 8 years of age
found that even the youngest children were interested in playing with the toy. Low levels of
frustration were noticed and great results were identified, and playing with it the children
were able to build a good variety of systems such as walking cars, flashlights activated by a
touch sensor (Figure 4), and lights that are turned on and off by a clap. Most of the children
demonstratedsignsofusinganalogiestodoit(WYETHPURCHASE,2002).
Figure4:Flashlightwithtouchsensorbuiltwithelectronicblocks
Source:WYETHPURCHASE,2002.
According to Zuckerman et al. (2005) during their experiments involving children
working with toys designed to develop systems, in addition to practicing their creativity and
building algorithms, children can become more social whileplayingwitheachotherandthey
can start to understand some important conceptssuchasabstraction,iterativeness,modelling,
and analogizing. Zuckerman's experiments were based on what they called digital MiMs
(Montessori inspired Manipulatives). They developed two toys, SystemBlocks and
FlowBlocks (Figure 5), that enabled children to create abstract structures that through
analogies made possible to better understand realworldsystemsandoperationssuchaswater
flowfromabathtuborprobabilityofastormtohappen.
21
Figure5:FlowBlocks(left)andSystemBlocks(right)
Source:ZUCKERMANetal.,2005.
An interesting study using LEGO Mindstorms was done by Horn and Jacob in 2007.
They created a programming language for LEGO Mindstorms robots usingmanipulativesto
control robots, which they named Quetzal. It was considered a good approach to stimulate
children to play and discover programming. They used connectible tags to represent
commands and form algorithms. Although Quetzal was a good approach,theysuggestedthat
the pieces were fragile and probably would raise problemsusingitinsideclassrooms,sothey
created a second language, Tern, to control virtual robots on a computer screen, which was
considered an evolution and had better acceptance with the users. It was based on wooden
blocks representing the commands, similarly to Quetzal, but they noticed that the wooden
blocks from Tern language were easier to connect so they realized that it created a better
experience. Figure6showsontheleftside,thewoodenblocksfromtheTernlanguageandon
the right the connectible tags from Quetzal, which makes it easier to understand why Tern
was considered to give a better experience to the users, the connectible tags from Quetzal
weremoredelicateonthejoiningdots,requiringmoremotorcoordinationtouse.
Figure6:Tern(left)andQuetzal(right)
Source:HORN&JACOB,2007.
22
Availableath
ttp://www.roboeduc.com.br/a ccessedin02/12/2015.
23
Figure7:RoboEducL
evel1(left),Level3(center),andLevel5(right)
Source:THOMAZetal.,2009.
After the invention of the programmable brick, the Logo team created an innovative
approach to teach programming for kids that was Logo Blocks, unifying concepts of Logo
programming language and the idea of joining LEGO bricks. Figure 8 exemplifies how the
coding is done with the bricks concept, at the left a commands palette and the rightsidewas
reserved for developing. In 2006 as a project of the Lifelong Kindergarten GroupattheMIT
Media Lab, Scratch4 was built based on the idea of Logo Blocks but adding a collaborative
platform todevelopandsharemultimediacontentontheinternetsuchasgames,presentations
andanimations(TEMPEL,2012).
Figure8:LogoBlocksuser'sinterface.
Source:KELLEHER&PAUSCH,2005.
4
Availableathttps://scratch.mit.edu/accessedin02/12/2015.
24
Availableathttp://www.greenfoot.org/accessedin02/12/2015
25
Figure9:Scratchinterface
Source:RESNICK,M.etal.(2009)
Scratch first contact is aimed for children with the average of 7 years old, when they
are already literate. Coding with blocks and these kinds of language are limited for people
who are able to read, for that matter an association between theLifelongKindergartengroup
(MIT), the DevTech Research Group at Tufts University and thePlayfulInventionCompany
developed ScratchJr (Figure 10), a tool based on Scratchbutdesignedforchildrenbetween5
and7yearsold.
According to Flannery et al. (2013) the ScratchJr project started with experiments on
theScratchplatform,presentingittochildrenofdifferentagesandanalysingtheirinteractions
with the platforms. When letting four and five yearolds of the same school arranged in
groups to have lessons of Scratch's functionalities and skills accompanied by some of their
teachers, it was possible to gather data to create ScratchJr's first interface and main features
(Figure10).
26
Figure10:ScratchJrinterface
Source:FLANNERYetal.(2013)
Following Scratch's idea, the green flag represents start, and the red block or button
means stop, in Figure 10 it is possible to identify how ScratchJr simplified the interface
providing only necessary features, at the bottom the development area, composed of a
operations palette (turn to sides, run, jump) and a lower area reserved for programming, the
left panel is a sprites pallet that enabled the user to compose the environment with some
actors, and the panel from the right options for debug were provided with the green flag and
theredbuttontostartandstopdebugging.
This experiment enabled the creation of a prototype that was tested with children
between 5 and 7 yearsold. The pilot encountered some barriers, clearly illiteracy was a
problem, with most of the commands based on text, children that were still learning to read
had troubles with it, alsosomenumericoperationsthatwerenotyetintroducedrevealedtobe
problematic causing programming to be very difficult. These results led them to improve
SratchJr's interface and develop the concept of cards, visually more acceptable for younger
children and when applied in a semistructured project was more effective on kindergarten
students.
27
Figure11:Akindergartenerprojectworkingonapremadeenvironment(left),aprojectbasedona
storybytwokindergartners(right).
Source:FLANNERYetal.(2013)
While refining ScratchJr solution Flannery and her associates could collect many
examples of projects children from 4 to 7 years old were able to work on. Their activities
were more commonly divided into two subgroups,thosewhowantedtoprogramactorsonan
specific scenario, and those who wanted to build a scenarioandthenrefinesomeofitsactors
behaviours. These observations are exemplified on Figure 11, where a kindergartener
familiarized himself with the presented scene, and startedtoaddbehaviourtoitsactors(left),
and a coupleofstudentswhowerecreatingaparticularstoryandpracticedprogrammingwith
someofthecreatedactors.
Considering Scratch as one of the newest and most popular solutions,withthelowest
learning curve to programming skills, the next stepintothislineofworkistofindouthowto
lower the curve even more. As Scratch is designed for already literate children,theyareable
tounderstandblocksprogrammingaslongastheylearntheconceptofalgorithm.
Figure 12 summarizes the timeline of the most relevant work and important products
related to introducing computational thinking to children starting from late 60s until more
recent works. This section provided a historical overview and also a review of the most
common approaches used nowadays for making children familiar with programming. The
number of solutions made for this kind of initiative is massive, since it started more than 40
years ago and the interestofresearchersonlygrewsincethen.Forthisreasonthenextsection
of this work exposes a taxonomy presented in 2005 that tries to categorize all kinds of
approachesofthearea.
28
Figure12:Researchonintroducingcomputationalthinkingtochildrentimeline
2.2Ataxonomyforapproachestointroducechildrentoprogramming
An interesting survey was made by Kelleher and Pauschin2005categorizingmostof
the attempts to ease the programminglearningprocess.Theycreatedataxonomythatdivided
all the approaches into two large groups: Teaching systems, and Empowering systems. The
first one tries to teach programming to develop skills of the learner, and the second oneisto
useprogrammingforsomereasoninthefuture.
Kelleher and Pausch analyzed over 70 different approaches that would make
programming easier, the taxonomy is useful to categorize new approaches, and it will be
briefly described in this section. In order to create an approach that aims to develop
computational thinking on young children, it is required to understand most of the strategies
used to make programming more accessible to people, a summary of the taxonomy is
presentedinthenextsubsectionswithexampleoftheapproachesrelatedtothecategories.
2.2.1TeachingMechanicsofprogramming
Thecategorythatprobablycontainsthemajorityoftheapproachestowardslearningto
code, believesthatsyntaxandcodestylearethehardestthingstolearnwhenapersonstartsto
develop programs, and focuses on lowering the barriers to learning these aspects. Some
approaches are centered on how to express programs and making it easier to communicate
29
with machines, lowering the complexity of a programming language, for example, is one of
the strategies. Some languages like BASIC, Blue language and JuniorJava were based on
other more complex languages, also,someprogramshelpdeveloperstocodebymakingthem
avoid syntax errors. Another changing approach is to createnewlanguagesand/orparadigms
that focus on how instructions can be combined and organized to create more complex
programs. Thereareseveralexamplesofapproachesforthissubgroup,likePascal,alanguage
created to be taught in classes when the only languages available were FORTRAN, COBOL
and Algol. Pascal was a structured language. Smalltalk, considered to be the first object
oriented language, is a good example of a language that introduced a new paradigm, that
madeeasiertocreatemorecomplexprograms.
An interesting approach,andthemostrelevantforthispresentedwork,isloweringthe
barriers to programming by avoiding typing and, in some cases, readingcode.Theinitiatives
of this subgroup focuses on creating visual languages, physical objects, toys, more tangible
experiences that make easier to learn how to develop programs.Theseapproachesareableto
lower the barriers for very young children to start developing algorithms and be able to start
developing more complexprogramswhilestillinchildhoodbeyondtheapproachpresentedin
the nextchapter,otherexamplesareLogoBlocks,ElectronicBlocks,Scratch,Alice,Curlybot
6
andTortis7.
2.2.2Sociallearning
All the approaches of this category and its groups arefocusedonallowingchildrento
develop skills by working together. There are two ways of collaboration: sidebyside and
through network interaction, probably, all the tangible user interfaces are classified into
sidebyside social learning such as the previously cited tangible manipulatives Tern and
Quetzal, LEGO programmable bricks and AlgoBlock, a set of tangible manipulatives that
represents a physical programming language created on the mid 90s (Suzuki, H. & Kato,H.,
1995).Figure13showschildrenpracticingprogrammingsidebysideusingAlgoBlock.
Arobotthatcanrecordmotionandreplayit,moreinformationavailableat
http://tangible.media.mit.edu/project/curlybot/accessedin02/12/2015.
7
Adevicetoeasethecommunicationsbetweenyoungchildrenandarobotturtleavailableat
http://dspace.mit.edu/handle/1721.1/6224accessedin02/12/2015
30
Figure13:ChildrensidebysidepracticingprogrammingwithAlgoBlock
Source:Suzuki,H.&Kato,H(1995)
Although the survey indicated that an approach can only be classified into one
category, Scratch was classified into Teaching mechanics of programming, but if you
consider that one of the main interesting features of the platform is the network experience,
andwhatchildrenfromallovertheworldarecreatingusingit,maybe,itcanbeclassifiedinto
this category too, because it provides a network interaction between users,andthecontextof
programmingforchildrenmayhaveconsiderablychangedsince2005.
2.2.3Providingreasonstoprogram
This category focuses onprovidingastartingpointforbeginnerssinceusuallytheydo
notunderstandthecomplexityofprogramming,orhowtostart,orevenwhattheycanachieve
with it. Reinforcing the idea that one approach can becategorizedinmorethanonecategory,
the game presented on the next chapter can beclassifiedintothepreviouscategoriesandalso
in this one, becauseitprovidestoolstodevelopthefundamentalsofprogrammingmechanics,
itcanbeplayedwithfriendssidebysideanditalsoprovidesastartingpointforbeginners.
Approaches of this category can be educational software or games that provide
puzzles or challenges that involves fundamentalconceptsofprogrammingoractualcodingto
31
achieve certain goals for example on The Incredible Machine from Sierra Entertainment, the
user changes pipes position to provide water forhouses.Childrencangraduallydeveloptheir
skills while facing harder challenges. Another example is Robocode8 where programmers
write java code to control a simulated battle robot and then test them into an arena against
otherprogrammer'srobot.
2.2.4EmpoweringMechanicsofprogramming
This category is not focused on preparing users to program on general purpose
languages, but to understand the importance of programming to develop the skills tobeused
in specific domains. The approaches classified into this category are basically divided into
two subgroups, the first one advocates that coding is too difficult and tries to avoid it
followingcertainstrategies,andthesecondonetriestoimproveexistinglanguagesorwaysof
interactingwithexistinglanguages.
One strategy to avoid coding is to provide aneducationalsoftwarewheretheusercan
interact with the interface and practice some programming concepts focusing on a certain
domain, Programming by rehearsal was one of the approaches of this subgroup, created in
1984, it consisted into a program that allowed users to build small systems like clocks,
chronometers only by moving visual components that communicate with others. Another
strategy is to allow users to create programs or simulations using only conditionals and
actions. AgentSheets9 created in 1991 at University of Colorado is an environment that
allowed the user to create simulations based on conditionals and actions, Figure 14 shows a
program that simulates traffic lights built with AgentSheets.Itcontains2rules:thefirstoneis
to every 3 seconds execute the second rulethatischangecolorfollowingthesequencegreen,
yellow,red.
Availableathttp://robocode.sourceforge.net/accessedin02/12/2015.
Avalableathttp://www.agentsheets.com/accessedin02/12/2015.
32
Figure14:TrafficlightsbuiltwithAgentSheets
Source:KELLEHER&PAUSCH,2005.
A third strategy the user does not build any program, but changes its behaviour by
choosing its specific actions. The Pinball Construction Set10, for example, was created in
1983anditisasoftwareprogramthatallowstheusertocreateapinballgamebyplacingeach
component on the screen, but also define the behaviour of the ball when getting in contact
witheachcomponent.
The second subgroup focusesoncreatinglanguagesthatareeasytoteach,andprepare
their programmers to write in languages of general purpose. Languages designed to become
more understandable usually applied common expressions used by people on their natural
environment.Createdin1981COBOL(COmmonBusinessOrientedLanguage)wasdesigned
to be written by programmers and read by management. Another language categorized into
thissubgroupisLogo,previouslydefined,createdforchildren.
10
VideogamecreatedbyBillBudgeandpublishedbyEletronicArts.
33
Another approach was an environment with a different way to code by replacing the
typical text editor with different tools, for example Squeak Etoys11 createdin1997wherethe
novices can edit the behaviour of certain premade objects. Figure 15 shows a printscreen of
Squeak,andtheboxesontheupperleftaretheplacesprogrammerscaneditthecode.
Figure15:SqueakEtoysprintscreen
Source:KELLEHER&PAUSCH,2005.
2.3Chaptersummary
This chapter presented a literature review collecting some historical works made on
programming for children, and more recent studies including the areas of robotics and smart
tangible devices. It also summarized a taxonomy that tries to categorize all approaches on
teaching children how to program. The next chapter introduces the approach used on this
work to introduce young childrentoprogramming,theexperimentmethodologyandthemain
findingsoftheresearch.
11
Availableathttp://www.squeakland.org/accessedin2/12/2015.
34
3.TheGame:howitwasbuilt,andwhatitachieved.
This work explores primarily two problems, the first one was: "Can preschoolers
develop algorithms?", and the second one: "Do preschoolers increase their programming
skills when playingprogramminggames?".Fromtheseproblems,itwaspossibletoformulate
the main hypothesis of this work that is"programminggamesenablechildrentodevelopand
improve their programming skills". An importantresearchinthisfieldwasmadebyPapertin
1980, he allowed children to program a little robot called the "floorturtle" from a computer
using simple commands. Inspired by Papert's work, to test the hypothesis a game prototype
similar to the floor turtle was developed, where children used an application installed on a
tablet device to control a physical robot. Duringtheinteraction,theapplicationcollecteddata
to be analyzed. This chapter details how the game prototype was designed, how the
experiment with the children was executed, what kind of data it collected, and the results
encountered.
For a better understanding of how the children involved with this work interacted with the
game developed, it is important to know why the game was built and some details on the
gameversions.
The game was built inspired on some approaches to teaching children the basics of
programming like the floorturtle, LightBot12 and primo.io13 for example. It was designedto
enable children to develop and debug simple algorithms, and also predict the algorithm's
behaviour. It needed to be easy to use, and mainly designed for children without reading
skills. However, the main objective of building a game capable of introducing children to
programming was not to compareitwiththeothergamesandtoys,theyareallverysimilarto
each other, but to assess the effectiveness of the approach of letting childrengainexperience
withthebasicsofprogramminglogicwhileplayingagame.
A very popular relatedinitiativethatstartedasawebbrowsergameinthelastdecade,
and was lately upgraded for a multiplatform approach, is LightBot: Programming puzzles
(Figure 16), where the user guides a robot with simple commands with the goal of lighting
12
13
http://lightbot.com/
http://primo.io
35
Figure16:LightBot
Source:http://lightbot.com/(Accessedon02/12/2015)
The LightBot initiative divided the game in two main versions, a common version
designed for public in general, and a junior version designed for children between 4 and 8
years old. Code.org14, a nonprofitable organization with the goal of bringing programming
classes to schools, recognizes LightBot as a good approach to introducing children to
programmingconcepts.
The main product that inspired this work was the Cubetto (Figure 17) from primo.io
initiative,whichconsistsofarobotwithasimpleelectronicboardandacubicleform.
Figure17:Cubetto
Source:www.primo.io(Accessedon04/11/2015)
14
http://code.org
36
Cubetto is controlled by a wireless wooden board (Figure 18) that provides, what
primo.io initiative calls, a physicalprogramminginterface,andwithasetofcommandbricks,
enableschildrentodevelopanddebugbasicprograms.
Figure18:Aphysicalprogramminginterface
Source:https://www.kickstarter.com/projects/1039674461/
primoteachingprogramminglogictochildrenage4(Accessedon02/12/2015)
The primo.io initiative made the cubetto robot an extensible robot by building it on a
Arduino board. Arduino is a lowcost opensource and extensible electronic platform with a
native programming environment that simplifies15 the building process of electronicsystems.
Due to the extensibility factor, cubetto, at first, was interpreted as a good fit for the
experiments planned for this work, but at that time, primo.io was still in production, and did
notintendtodelivercubettotothemarketuntilthethirdquarterof2015,makingitimpossible
touseitasanassetinthisresearch.
To recreate the floor turtle's experiment of the 80s with a newapproach,arobotwasneeded,
and as cubetto was not eligible, a more complex robot was chosen to be the "turtle" of the
game, the Sphero16 (Figure 19). It is not open and extensible as cubetto, but it is a spherical
robot with many builtin sensors, and Software Development Kits (SDKs) to enable the
developmentofthirdpartyapplicationstocontrolitsmovementsandsensors.
15
16
http://www.arduino.cc/
http://www.gosphero.com/
37
Figure19:Sphero
Source:https://www.gosphero.com
A study17 presentedonthePediatricAcademicSociety(PAS)annualmeetingof2015,
affirms that more than one third of oneyear old children and younger are allowed by their
parents to use smart devices such as tablets and smartphones in the United States, and the
percentage grows with the age. Furthermore, it found that approximately 73% of American
parentsallowedtheirchildrentousesmartdevices.
These results suggest that regarding the socioeconomic factor, most parents allow
their children to get used to new technologies, and it is possible to use such technological
devices as supports for children's development of new skills. Based on the scenario where
children are getting familiar with computers and smart devices sooner, a tablet device was
electedtoserveascontrollertotheSpherorobot.
To complete the ideation process, the game's challenges were still to be defined. The
game needed different levels of difficulty. Thefirstideafordefiningalevelwasapathseton
a horizontal flat platform where a sequence of commands leads the robot from one place to
another.Additionstoeachlevelaredescribedthroughoutthenextsections.
3.1Pilotversiondevelopment,testingandresults
The first version of the game's application (i.e the digital part of the game, the smart
device application) was developed primarily based on LightBot. To minimally enable
playing, the application needed a set of commands to be sent to the robot, a queue toputthe
commands in, and a start button, but to fulfill the requirements of this work, the following
otherfunctionalitieswereneeded:scorecalculation,storageandexportdata.
17
http://aapnews.aappublications.org/content/early/2015/04/25/aapnews.201504253accessedin
05/20/2015
38
So,inordertoallowdatacollection,theapplicationiscapableof:recordingdatawhile
the child is playingcalibratingtherobotthroughacalibrationview(whichisrequiredtogive
the robot the right orientation) and allowing the insertion of the user's name, age and level.
For every attempt of the child(i.e.andhe/shepressesthestartbutton),theapplicationsavesa
recordofthesequenceofcommandshe/shesenttotherobot,andcalculatesascore.
In order to differentiate attempts from one another, for the first version, scores were
calculated according to a formula defined as: number of commands timesfive(justadeltato
make the number more significant), times number of different commands. As an example, if
the set of commands was: "forward, forward, turn left, forward", the score would be
calculated as 4*5*2 (4 commands, times a delta, times the number of different commands).
Thescoreenablescomparisonsbetweenmanyattemptsforthesamelevel.
Figure 20 displays the applications main screen: the user can place a sequence of
commands on the red trail to be executed (starting from left to right, following the trail). At
thebottomgreybarasetofcommandsisavailabletobedraggedanddroppedonthetrail,and
at the bottomright is a startbutton("Iniciar"inPortuguese)tomakethespherorobotexecute
theactionsdefinedontheredtrail.
Figure20:Applicationspilotversionmainscreen
39
In order to collect more information about each child who plays the game, different
levels of difficulty were required. Three levels were designed to fulfil this requirement each
one of them increases the minimum number of commands needed to completion of the last
one. To complete the game there are only three different commands needed: move forward
andturnleftandright.
Figure21:Designofthethreegamelevels.
The design of the three levels is detailed in Figure 21. The circles represent valid
positions of the robot during play: the blue circle is the starting point, the red one is the end
point, and the green circles represent valid transitory points. The arrows represent the
commands to be executed to reach theendofeachlevel:thegreenarrowrepresentsthemove
forward command, the blue arrow turn right, and the orange arrow turn left. A counter
indicates the minimum number of commands needed to complete each level, making the
increasingdifficultybetweenlevelsexplicit.(from3to7commands).
While developing the game's application, an issue wasidentifiedregardingthesphero
and the designed levels, the sphero's plastic material was not appropriate to run the
experiments, due to the fact that the material was not adherent, making the robot move
imprecisely. To avoid this lack of accuracy that caused the robot to make different distances
with each "move forward" command, the sphero robot was covered with a rubber cover,and
40
the mat was built with EVA (Ethylene Vinyl Acetate) to increase the robot's adherence with
thegroundandavoidittosliparound.
The main objective of the pilot was to identify major flaws in the game, and
understand if it was possible and viable to correct these flaws for the main experiments. To
run the pilot, mainly two things were required: a room with enough space for the child to
move around and play, and for at least 3 adults and the childandthecompanyofatleastone
personlegallyresponsibleforthechild.Thepilotfollowedtheroadmapdescribedbelow:
Theresearcherintroducesthegametothechild
The child is invited to move the robot freely without levels to understand the
mechanics
After5to15minutesthechildisinvitedtostartthefirstlevel
Whenthechildcompletesonelevel,itispossibletostartthenextone.
Thetestendsifthechildcompletesalllevels,getstiredofplaying,orreaches1hourofplay.
One child was selected toparticipateinthepilot,accordingtotheprofilerequired:afiveyear
old girl with high intimacy with technology, whom willbecalledMtopreserveidentity.The
pilot took place in a room at M's house with many toys around, which directly affected her
focus on the game. Her fatherandbrotherwerepresenthelpingtheresearchertointeractwith
her.
The pilot test started with a demonstration of the game to M and her father, whowas
helping with the test trying to maintain M focused on the tasks. After the demonstration M
had a lesson of how the basic mechanics of the application worked, which she understood
very quickly. Then she tried to control the robotfreelyonthefloorthroughtheapplicationto
getfamiliarwithit,withoutagamelevelorparticulargoal.
When first playing with the game,Mshowedbigexcitementandunderstoodthebasic
mechanics very well, the drag and dropandstartbuttonfunctionalities,andthetrailsequence
were learned in less than 5 minutes of play. However, a great difficulty was facedbyM:she
was quite confused when selecting turn arrows, she was not intimate with left and right
definitionsandapparentlytheturnarrowswerechosenbytrialanderror.
After mastering the basic controls, M decided to move to the first level of the game
showed in Figure 22. The researcher was guiding M through the interaction to watch her
closely and support her every time she needed, but she was working freely with the
application. Questions like Which way must the robot follow now?wereraisedtostimulate
41
her to interact and at many times she showed a deep thinking countenancewithonly3trials
(Table 1) she was able to complete the first level and celebrated it with joy, but the
completion of the level was not clear, because of the lack of accuracy on the robot's
movement,itwentoffthepathbeforeturningcausingthebadimpressionofamistake,butthe
researchclarifiedthequestionandexplainedtoMthatshesuccessfullycompletedthelevel.
Attemp
t
Commands
MoveForward.
MoveForward,TurnLeft,MoveForward.
MoveForward,TurnRight,MoveForward.
Table1:M'sfirstthreeattemptsonlevel1
Figure22:Firstlevelofthegame
42
Immediately when the first level was completed, the researcher asked if M wantedto
go forward and try the second challenge, and she agreed with enthusiasm. Facingthesecond
level (Figure 23) was hard, astheleft/rightdefinitionsapparentlywerenotclear,andMhada
lot of trouble trying to complete the level. The best sequence she achieved was a sequence
with a turn action missing causing the sphero robot to getoutofthetrail.Moreovertherobot
did not react when a turn command was sent alone, or a sequence ended with a turning
command,causingabadexperienceconfusingtheturningfunctionalityfurther.
After some failed attemptstocompletethesecondlevel,Msfrustrationlevelroseand
she got tired of the game after around 20 minutes playing. While still playing the second
level, M increased her score after each attempt but failed for three times,andwhenfacingso
many failed attempts she got frustrated. The algorithms were not being developed with the
same enthusiasm causing more failed attempts with less chance of completion, and then she
askedtostopplaying.
Figure23:Secondlevelofthegame
43
played with her father and brother, probably an approach with more than one child could be
interestingmakingthemplaytogetherpracticingtheirsocialskills.
Analyzing the data collected from the application made it clear that the formula of
score calculation was not very accurate: if a wrong set of operations was chosen, the score
kept rising, which is not interesting for data analysis, causing the formula to be redefined.
Although the score calculation was inaccurate, the difficulty of the levels showed to be
balanced, as the second level was harder to complete than the first one, but there was only a
2commanddifferencebetweenthem.
Noticing the difficulty presented by M with theturningoperations,anewapproachof
visual interface was required to improve the results of the upcoming tests. M apparentlywas
more comfortable with the tablet on the landscape position, so theapplicationwouldbecome
more intuitive if the operations trail changed the orientation, going bottom to top, instead of
from the left to right, and also a change of the turning icons was required, as they were not
veryclear.
Themajorflawsidentifiedinthepilotarelistedbelow:
The turning functionalities were confusing, as they do not make the robot turn and
move
Children of early age do not understand what is left or right, causing more confusion
onturningfunctionalities
Set of commands ending with a turning arrow caused a bad experience becauseitdid
notgiveanyfeedbackofworkingproperly
The score calculation formula was not accurate, so the data was not adequately
representativeoftheexperiment
The red trail of the visual interface was not positioned in the most intuitive location,
thelandscape/portraitpositionofthetrailwasconfusing.
Therobotlackedmovementaccuracy,causingittomovemorethannecessary,leading
itoffthetrack
44
3.2Betaversionusedfortheexperiment
A new version of the application was developed according to the results of the pilot.
The game levels needed to be modified to help the children to better understand the turning
operations. Indications of turns were placed onthecornerstomakeiteasiertounderstandthe
left/right definitions, using colors to identifytheturnsinsteadofsaying"left"or"right"tothe
children. It was necessary to identify the corners with the turn operations colors to make a
connectionbetweentheturningsideandtheoperationtobeused.
A slight but useful change was made on the visual interface of the turning arrows as
they were not clear enough. A command sent to turn the robot is expected to change its
orientation, and wait for a "Move Forward" command to actually move, which is a common
behaviour of LightBot and primo.io (Cubetto) initiatives. In the pilot version, the turning
arrows gave the impression of turning and moving on the same command, soitwaschanged
tolookmorelikethe"Lightbot"arrow,tohelpconveyingtheideaofchangingorientation.
Furthermore, inordertolowerthebarriersforchildren'sunderstandingoftheleft/right
definitions,2setsofyellowandbluepaperconeswerebuilttobeplacedoneachcornerofthe
physical trail to serve as reference for turning actions. The communication between the
researcher and the children was eased by using more significant colors for the command
arrows on the interface. Inspired in traffic lights, green replaced red, meaning "Go", "Move
Forward", and pink was changed to yellow to match the turning commands with the
respective paper cone on the corners. Blue was already matching one of the cone's color, so
therewasnoneedforchange.
The Sphero robot isaball,anditisnotveryclearwhenitchangestheorientation,soa
small visual feedback was implemented to represent that change, when the user prepares the
set of commands to be executed, if it ends with a turning command the robot slightly move
towards the respective direction, not performing a full "Move Forward" operation, just to
showthatsomethingelseisneededtocompletetheactionofturningandmoving.
Another important change identified in the pilot version was to update the score
calculation formula. The pilot version formula did not take into account the right or wrong
moves performed by the robot, it calculated the scores based on types and quantity of
commands used to create the algorithm. For a new approach, thelevelsneededtobemapped
into coordinates and scores were calculated based on valid movements, i.e. movements
45
between two valid points. A valid movement was considered to worth 5 points and the
formula was updated to: number of valid movements multiplied by the current game level.
Figure24showsthescoresforeverypossiblevalidendingpoint.
Figure24:Allvalidendingpointsandrespectivescores.
If the user leads the robot to a nonvalid point the score is recorded as the last valid
ending point reached. If the user leads the robot to the level's endpoint, the attempt is
registeredaslevelcompletedanditispossibletoadvancetothenextlevel.
An important user interface change was the red trail's orientation, in landscape
position it was harder to understand the command's flow. For the game to become more
comfortabletheorientationoftheredtrailwasrotatedtoportraitposition.
The last improvement made for the beta version were the obstacles inserted on the
corner edges, to keep the robot within the limits of the physical path. Because the sphero's
movement is not accurate, the "Move Forward" command led the robot out of the path,
leaving the wrong impression of failure most of the times. Figure 25 shows how the second
levelandtheapplicationwereredesignedwithallthechangesdescribedinthissection.
46
Figure25:Level2andapplicationredesign
3.3Theexperiment,testingthegame'sbetaversionwithchildren
In order to understand if the game built for this work achieves its goal of getting
young children interested in programming, first we needed to test the game with potential
users, observe and analyze the gathered data to identify if the game is a good approach for
makingchildrendevelopprogrammingskills.
The roadmap for the tests followed the same as thepilot,howeverextraattentionwas
given to children when they firstinteractedwiththegame.Whenthechildstartedmovingthe
robot around freely, some small tasks were given depending on the place the test was run,
suchas:"Trytoreachthewallwiththerobot",or,"Makeaturnandreachthechair",inorder
to help them figure the commandsoutandhavefewerproblemswhenfacingthegamelevels.
After the free exploration phase, at any level when a lucky guess was suspected by the
researcher, the childwasgivenanewtasktoretrythelevelonareversetrack,toassureitwas
no matter of luck, and thenthechildmovedtothenextlevel.Figure26showsachildplaying
withtherobotatthefreeexplorationphaseoftheexperiment.
47
Figure26:Childplayingfreelywiththerobot
Thechildren'sprofilewassimilartothechildinvolvedinthepilot,theexperimentwas
designed for 3 groups of 3 children with high intimacy with technology.The9childrenwere
put into groups of the same age, between the ages of 4 and6yearsold.Eachtestwasguided
by the researcher, and accompanied by at least one person responsible for the child, both of
them, were able to interact with the child, considering that the researcher sometimes needed
help with the communication. Based on the data collected from the tests, the next sections
explain how each group of children interacted with the game and how was their score
performancethroughthelevels,andpresentacomparisonbetweenthe3groups.
3.3.1The4yearold'sanalysis
The youngest group of participants required a lot more effort than the others.
Fouryearold children are still learning to focus on a specific task, and their short
concentration span is themainchallengefortheinstructororteacher.Althoughthefrustration
level of this age grouprisesmoreeasilythantheolderones,allthesessionsoftheexperiment
lasted1hourinaverage(varyingbetween50and70minutes).
48
Figure27:4yearoldchildplayingthefirstlevel.
Children in thisgroupneededbetween10and15minutestogetusedtothemechanics
of the game, moving the robot freely usingtheapplication.Theytendedtobeanxioustoplay
with the tablet and see the robot's reaction for each attempt Brief demonstrations of how to
use interact with the system helped to reduce the anxiety and better prepared the children to
facethefirstlevel.
Facing the first level was very challenging for all the children of this group. It took
them an average of twenty minutes to solve it, with one exception of a child who took less
than ten minutes, which raised the possibility of a lucky guess. So, he was presented the
reversetrack,andcompletedthelevelwithinanothertenminutes.Figure27showsafouryear
oldplayingthefirstlevel.
Everytime the frustration level rose, children were asked if they still wanted to play,
and no child gave up due to frustration. One of them tried many times to solve the second
level and after almost thirty minutes the test was stopped because it was taking too long.
Although he was a little frustrated with the failed attempts he did not want to stop playing.
This observation, alongwiththeexperiment'saveragedurationmetricandthesuccesstheyall
had on the first level, made us believe that the game is interesting for this group. Fouryear
old children are attracted to play the game and are able to developalgorithmsusingthiskind
oftool.
This group was the most heterogeneous. Only one of the child was able to finish the
three designed levels, one reached the third level, andanotheronewasstoppedonthesecond
49
Chart1:First4yearoldScorexAttempts
any points. Although he was very motivated to complete the game, he was not able to finish
the second level without considerable help of people around. The test was stopped mainly
becauseofthetimeitwastaking,andtheresultsindicatedabadperformance,butitwasmade
clear that the child was able todevelopalgorithmsandprobablywithothersessionshewould
improvehisperformance.
Onthesecondtestofthisgroupthechildtriedaconsiderableamountofdifferentvalid
sets of commands. She had problems onfiguringouthowtocompletethefirstlevel,whichis
observed on Chart 2, as her score oscillates frequently until the completion, to guarantee it
was not a lucky guess, she was asked to do the reverse track similarly as the first test she
concluded both tracks successfully and moved to the second level. She played the second
level with a good performance and was able to reuse part of the first level's solution,
continuously improving the results. At the third level (marked by the third blue dot onChart
2), she was also able to reuse part of the commands, and the score oscillated between
attempts. When she was one command away from completing the third level, the frustration
level rose and she was tired within one hour of test. Herperformancewasconsideredregular
andsheprovedcompletelyabletodevelopalgorithms.
Chart2:Second4yearoldScorexAttempts
51
The thirdchildofthegrouphadthebestperformance,showinganaturalprogramming
ability, within less than 10 minutes playing freely (before the first level), she performed 3
minor tasks moving the robot around. The childcompletedallthethreelevelswithouthaving
a score decrease, as summarized in Chart 3, a rare fact comparing with all the children
involved.Herperformancewasconsideredaboveaverage.
Chart3:Third4yearoldScorexAttempts
This group was very heterogeneous, all the children involved were able to complete
the first level, and the score normally increases over time as observed on Charts 1, 2 and 3.
The fact that all of them affirmed that they liked the game, and would want to playasecond
time, leads us to believe that the game is a good approach to introduce programming to
fouryearoldchildren.
3.3.2The5yearold'sanalysis
The second group finished the test on an similar average time to the first group (one
hour), but as expected their performance was better, probably because children of this age
group tend to focus more on activities in which they are interested. Following the roadmap
theygotusedtothemechanicsplayingwiththerobotfreelyduringapproximatelytenminutes
andthenstartedthefirstlevel.
52
Figure28:5y.ochildcelebratingthecompletionofthesecondlevel.
53
Chart4:First5yearoldScorexAttempts
The second child was very different, had no problems facing the first level, but the
second level was more challenging, as demonstrated on Chart 5, between the second andthe
third blue dot on the horizontalaxishevariedbetween10and20scorepointsforalongtime,
it took more than 30 minutes for him to finish the level reaching 30 points. The difficulties
faced on the second level apparently gave the child expertise to face the third level, as since
thestartofthechallengemarkedonthethirdbluedot,hecompleteditwithafewattempts.
54
Chart5:Second5yearoldScorexAttempts
The third test occurred without any issues, the child performance increased gradually
over each attempt, and no further debugging wasneededexceptforthebeginningofthethird
level marked with the third blue dot on the horizontal axis of Chart 6, when the child
preferred to restart the algorithm fromscratch.Thechildgotverymotivatedonplayingmore,
wanted to continue playingafterthetestwasover,andsimilarlytothefirstchildofthisgroup
askedformorechallenginglevels.
55
Chart6:Third5yearoldScorexAttempts
3.3.3The6yearold'sanalysis
Children of this group were very different than the previous two, more experienced
and intimate with technology, their performance was considerably better. As the first task of
the roadmap describes, they took some time playing with the robot freely. With less than 5
minutes playing around, all of them got used to the mechanics and startedthefirstlevel.The
average time of this group's test was 30 minutes approximately, when the third level was
completed.
Although most of them spent most of the time on the first level, they had no trouble
facing both thefirstandsecondlevel.NormallyinBrazil,atsixyearsoldachildstartstoread
and write, which may enable them to work with more complex applications such as Scratch
for example. The performance and skills the six yearoldsshowedwhenfacingthethirdlevel
was beyond expectations. Figure 29 shows a 6 year old playing the third level. The children
were able to solve puzzles by building algorithms playing the game, but for this group
specifically it may not be the best approachtointroducechildrentoprogramming,as1outof
3 children thought that the game was too simple. It may seem a drawback but actually is a
goodfindingolderchildrenmaydemandhigherchallenges.
56
Figure29:6y.ochildplayingthethirdlevel.
57
Chart7:First6yearoldScorexAttempts
58
Chart8:Second6yearoldScorexAttempts
59
Chart9:Third6yearold.ScorexAttempts
3.3.4Acomparisonbetweenthethreegroups
In general, of the3levels,thefirstonehasadifferentchallenge,whichisbreakingthe
barrierstodevelopingalgorithms.Mostofthechildrenshowedsomedifficultywhenfacingit,
as they were still getting used to the mechanics and how the robot should react to each
command. For thisreason,everychildthatcompletesthefirstlevel,withnodoubtsofalucky
guess, was considered able to develop algorithms, and an approach using the game as a tool
could be a good way todevelopprogrammingskills,aslongasthechildgetsinterestedinthe
game.
Most of the children involvedintheexperimentshowedgreatinterestinthegameand
were able to finish the first level leadingustobelievethatpreschoolerchildrenstartingatthe
ageof4areabletobegindevelopingprogrammingskills.
3.4Chaptersummary
This chapter detailed how the game used was built, and which studies and products
served as references for its main concept.Apilotwasrunatfirsttoidentifythemainflawsof
the prototype, and most of the issues caused by these flaws were solved during the
60
development. Nine children with experience in computer games and technology took part in
the experiment and the research concluded that all of them were able to develop algorithms,
and the performance of each child increased with time. This approach on developing
computational thinking in young children using smart devices focuses on letting children
interact with certain technologies that can be harmful and cause asetofproblemsifthechild
is not well supervisioned, the next chapter presents the risks involved inlettingunsupervised
children play with smart devicesandtheinternet,andalsoprovidessomeinformationonhow
to mitigate the risks allowing parents and teacherstousetechnologytoempowerchildrenthe
thispresentedworkadvocates.
61
4.Riskassessment,andmitigation.
62
economic reasons, letting them with more free time and then more time to spend on smart
devices, consequently, the addictionrateishigheronchildrenfromfamilieswithlessincome.
Younger parents tend to follow the technology tendencies and are more permissive on the
matter oflettingchildrenusethesmartdevices,alsowhenbothparentshaveincomeschildren
are more exposed due to the lack of time of their parents, causing a higher rate of addiction
(PARK,C.&PARK,Y.,2015).
Regarding the child variables, it was noted that age and gender influence the rate of
addiction, the younger the child the higher the probability of addiction due to incomplete
mental development and also boys tend to be more easily addictedduetolackofselfcontrol
and being more easily distracted,moreoverchildrenthatgotokindergartenorpreschoolhave
a lesser probability to become addicted due to the amount of time they spend on school
activities(PARK,C.&PARK,Y.,2015).
The conceptual model (Figure 30) presented by Park, C. & Park, Y. (2014) also
contains some of the consequences of smartphone addiction, children with this kind of
addiction can demonstrate symptoms of depression, emotional instability, anger, lack of
attention and selfcontrol, also can develop visual impairment due to exposure to the lightof
the screens, hearing impairment if earphones are constantly in use, can start to develop
obesityanddiabetesduetothelackofoutdoorsactivities.
Another studymadeinPortugaltriedtocreateaconnectionbetweeninternetaddiction
and loneliness among children andteenagers.Thestudycomprisedmorethan130Portuguese
students between children and teenagers, although manypeoplemaythinkthatlonelinessisa
consequenceofinternetorsmartdevicesaddiction,studieshaveshownthatitisanantecedent
(PONTES,H.,GRIFFITHS,M.,PATRO,I.,2014).
64
Figure30:Conceptualmodelofsmartphoneaddictioninearlychildhood.
Source:PARK&PARK,2014.
Apart from collecting sociodemographic data, this study applied two tests, one to
identify the level of internet addiction and another to identify loneliness of participants, the
data analysis found that a considerably high amount of people from the sample are severely
addicted to internet, approximately 13%, additionally 8.4% of the students were considered
severely lonely which was considered a small percentage. An important finding is that the
students that showed a high level of lonelinessalsopresentedhighlevelofinternetaddiction,
some variables of the study were identified as correlated to internet addiction and loneliness
such as: weekly usage hours, ownership of a smart device, subjective selfperceived
victimisation of bullying or cyberbullying (PONTES, H., GRIFFITHS, M., PATRO, I.,
2014).
According to De Paiva, N. & Costa, J. (2015) smart devices really impact our lives
with many positive and negative aspects, itisimportanttoidentifythesenegativeaspectsand
65
find ways to diminish the side effects because removing such devices from our lives is
probably very difficult at this point. Still according to De Paiva & Costa, opinions from
parents in Brazil about smart devices usage were collected and they concluded that most of
the parents are preoccupied about their children not playing outside of the house, and
developing physical problems such as diabetes and obesity, but according to them the most
problematic situation is the unsupervised usage that can generate aggressiveness and anxiety
duetothelackoflimitsimposedtochildren.
This chapter presented a review of recent studies on the problems caused by
unsupervised usage of smart devices and internet by children and teenagers, letting children
interact with newtechnologieshaverisksandthisreviewwasmadetoassessthiskindofrisk,
and provided ways to mitigate the risks. The next chapter will draw conclusions from the
theoryworked,collecteddataandtheiranalysis.
66
5.Conclusion
This work has shown that, since the production of the personal computer,researchers
have tried to lower the barriers of programming to children by inventing more intuitive
programming languages and platforms where they can interact and develop programming
skills. Many attempts have been made with LOGO language, Lego/LOGO, and in 2007 the
MIT Lifelong Kindergarten developed Scratch, a platform where children are able to build
multimedia presentations and games using a language inspired on the connections of Lego
brickswheretheycoulduseprogrammingblockstobuildalgorithms.
To understand how programming is being exposed to children nowadays, it is
importanttonotonlyconsidertherecentapproaches,butalso,verifyhowtherecentplatforms
were built and where they came from. It was presented an evolution since the Lego
programmable brick and how the approaches were refined and recreated into new ones,until
recently, it was made available for young children a complex platform called ScratchJr that
empowers teachers and parents around the world, enabling them to introduce youngchildren
importantconceptslikeprogrammingandanalogyalsostimulatingtheirimagination.
A considerable number of different approaches involving lowering the barriers to
programming, including programs, platforms and games, were developed until now and to
better understand each approach, a summarized version of the taxonomy created in 2005 by
Kelleher and Pausch was presented in this work. The work of Kelleher and Pausch
documented more than 50 approaches and classified them into categories and subcategories,
this work also included some information about some approaches that were created after
2005.
Most of these approaches are focused on certain age ranges and normally demands
that the child are able to read which limitates the starting age to six years old and following
the same principle described by Papert in 1980 that since the LOGO creation, everyone
involved in teaching programming to children should try to lower the barriers to knowledge.
This work affirms that pre scholar children are able to start developing programmings skills
and tested the hypothesis that "programming games enable children to develop and improve
theirprogrammingskills".
Based on popular programming games, such as LightBot, and emerging new
approaches, such as primo.io initiative, a game was presented on the datacollectionphaseof
67
5.1Futurework
This work stated that preschoolers are able to develop algorithms,andtesteditwith9
children from 3 different ages starting from 4 years old in the same city in Brazil, apossible
68
extent for it would be to rerun the test considering more children, from different cities,
possibly from different countries,tomakeitmorestatisticallyrelevant.Furthermore,adeeper
understanding of how children interact with programming could be achieved by collecting
sociodemographic data, the performance could be compared by other variables than justage,
for example, gender could affect the results in some way that only considering this variable
whileanalysingthedatawouldbepossibletodetermine.
Another interesting possible extent of the research would be to test even younger
children, and verify if 3 years old children are also able to develop algorithms, and start
developing such skill. It is also important to verify if the game created is interesting to
children older than 6 years old, if so, it can be used to introduce them to programming, and
then, introduce them to a more complex environment like Scratch, for example, moreover,
tests with two groups canbemadetounderstandifchildrenthatplayedthegamecanbemore
productiveonsuchenvironment.
Considering that, the game presented on this work can be improved to include other
programming concepts, such as procedure calls and recursion, another version of the
application could be developed to include more boxes with trails to be used as procedures
being called other boxes, or the same box to create a recursion.Enablingprocedurecallsand
recursion increases the complexity of the levels that could be built for the game and would
better prepare the children for higher challenges like robotics classes, or Scratch classes,
Figure 31 represents a prototype of a possible version of the application including this
features.
69
Figure31:Newinterfaceprototypeforthetabletapplication.
A possibility that could also increase the complexity of the designed levels would be
to use one feature available on Sphero's development kit,thatistochangeitscolor,obstacles
considering color change could be placed on new levels to become more challenging, future
work could compare qualitatively the difference between versions of the game to identify if
children are more interested on a more complex game, and more features increasing the
difficulty of the game could help to develop programming skills even more and it could be
furtherinvestigatedinfuturestudies.
70
References
Alice,http://www.alice.orgaccessedonmay,3rd2014.
Bennett,S.,Maton,K.andKervin,L.(2008),Thedigitalnativesdebate:Acriticalreviewofthe
evidence.BritishJournalofEducationalTechnology,39:775786.doi:
10.1111/j.14678535.2007.00793.x
Bennett,S.(2012).Digitalnatives.InZ.Yan(Eds.),EncyclopediaofCyberBehavior:Volume1(pp.
212219).UnitedStates:IGIGlobal.
Clements,D.H.,&Gullo,D.F.(1984).Effectsofcomputerprogrammingonyoungchildrens
cognition.JournalofEducationalPsychology,76(6),10511058.
Costa,ArthurL.,DevelopingMinds:ProgramsforTeachingThinking.RevisedEdition,Volume2.
ASCD,1991.
DePaiva,L.etal.UmaExperinciaPilotodeIntegraoCurriculardoRaciocnioComputacionalna
EducaoBsica.In:AnaisdosWorkshopsdoCongressoBrasileirodeInformticanaEducao.
2015.p.1300.
DePaiva,N.Costa,J.AInflunciadatecnologianainfncia:Desenvolvimentoouameaa?.(2015)
Availableathttp://www.psicologia.pt/artigos/textos/A0839.pdfaccessedonNovember4th,2015
Fariasetal.PensamentoComputacionalemSaladeAula:Desafios,PossibilidadeseaFormao
Docente.In:AnaisdosWorkshopsdoCongressoBrasileirodeInformticanaEducao.2015.p.
1226.
Fincheretal.Comparingalice,greenfoot&scratch.In:Proceedingsofthe41stACMtechnical
symposiumonComputerscienceeducation.ACM,2010.p.192193.
Flanneryetal.DesigningScratchJr:Supportforearlychildhoodlearningthroughcomputer
programming.In:Proceedingsofthe12thInternationalConferenceonInteractionDesignand
Children.ACM,2013.p.110.
Holmquist,S."Amulticasestudyofstudentinteractionswitheducationalrobotsandimpacton
Science,Technology,Engineering,andMath(STEM)learningandattitudes"(2014).GraduateTheses
andDissertations.http://scholarcommons.usf.edu/etd/5043
Horn&Jacob,(2007).DesigningTangibleProgrammingLanguagesforClassroomUse.Proceedings
ofthe1stinternationalconferenceonTangibleandembeddedinteraction,February1517,2007,
BatonRouge,Louisiana
Hornetal,(2009).ComparingtheUseofTangibleandGraphicalProgrammingLanguagesfor
InformalScienceEducation,ProceedingsoftheSIGCHIConferenceonHumanFactorsinComputing
Systems,April0409,2009,Boston,MA,USA.
Kelleher,C.&Pausch,R.Loweringthebarrierstoprogramming:Ataxonomyofprogramming
environmentsandlanguagesfornoviceprogrammers.ACMComputingSurveys(CSUR),v.37,n.
2,p.83137,2005.
71
Lee,JeongMinEDUCATION,EarlyChildhood.AStudyonSmartPhoneUseConditionofInfants
andToddlers.development,v.7,n.6,2013.
Mattos,S.etal.IntroduoRobticaeEstmuloLgicadeProgramaonoEnsinoBsico
UtilizandooKitEducativoLEGOMindstorms.In:AnaisdosWorkshopsdoCongressoBrasileiro
deInformticanaEducao.2015.p.1418.
Mitchel,Martin,Fred,andSilverman,Brian(1995)BuildingandLearningWithProgrammable
Bricks.LogoUpdateVol.3No.3
O'Connor,J.J.andRobertsonE.F.,AbuJa'farMuhammadibnMusaAlKhwarizmi1999.
Availableathttp://wwwhistory.mcs.stand.ac.uk/Biographies/AlKhwarizmi.htmlaccessedonMay
19th,2014.
Papert,S.Mindstorms:Children,Computers,andPowerfulIdeas.Secondedition,BasicBooks.1980.
Park,C.Park,Y.Theconceptualmodelonsmartphoneaddictionamongearlychildhood.IntJSoc
SciHumanit,v.4,p.147150,2014.
Pontes,HalleyMiguelGriffiths,M.Patro,I.Internetaddictionandlonelinessamongchildren
andadolescentsintheeducationsetting:anempiricalpilotstudy.Aloma:RevistadePsicologia,
Cinciesdel'Educaciidel'Esport,v.32,n.1,2014.
Prensky,M.2001a.Digitalnatives,digitalimmigrants.OntheHorizon9(5):16.
http://www.marcprensky.com/writing/Prensky%20%20Digital%20Natives,%20Digital%20Immigrant
s%20%20Part1.pdf(accessedMay12,2014).Archivedathttp://www.webcitation.org/5eBDYI5Uw.
Resnick,M.etal.Digitalmanipulatives:newtoystothinkwith.In:ProceedingsoftheSIGCHI
conferenceonHumanfactorsincomputingsystems.ACMPress/AddisonWesleyPublishingCo.,
1998.p.281287.
Resnick,M.etal.Scratch:programmingforall.CommunicationsoftheACM,[S.l.],v.52,n.11,
p.6067,2009.
Resnick,M.,Martin,F.,Sargent,R.andSilverman,B.(1996).ProgrammableBricks:Toysto
ThinkWith.IBMSystemsJournal,vol.35,no.34,pp.443452.Sargent,Randy,Resnick,
Resnick,M.Ocko,S.Papert,S.LEGO,Logo,andDesign.Children'sEnvironment.Q.5,4(1988).
Scratch,http://scratch.mit.edu/accessedonmay,3rd2014.
Suzuki,H.&Kato,H.Interactionlevelsupportforcollaborativelearning:AlgoBlockanopen
programminglanguage.In:ThefirstinternationalconferenceonComputersupportforcollaborative
learning.L.ErlbaumAssociatesInc.,1995.p.349355.
Tempel,M.Logo:alanguageforallages.ComputerScienceK8:BuildingaStrongFoundation,
[S.l.],p.2223,2012.
Thomaz,S.,AglaeA.,Fernandes,C.,Pitta,R.,Azevedo,S.Burlamaqui,A.,Silva,A.,Goncalves
L.M.G.(2009)RoboEduc:Apedagogicaltooltosupporteducationalrobotics.FIE09Proceedingsof
72
the39thIEEEInternationalConferenceonFrontiersinEducationConference.779784.IEEEPress,
Piscataway,N.J
Wagner,T.TheGlobalAchievementGap:WhyEvenOurBestSchoolsDon'tTeachtheNew
SurvivalSkillsOurChildrenNeedAndWhatWeCanDoAboutIt.BasicSchools,2008.
Wing,JeannetteM.Computationalthinking.CommunicationsoftheACM,v.49,n.3,p.3335,
2006.
Wyeth,P.&Purchase,H.(2002)TangibleProgrammingelementsforyoungchildren.In:Extended
abstractsfromtheproceedingsoftheCHI2002conferenceonhumanfactorsincomputingsystems,
Minneapolis,Minnesota,April2002.ACMPress,NewYork,pp774775.DOI10.1145/
506443.506591
Wyeth,P.&Wyeth,G.ElectronicBlocks:TangibleProgrammingElementsforPreschoolers.In
Proc.Interact,IFIP(2001),496503.
Zach,R.Hilbert'sProgram,TheStanfordEncyclopediaofPhilosophy(Spring2009
Edition),EdwardN.Zalta(ed.),availableat
http://plato.stanford.edu/archives/spr2009/entries/hilbertprogramaccessedonMay19th,2014.
Zuckerman,O.Arida,S.Resnick,M.(2005)Extendingtangibleinterfacesforeducation:digital
montessoriinspiredmanipulatives.In:ProceedingsofCHI05.ACMPress,NewYork,pp859868
73