Bluethinking, A Programming Tool For The Development of Executive Functions at Childhood
Bluethinking, A Programming Tool For The Development of Executive Functions at Childhood
education. BlueThinking provides a developmentally appro- Autism Spectrum Disorder. In these studies, different pro-
priate interface and methods of interaction and provides gramming tools available in the market were evaluated to
embedded opportunities to practice math, literary content extract the most advantageous characteristics of each of them
and other cognitive skills. This paper describes BlueThinking in order to include them in our tool. The main features ex-
and the preliminary findings from research on early childhood tracted were the following:
children’s use of it. ∙ The user interface must not have a large cognitive
load, allowing children to concentrate on the task to
be performed and not have distractors that prevent
2 RELATED WORK such concentration. In addition, it must follow a logical
In recent years, several innovative schemes to teach program- order regarding the steps to be carried out: from top
ming concepts to students have begun to make their way to bottom and from left to right.
into the mainstream. Young children are intrigued by creat- ∙ Since most tasks require spatial movements, the sce-
ing behaviors for animated character but challenged by age nario must present a grid that allows to count, clearly,
inappropriate tools. Several strategies have been attempted the number of necessary movements to realize. To fa-
to resolve this disparity. Adults may sit with young children cilitate counting, the characters must be embedded in
and give click-by-click instructions, although this scenario a square inside that grid to know exactly the starting
may pose both expected and counter-intuitive challenges for point.
children’s learning [12]. Simpler and more structured pro- ∙ Visual and auditory reinforcers are required to provide
gramming languages, such as ROBOLAB’s PILOT level [13] the help needed to each student.
aim to reduce difficult concepts for beginners. ∙ The user interface must include a place where you
We can find in the literature other graphical programming can set out the statement of the task to be performed.
languages aimed towards children such as Kodu [14], Etoys This statement should allow different formats (text or
[15], and Storytelling Alice [16], that bring the concepts of pictograms).
computer programming to young people in more accessible All these features were included in the BlueThinking appli-
ways; however, they are designed for children in middle- cation, an inclusive programming tool based on ScratchJr
to-later elementary school grades and above [17]. One tool [19] where the cognitive load of the interface is reduced so
which is designed for kindergarten-aged children is CHERP that users of early ages and special needs can use it. Fig-
[3]. CHERP is a graphical-tangible hybrid programming lan- ure 1 presents a screenshot of an activity in BlueThinking
guage in which the child is allowed to transition back and application.
forth between the screen-based (graphical) and tangible (phys-
ical, wooden, block-based) programming interfaces for robots.
Cubetto [18] is a fully tangible tool composed by a robot and
a tablet where kindergarten-aged children must place wooden
pieces, so the robot can move. Osmo coding [19] is another
tool which provides a graphical-tangible interface in which
the child can create sequences using the tangible blocks pro-
vided which helps teaching logic skills and problem-solving
abilities [20].
In the era of the irruption of programming tools for children
the most popular one seems to be Scratch [17], a cloud-based
and block-based programming environment. Another tool
similar to Scratch is Blockly [21], which allows program-
ming through visual blocks and it allows programming in
more advanced programming languages such as Python and
Javascript. Although the age for which these tools are in-
Figure 1: BlueThinking help interface.
tended is 8 years or older, a spin-off of Scratch was developed,
ScratchJr [22]. With ScrathJr, younger learners drags and
drops blocks to create digital stories. Research has found that As shown in the figure above, the user interface has several
young learners (5 to 6 years old) used a range of general com- elements that are detailed below:
putational and higher-order thinking skills when engaging in ∙ 1,17: These buttons allow the user to go back to main
coding tasks using ScratchJr [23]. menu and to enter the configuration menu.
∙ 2: This is the main stage of the application. As we
can see, it consists of a grid of 4 * 8 squares in which
3 BLUETHINKING characters and/or objects can be placed and moved.
With the aim of developing an inclusive programming tool, ∙ 3,4,5: The buttons compose the menu that allows you
preliminary studies were carried out in early childhood, pri- to add different elements to the task or project. In
mary and special needs education, specifically people with the first option you can find all the different existing
BlueThinking INTERACCIÓN 2019, June, 2019, Donostia, Gipuzkoa, Spain
tasks of the project, as well as being able to add new After finishing the session, we collected their impressions
tasks and move between them. If we want to add a of the application. Social–emotional competencies are identi-
new background to the main stage, we should go to the fied as among the most important abilities supporting early
button number 4. This button also allows editing the school success and the growth of academic competence during
existing backgrounds. Finally, menu number 5 allows elementary school [24]. Therefore, we provided a list with
the user to add different characters and items into the 10 words, 5 negative and 5 positive. We decided to follow
stage. As it happens with the backgrounds, the user this methodology to get the impressions of users because
can also edit characters and items. of their characteristics. At this age, children begin to read
∙ 6: In this section the user can place a statement of and therefore reading comprehension is limited although they
the activity to be solved. The user can create textual can read and understand simple words. The data gathered is
statements or form a statement through pictograms. showed in the following section.
This latter option is especially useful if children cannot
read or if they are children with special educational 5 RESULTS
needs. First of all, we observe that some 5 years old participants had
∙ 7: In this panel the user can find all the categories of not developed their literacy skills. Thanks to the audio and
existing programming blocks in the application. textual cues used throughout the application, the participants
∙ 8: Once the user press one category of the panel, the were able to discover the different functionalities that they
blocks associated to that category appear. In order to needed to use to complete the proposed tasks.
use them, the user has to drag and drop the block into Let’s make a brief analysis about most significant negative
the white area below 7 and 8. adjectives shown figure 2. The negative adjective that was
∙ 9: Redo and undo buttons. most mentioned by the participants was slow. This adjective
∙ 10: It is the current active character. Once the user referred to the speed of the character. By default, the charac-
presses a character in the main stage, the user can see ter moves slowly so that his movements can be appreciated.
the different blocks attached to it. Each character or However, the application has a configuration option that
item has associated its programming sequence (if it allows the user to customize this speed, so we believe this
exists). is not in fact a troublesome issue. Some participants stated
∙ 11: Assigned programming blocks the currently active that the application was strange, since BlueThinking is a new
character has. User can remove blocks from this area if application and they are not used to work with it.
she drags and drops over the area 8 or into 16, the bin.
∙ 12: Once the user presses the play button, all the
characters will perform the actions attached to them.
∙ 13,14,15: Different options that can be added to the
scene. With button 13 the user can add texts into the
main stage. With button 14, the user can reset the
characters position to where it was before hitting the
play button. Finally, the user can change the colour of
the grid lines pressing button 15, so they can be visible
regardless of which background is used.
∙ 16: A bin to which the user must drag and drop the
blocks to remove them. Also, as we said in number 11,
we can drop into 8 to remove them.