<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Sustaining Cultures of Participation by Fostering Computational Thinking Skills through Game-Play</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Daniela Fogli, Federico Danesi</string-name>
          <email>daniela.fogli@unibs.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alessio Malizia, Tommaso Turchi, David Bell</string-name>
          <email>alessio.malizia@brunel.ac.uk</email>
          <email>david.bell@brunel.ac.uk</email>
          <email>tommaso.turchi@brunel.ac.uk</email>
          <email>{alessio.malizia, tommaso.turchi, david.bell}@brunel.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Brunel University</institution>
          ,
          <addr-line>London</addr-line>
          ,
          <country country="UK">UK</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Brescia</institution>
          ,
          <addr-line>Brescia</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The adoption of a meta-design approach to system development opens up opportunities for transforming consumer cultures to cultures of participation. To this end, meta-design must create the conditions for such participation by supporting end users to appropriate the design skills necessary for system evolution, especially those related to Computational Thinking (CT), in new and engaging modalities. In this paper, we propose a novel approach to fostering CT skills that combines Game-Play learning with Tangible User Interfaces and Virtual Reality (VR). In the resulting system, called TAPASPlay, two players act as alchemists forging swords and shields to fight each other. They build them through a puzzle-based interaction with a tabletop interface, using smartphones as tangible objects. Finally, the players can enjoy the battle in VR using Google Cardboards. In this way, players can develop analysis, abstraction and problem solving abilities, i.e. suitable CT skills for meta-design and supporting cultures of participation.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>INTRODUCTION
User-centered design and participatory design are usually
advocated as successful approaches to designing systems
that properly fit with users' work practices, preferences and
needs. Both approaches foresee user involvement at design
time to inform designers about system functional and
nonfunctional requirements. Such an involvement may be
regarded as a one-way communication (from users to
designers) in case of user-centered design, where users are
GHITALY17: 1st Workshop on Games-Human Interaction, April 18th, 2017,
Cagliari, Italy.</p>
      <p>
        Copyright © 2017 for the individual papers by the papers' authors. Copying
permitted for private and academic purposes. This volume is published and
copyrighted by its editors.
for example observed or interviewed; or may become a
two-way communication in participatory design, where
users are given a voice and can actively participate with
their ideas in design decisions. In addition, nowadays there
is a growing request of hardware and software systems that
can be easily tailored and extended by end users at the use
time. This is not only true for traditional information
systems [7] or spreadsheet-based applications [2], but also
personal devices [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ][
        <xref ref-type="bibr" rid="ref10">11</xref>
        ] and environments (the so-called
"smart home") [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ][
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>
        Meta-design has been proposed as a novel approach to
designing open systems that can progressively evolve in the
hands of end users, by means of end-user development
(EUD) methods and techniques [
        <xref ref-type="bibr" rid="ref9">10</xref>
        ]. In this way,
metadesign aims at sustaining a cultural transformation, by
supporting end users to become co-designers and end-user
developers [9]. On the one hand, such a progressive
transformation from consumer cultures to cultures of
participation [8] is facilitated by current technological
innovations, from Web 2.0, to the Internet of Things, to
tangible interactive spaces [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ][
        <xref ref-type="bibr" rid="ref20">21</xref>
        ]; on the other hand,
however, not all end users are ready today for such a
transformation or willing to acquire the new skills
necessary for an effective participation. To this end,
metadesign is also concerned with the creation of the social
conditions for end-user participation at design and use time,
by sustaining end users to appropriate the design culture
and the technical notions necessary for system evolution
[
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. To create such social conditions, meta-design should
transfer to the end users those Computational Thinking
(CT) skills [
        <xref ref-type="bibr" rid="ref21">22</xref>
        ] that can be useful to sustain cultures of
participation.
      </p>
      <p>
        CT skills are typical of programmers and software
designers and, even though a unique definition does not yet
exist, we can sum up most of literature attempts to define
CT skills in a set comprising abstraction, algorithmic
thinking, decomposition, and problem solving. Mastering
those skills lowers the learning barrier when approaching a
programming activity. For this reason, traditional
approaches to teaching CT skills involve visual
programming languages, such as Scratch [
        <xref ref-type="bibr" rid="ref17">18</xref>
        ], or game
design activities, such as AgentSheets [
        <xref ref-type="bibr" rid="ref15">16</xref>
        ], properly
oriented to teach the concepts underlying imperative
programming (symbolic representation, conditionals, loops,
operators, etc.). These “making” activities [
        <xref ref-type="bibr" rid="ref13">14</xref>
        ] encourage
to cohesively combine multiple ideas into an organized
process to produce an artifact that solves problems. Indeed,
CT skills go beyond programming constructs
("conceptualizing, not programming" [
        <xref ref-type="bibr" rid="ref21">22</xref>
        ]): in her original
definition, Wing assumes a higher-level perspective,
arguing that CT skills create a new mindset oriented
towards problem solving, thanks to the ability of thinking at
different levels of abstraction and at decomposing problems
into sub-problems [
        <xref ref-type="bibr" rid="ref21">22</xref>
        ]. This can bring several benefits in
everyday life, including, in our opinion, a more effective
participation by end users in the design and development of
their systems both at design time and use time.
      </p>
      <p>
        Starting from Wing’s ideas, Repenning and colleagues
modeled computational thinking as an iterative process
structured in three stages [
        <xref ref-type="bibr" rid="ref16">17</xref>
        ]: 1) problem formulation,
namely a verbal or diagrammatic conceptualization of the
problem, where abstraction plays a fundamental role; 2)
solution expression, when the solution is formulated in a
way that can be understood by a computer (the most
common, but not unique, tool used in this stage is
programming); 3) execution and evaluation, i.e. those
activities allowing one to visualize and assess the outcome
of the other two stages.
      </p>
      <p>
        In this paper, we describe TAPASPlay, an extension of
TAPAS (TAngible Programmable Augmented Surface)
[
        <xref ref-type="bibr" rid="ref19">20</xref>
        ][
        <xref ref-type="bibr" rid="ref20">21</xref>
        ], specifically designed to foster CT skills through a
game-based learning approach, by favoring the CT iterative
process described in [
        <xref ref-type="bibr" rid="ref16">17</xref>
        ]. TAPASPlay is based on the
alchemist’ metaphor: two players compete to be the best
alchemist and, by applying transformations on metals, they
forge swords and shields to fight each other. Like TAPAS,
TAPASPlay adopts a puzzle-based interaction with a
tabletop surface, where a smartphone plays the role of
tangible object used for dragging and dropping digital
objects that will make up the swords. The final battle is
eventually enjoyed in Virtual Reality (VR) by wearing
Google cardboards.
      </p>
      <p>
        TAPASPlay has been designed to help bridging the gap
between the end user and the designer roles. Ideally, in the
meta-design discourse, the user would be able to grasp
different aspects of the system (from features, to standards,
to usability issues) and actively contribute to the design
itself. Unfortunately, there are some language and
conceptual barriers that prevent the end-user
communication with technologists (i.e. software engineers).
Understanding an algorithmic solution to a problem and
thus being able to participate in the selection of the right
solution by helping modeling the problem is a very relevant
activity in a meta-design approach, but in our opinion
requires exactly those CT skills mentioned above.
Furthermore, our everyday life depends more and more on
algorithms [
        <xref ref-type="bibr" rid="ref18">19</xref>
        ]: think about how many times a day we
interact with algorithms, from automatic checkouts in
supermarkets and e-banking to booking a flight online (and
during that same flight as well: in fact, 95% of the whole
journey is flown by an autopilot running an algorithm). By
acquiring CT skills the end user would be able to
understand, participate and trust algorithmic solutions and
thus play a much relevant active role in the meta-design
discourse.
      </p>
      <p>The paper is organized as follows: the following section
contextualizes and compares the approach presented here
with recent literature work; then we describe TAPASPlay
and the phases of the gameplay; finally, the last section
discusses the main features of the system and draws some
conclusions.</p>
      <p>
        GAME-BASED LEARNING
Digital games proved attractive and engaging for all groups
of people and therefore, Game-Based Learning (GBL) has
been proposed as one pedagogical framework for
developing CT skills [
        <xref ref-type="bibr" rid="ref11">12</xref>
        ]. In order to help acquiring CT
skills two main approaches have been introduced in GBL:
learning through designing games and learning through
game-play. Whilst learning by designing games has been
studied quite extensively (e.g. Scratch, Alice and
AgentSheets), the game-play approach is relatively new,
especially in light of employing it to improve CT skills.
As an example, Program Your Robot [
        <xref ref-type="bibr" rid="ref12">13</xref>
        ] is a recent game
prototype developed to support players in practicing the
five core skills that the authors identified as fundamental
for computational thinking, namely problem solving,
building algorithms, debugging, simulation and socializing.
It is a puzzle solving game in which the player has to assist
a robot to reach a certain point on a grid. The robot will
follow very simple instructions given in the form of an
algorithm, while the score depends on conditions, for
example if two functions have been declared before being
called in the algorithm. It differs from the software
applications for game design mentioned before, since those
ones can be deemed programming languages to all effects,
while Program Your Robot is conceived as a serious game.
But above all, tools like Scratch were designed in order to
teach the basics of programming and to show how fun it
can be. Instead, Kazimoglu and his colleagues [
        <xref ref-type="bibr" rid="ref12">13</xref>
        ] were
moved by the goal of creating a game that could explicitly
foster CT skills.
      </p>
      <p>
        CTArcade [
        <xref ref-type="bibr" rid="ref14">15</xref>
        ] is another serious game designed with the
target of boosting computational thinking in players by
letting them formalize their tacit knowledge and make a
step towards abstraction. In CTArcade users have to
implement a set of rules that are observed by a character
while playing Tic-Tac-Toe. Making these rules explicit is
considered a very important process, because people often
apply them in a natural, perhaps unconscious way and
normally there is neither occasion nor reason to transform
this knowledge into abstract instructions.
      </p>
      <p>
        These systems use a traditional interaction style based on
keyboard and mouse; on the contrary, even though
TAPASPlay shares with them the same goal, that is
fostering CT skills through a game-play approach, it
leverages on an interaction style that relies on the use of
tangible objects and virtual reality. TAPASPlay fits also
within the realm of Constructionist Video Games [
        <xref ref-type="bibr" rid="ref24">25</xref>
        ],
namely designed computational environments in which
players construct personally meaningful artifacts to
overcome artificial conflicts or obstacles resulting in
quantifiable outcomes.
      </p>
      <p>
        TAPASPLAY
The novelty of TAPASPlay is to combine game-play with
tangible user interfaces and Virtual Reality to teach CT
skills. The game is intended for an audience with little or no
experience in programming, which is trained in such
computational abilities to become able to participate in
system design and end-user development activities.
TAPASPlay has been developed starting from TAPAS [
        <xref ref-type="bibr" rid="ref20">21</xref>
        ],
an End-User Programming (EUP) platform for pervasive
display repurposing in the wild. Therefore, as for TAPAS
the interaction with TAPASPlay requires a pervasive
display or a tabletop surface, an RGB camera and a
smartphone. The smartphone is used both as a computing
device and as a tangible object, and its movements on the
display or surface are tracked by the RGB camera that
locates the position of a fiducial marker displayed on the
phone screen and uses it as reference point. TAPASPlay has
been implemented as a web application that is projected on
the pervasive display or tabletop surface and is able to
interact with the players’ smartphones. Differently from
TAPAS, TAPASPlay can be regarded as a constructionist
video game aimed at satisfying the following requirements:
•
•
•
      </p>
      <p>It must provide both an entertaining and an educational
experience. The latter has the goal of fostering
Computational Thinking skills, while the use of Virtual
Reality should boost the players’ engagement.</p>
      <p>The game must feature a metaphor suitable to a VR
representation, which can be visualized by wearing
affordable goggles (e.g. Cardboards by Google).
The interaction with the game should be based on a
puzzle metaphor, like the original TAPAS system. This
means that TAPASPlay has to communicate the
existence of constraints and to support the gameplay
through puzzle pieces and their shapes, aiding users
whilst giving constraints in their selection process.
TAPASPlay is thus a game to be played in a player versus
player modality. Players compete to be the best alchemist
forging three swords and three shields, made of three
different metals. The game features three phases:
1. defining the offensive strategies, by means of forging
swords;
2. defining the defensive strategies, by means of forging
shields;
3. visualizing the representation of a battle in a VR
headset.</p>
      <p>Forging swords
During the first phase, each half of the tabletop screen is
available for a player to define three offensive strategies,
which will be visualized as three swords. In order to
accomplish that, players have to attach transformations,
represented as pieces of a puzzle, to a halo surrounding the
smartphone of the user on the main display. The halo, with
its three hilts, follows the movement of the dragged
smartphone and, when a collision with a puzzle piece is
detected, such piece is attached to the vertically oriented
hilt under some given conditions. The three swords are
defined one at a time. For example, in Figure 1, each player
is creating his/her first sword.</p>
      <p>Each strategy is a sequence of transformations taken from a
randomly generated set shown on the main display (Fig. 2).</p>
      <p>A hilt attached to the main halo surrounding the player’s
smartphone represents the start of a sequence (Fig. 3(a)),
while the final piece has a shape that resembles the tip of a
sword (Fig. 3(b)).
(a)
(b)</p>
      <p>Each sword is made of a different type of metal, determined
by the shape of the final puzzle piece (e.g., in Fig. 3(b) the
shape of the final piece is triangular). Every puzzle piece
has an input and an output shape. There are three shapes in
total, round, square and triangular, which in turn
correspond to three types of metal, namely bronze, iron and
steel. So, if a puzzle piece has a round input shape and a
triangular output shape as in Fig. 4(a), it is equivalent to a
transformation that turns bronze into steel.</p>
      <p>The aim of this first phase is to maximize the force points
of each sword, which can be earned by attaching
transformations to the sequence. However, every
transformation consumes an amount of energy points. More
precisely, a transformation is a tuple of four values: 1) an
input shape, 2) an output shape, 3) an amount of energy
points, displayed on the transformation (left half in Fig.
4(a)), and 4) the force points gained, displayed on the
transformation as well (right half in Fig. 4(a)).</p>
      <p>In order to apply a transformation at a certain stage of the
strategy, two conditions need to be fulfilled: 1) the input
shape of the transformation is the same as the output shape
of the last transformation attached to the sequence (or, if the
transformation applied is the first of the sequence, the input
shape has to be the same as the output shape of the initial
state); 2) the alchemist must have an amount of energy
points greater or equal than the one showed on the
transformation. Once a transformation is applied (supported
by a "magnetic effect" on the puzzle piece provided by the
system), the energy points of the alchemist are decreased by
the energy points of the transformation, while the force
points of the strategy can be increased, decreased or
multiplied, depending on the operation suggested by the
transformation.</p>
      <p>Players can see a feedback of their operation on their
smartphone, since force and energy points presented on
their screen are updated according to the values displayed
on the transformation. See for example Fig. 4(b), where the
correspondence between swords and values displayed on
the smartphone is given by the cue balls matching the gems
of the hilts showed on the halo.</p>
      <p>The initial state of each sword consists of an output shape
attached to a hilt on the halo, an amount of force points, and
an amount of energy points. The final state is reached when
the player is satisfied with its sequence of transformations
and decides to – and can – attach the final piece to the
sword. This is a special transformation that does not modify
force nor energy points, but only suggests the final
constraint on the sequence - Fig. 3(b).</p>
      <p>(a)
(b))</p>
      <p>Forging shields
The defensive strategy consists of allocating an amount of
defense points into three shields, each one corresponding to
a different metal just like the swords, through an interface
displayed on the smartphone. The choice should be based
on a couple of considerations: how the player guesses the
opponent distributed force points on the different swords
and the transformations chosen for building her/his own
swords. For instance, if a player struggled to compose the
strategy for the bronze sword, then he/she might consider
allocating most of defense points into the bronze shield, in
order to counterpoise her/his weak offensive strategy.
Enjoying the battle in VR
When both the previous game phases terminate, an Android
application showing the resulting Virtual Reality video
becomes available from the server. By receiving the score
of the game from the web application, the server provides
each player with a different video to be played. For
instance, if Player 1, who used the halo with blue hilts,
managed to reach the highest score, the video will show a
knight wearing a blue armor defeating the opponent dressed
in red; otherwise a video with reversed roles will be played.
In order to correctly visualize the content of the app, both
players are asked to wear goggles as Google Cardboard.
The VR video shows two knights armed with sword and
shield. At the beginning, a button containing the text “Start”
needs to be selected in order to play the animation. A
pointer placed at the center of the user’s sight suggests that,
to push the button, it is required to gaze at it. After having
pressed the button, the two knights approach the center of
the scene and, when they are close enough, they start
dueling. They exchange a few hits for a little while, then the
knight on the left takes a few steps back, runs toward the
opponent and launches the decisive blow. The wounded
knight falls on the ground and, while the winner cheers, a
text appears on the background, confirming which player
won (Fig. 5).</p>
      <p>
        DISCUSSION AND CONCLUSION
The growing interest in Computational Thinking is also
witnessed by very recent literature [
        <xref ref-type="bibr" rid="ref22">23</xref>
        ], which describes
how CT is becoming more and more important in student
and teacher education. In this paper, we suggest that CT
skills are fundamental to sustain cultures of participation and
allow end users to collaborate to system design and
evolution at use time. For this reason, contrarily to other
block-based approaches, in TAPASPlay blocks do not
represent programming statements (like for example, the
"ifthen" block in Scratch) but remain at a higher level of
abstraction, to promote problem decomposition abilities
rather then programming ones.
      </p>
      <p>
        Like TAPAS, TAPASPlay considers tangible user interfaces
and physical object manipulation as fundamental tools to
make user activities more engaging. Indeed, in a study with
children aged 5-9, it has been demonstrated that tangible
programming has the potential to help children cultivate
skills such as abstraction and problem decomposition [
        <xref ref-type="bibr" rid="ref23">24</xref>
        ].
Similarly, we would like to demonstrate in the future that
end users can more easily acquire CT skills through tangible
interaction, and thus become proficient in end-user
development activities. In addition, TAPASPlay includes
Game-Based Learning to make the experience engaging and
social. In particular, we would like to contribute to the recent
research trend that explores learning through game play
[
        <xref ref-type="bibr" rid="ref12">13</xref>
        ], instead of learning through designing systems, as a
new pedagogical approach to fostering CT skills.
In TAPAS a challenge was observed concerning the duality
of composing and executing workflows, both requiring the
use of tangible interaction through smartphone assuming
two different meanings, as tangible object and as source of
data [
        <xref ref-type="bibr" rid="ref20">21</xref>
        ]. On the contrary, TAPASPlay detaches
composition from execution by offering two different
interaction styles and tools: puzzle-based interaction with a
display/surface where a smartphone is used for composing
the strategy (problem solving); whilst, VR is adopted for
checking solution execution. This mechanism fosters the
design-debug-run stages, three key aspects of Computational
Thinking [
        <xref ref-type="bibr" rid="ref12">13</xref>
        ], or in other terms, the process of problem
formulation-solution expression-execution and evaluation
[
        <xref ref-type="bibr" rid="ref16">17</xref>
        ].
      </p>
      <p>
        Analysis, abstraction, decomposition, and automation all
come into this game-play. While automation is supported by
VR, analysis, abstraction and problem decomposition are
types of reasoning that players are supposed to apply when
trying to maximize the force points, under the constraints
represented by shapes and limited energy points. As a matter
of fact, the choice of displaying all transformations together
at the start of the game makes deliberately complex for the
player to formulate a straightforward solution. On the other
hand, if the player is “lazy” and does not want to apply a
methodic decomposition process, but merely tries to satisfy
the constraints, a solution would be reached, but chances
that it is a good one are quite low, in terms of force points.
Therefore, the player would try to “fix it” by analyzing it
and identifying the weakest subsequence of transformations.
Hence, the solution would be reformulated by replacing the
poor part with a different sequence of pieces. This process
might be repeated several times, inducing the player to
iteratively apply the model of computational thinking
process proposed in [
        <xref ref-type="bibr" rid="ref16">17</xref>
        ].
      </p>
      <p>
        Let us notice that all the above skills are indeed crucial for
the end users to play an active role in the algorithmic
solution proposed and discussed with technologists,
therefore ultimately unveiling the end users’ inner model of
the problem scenario tackled by the meta-design approach.
Lastly, Kazimoglu et al. [
        <xref ref-type="bibr" rid="ref12">13</xref>
        ] add also socialization to CT
skills fostered by learning through game play. In
TAPASPlay, it is reasonable to expect that the gaming
experience could lead users to socialize by sharing thoughts
about their approaches, thus stimulating cooperative strategy
development useful in co-design processes.
      </p>
      <p>TAPASPlay is however a first proposal to fostering CT
skills in end users. Experiments with domain experts and
industrial designers will be carried out in the next future to
demonstrate the validity of the idea. Furthermore, several
extensions of TAPASPlay have been already planned, in
order to tailor the system to end users' characteristics and
introduce different levels of complexity in the game. At the
moment, only a VR simulation of the battle is available as
outcome of the game; however, the system could be
extended adding a more interactive functionality that better
resembles the debugging activity, in which players can
compare step-by-step how they built their swords and
eventually see what was the optimal solution.</p>
      <p>ACKNOWLEDGMENTS
We thank the University of Brescia and Brunel University
London for supporting us in this collaboration with grant
“Bando Tesi all’estero 2016-2017” DR-291-2016.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>E. G.</given-names>
            <surname>Arias</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Eden</surname>
          </string-name>
          ,
          <string-name>
            <surname>G. Fischer.</surname>
          </string-name>
          <article-title>The Envisionment and Discovery Collaboratory (EDC): Explorations in Human-Centered Informatics</article-title>
          . San Rafael, California: Morgan &amp; Claypool Publishers,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <given-names>M.</given-names>
            <surname>Burnett</surname>
          </string-name>
          .
          <article-title>What is End-User Software Engineering</article-title>
          and Why Does It Matter? In: V.
          <string-name>
            <surname>Pipek</surname>
            ,
            <given-names>M. B.</given-names>
          </string-name>
          <string-name>
            <surname>Rossen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          deRuyter &amp; V.
          <string-name>
            <surname>Wulf</surname>
          </string-name>
          (Eds.),
          <string-name>
            <surname>End-User Development</surname>
          </string-name>
          (pp.
          <fpage>15</fpage>
          -
          <lpage>28</lpage>
          ). Heidelberg: Springer,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>F.</given-names>
            <surname>Cabitza</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Fogli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Lanzilotti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Piccinno</surname>
          </string-name>
          .
          <article-title>Rulebased Tools for the Configuration of Ambient Intelligence Systems: a Comparative User Study</article-title>
          .
          <source>Multimedia Tools And Applications</source>
          ,
          <volume>76</volume>
          (
          <issue>4</issue>
          ), pp.
          <fpage>5221</fpage>
          -
          <lpage>5241</lpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>F.</given-names>
            <surname>Cabitza</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Fogli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Piccino</surname>
          </string-name>
          .
          <article-title>Fostering participation and co-evolution in sentient multimedia systems</article-title>
          .
          <source>Journal of Visual Languages and Computing</source>
          ,
          <volume>25</volume>
          (
          <issue>6</issue>
          ), pp.
          <fpage>684</fpage>
          -
          <lpage>694</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>J.</given-names>
            <surname>Coutaz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. L.</given-names>
            <surname>Crowley</surname>
          </string-name>
          .
          <article-title>A First-Person Experience with End-User Development for Smart Homes</article-title>
          . IEEE Pervasive Computing, April-June, pp.
          <fpage>26</fpage>
          -
          <lpage>39</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>J.</given-names>
            <surname>Donado</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Paternò</surname>
          </string-name>
          .
          <article-title>Puzzle: A mobile application development environment using a jigsaw metaphor</article-title>
          .
          <source>Journal of Visual Languages and Computing</source>
          ,
          <volume>25</volume>
          (
          <issue>4</issue>
          ), pp.
          <fpage>297</fpage>
          -
          <lpage>315</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <given-names>C.</given-names>
            <surname>Dörner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Heß</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Pipek</surname>
          </string-name>
          .
          <article-title>Improving Information Systems by End User Development: A Case Study</article-title>
          .
          <source>In Proc. European Conference on Information Systems (ECIS)</source>
          ,
          <source>St. Gallen, Switzerland</source>
          , pp.
          <fpage>783</fpage>
          -
          <lpage>794</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <given-names>G.</given-names>
            <surname>Fischer. Understanding</surname>
          </string-name>
          , fostering, and
          <article-title>supporting cultures of participation</article-title>
          .
          <source>Interactions</source>
          ,
          <volume>18</volume>
          (
          <issue>3</issue>
          ), pp.
          <fpage>42</fpage>
          -
          <lpage>53</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          10.
          <string-name>
            <given-names>G.</given-names>
            <surname>Fischer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Giaccardi</surname>
          </string-name>
          .
          <article-title>Meta-Design: A Framework for the Future of End User Development</article-title>
          . In H. Lieberman,
          <string-name>
            <given-names>F.</given-names>
            <surname>Paternò</surname>
          </string-name>
          , V. Wulf (Eds.),
          <source>End User Development</source>
          (Vol.
          <volume>9</volume>
          , pp.
          <fpage>427</fpage>
          -
          <lpage>457</lpage>
          ). Dordrecht, The Netherlands: Springer,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          11.
          <string-name>
            <given-names>R.</given-names>
            <surname>Francese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Risi</surname>
          </string-name>
          , G. Tortora,
          <string-name>
            <given-names>M.</given-names>
            <surname>Tucci</surname>
          </string-name>
          .
          <article-title>Visual Mobile Computing for Mobile End-Users</article-title>
          .
          <source>IEEE Transactions on Mobile Computing</source>
          ,
          <volume>15</volume>
          (
          <issue>4</issue>
          ), pp.
          <fpage>1033</fpage>
          -
          <lpage>1046</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          12.
          <string-name>
            <given-names>D.</given-names>
            <surname>Holbert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. R.</given-names>
            <surname>Horn</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. S.</given-names>
            <surname>Wilensky</surname>
          </string-name>
          . Computational Thinking in Constructionist Video Games.
          <source>International Journal of Game-Based Learning</source>
          ,
          <volume>6</volume>
          (
          <issue>1</issue>
          ), pp.
          <fpage>1</fpage>
          -
          <lpage>17</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          13.
          <string-name>
            <surname>C. Kazimoglu</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Kiernan</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Bacon</surname>
          </string-name>
          , L. MacKinnon,.
          <article-title>Learning Programming at the Computational Thinking Level via Digital Game-Play</article-title>
          .
          <source>Procedia Computer Science</source>
          ,
          <volume>9</volume>
          , pp.
          <fpage>522</fpage>
          -
          <lpage>531</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          14.
          <string-name>
            <given-names>D.</given-names>
            <surname>Kotsopoulos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Floyd</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Khan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.K.</given-names>
            <surname>Namukasa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Somanath</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Weber</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Yiu</surname>
          </string-name>
          .
          <article-title>A Pedagogical Framework for Computational Thinking</article-title>
          ,
          <source>Digital Experiences in Mathematics Education</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>18</lpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          15.
          <string-name>
            <given-names>T. Y.</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. L.</given-names>
            <surname>Mauriello</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Ahn</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. B.</given-names>
            <surname>Bederson</surname>
          </string-name>
          ,
          <article-title>CTArcade: Computational thinking with games in school age children</article-title>
          ,
          <source>Int. Journal of Child-Computer Interaction 2</source>
          , pp.
          <fpage>26</fpage>
          -
          <lpage>33</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          16.
          <string-name>
            <given-names>A.</given-names>
            <surname>Repenning. AgentSheets</surname>
          </string-name>
          <article-title>®: an Interactive Simulation Environment with End-User Programmable Agents</article-title>
          .
          <source>Interaction</source>
          <year>2000</year>
          , Tokyo, Japan,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          17.
          <string-name>
            <given-names>A.</given-names>
            <surname>Repenning</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Basawapatna</surname>
          </string-name>
          and
          <string-name>
            <given-names>N.</given-names>
            <surname>Escherle</surname>
          </string-name>
          .
          <article-title>Computational Thinking Tools</article-title>
          .
          <source>In Proceedings of IEEE Symposium on Visual Languages and HumanCentric Computing (VL/HCC 2016)</source>
          , pp.
          <fpage>218</fpage>
          -
          <lpage>222</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          18.
          <string-name>
            <surname>M. Resnick</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Maloney</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Monroy-Hernández</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Rusk</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Eastmond</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <string-name>
            <surname>Brennan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Millner</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Rosenbaum</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Silver</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Silverman</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          <string-name>
            <surname>Kafai</surname>
          </string-name>
          .
          <article-title>Scratch: programming for all</article-title>
          .
          <source>Communications of the ACM</source>
          ,
          <volume>52</volume>
          (
          <issue>11</issue>
          ), pp.
          <fpage>60</fpage>
          -
          <lpage>67</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          19.
          <string-name>
            <given-names>B.</given-names>
            <surname>Shneiderman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Plaisant</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Cohen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Jacobs</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Elmqvist</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Diakopoulos</surname>
          </string-name>
          .
          <article-title>Grand challenges for HCI researchers</article-title>
          .
          <source>Interactions</source>
          , pp.
          <fpage>24</fpage>
          -
          <lpage>25</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          20.
          <string-name>
            <given-names>T.</given-names>
            <surname>Turchi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Malizia</surname>
          </string-name>
          .
          <article-title>Fostering computational thinking skills with a tangible blocks programming environment</article-title>
          .
          <source>In Proceedings of IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2016)</source>
          , pp.
          <fpage>232</fpage>
          -
          <lpage>233</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          21.
          <string-name>
            <given-names>T.</given-names>
            <surname>Turchi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Malizia</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. Dix.</surname>
          </string-name>
          <article-title>TAPAS: A tangible End-User Development tool supporting the repurposing of Pervasive Displays</article-title>
          .
          <source>Journal of Visual Languages and Computing</source>
          ,
          <year>2016</year>
          ,
          <volume>39</volume>
          , pp.
          <fpage>66</fpage>
          -
          <lpage>77</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          22.
          <string-name>
            <surname>J. M. Wing</surname>
          </string-name>
          .
          <article-title>Computational thinking</article-title>
          .
          <source>Communications of the ACM</source>
          ,
          <volume>49</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>33</fpage>
          -
          <lpage>35</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          23.
          <string-name>
            <given-names>A.</given-names>
            <surname>Yadav</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Stepheson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Hong</surname>
          </string-name>
          .
          <article-title>Computational Thinking for Teacher Education</article-title>
          .
          <source>Communications of the ACM</source>
          ,
          <volume>60</volume>
          (
          <issue>4</issue>
          ), pp.
          <fpage>55</fpage>
          -
          <lpage>62</lpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          24.
          <string-name>
            <given-names>D.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Liu</surname>
          </string-name>
          .
          <article-title>A Tangible Programming Tool for Children to Cultivate Computational Thinking</article-title>
          .
          <source>The Scientific World Journal</source>
          , vol.
          <year>2014</year>
          ,
          <string-name>
            <surname>Article</surname>
            <given-names>ID</given-names>
          </string-name>
          428080,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          25.
          <string-name>
            <given-names>D.</given-names>
            <surname>Weintrop</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Holbert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.S.</given-names>
            <surname>Horn</surname>
          </string-name>
          ,
          <string-name>
            <given-names>U.</given-names>
            <surname>Wilensky</surname>
          </string-name>
          .
          <article-title>Computational thinking in constructionist video games</article-title>
          .
          <source>International Journal of Game-Based Learning (IJGBL)</source>
          ,
          <volume>6</volume>
          (
          <issue>1</issue>
          ), pp.
          <fpage>1</fpage>
          -
          <lpage>17</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>