Professional Documents
Culture Documents
303
Short Papers IDC 2015 Medford, MA, USA
Programming consists of adding behaviours or actions to the toys smart-phone before the study. The iFizz app was presented to
and scenes. Selecting a toy in the scene allows the user to add them by showing the three main steps to create a simple program:
actions to the toy. Actions consist of a cause and an effect. So making toys, making a scene (including dropping toys into the
iFizz is an event based programming environment. The causes are scene) and adding actions to the toys. The program created was a
events such as touching the toy, shaking the iPad, using a timer, Donkey Kong type game where barrels were rolled down
and detecting the collision of a toy with another toy. The effects platforms by a monkey at the top of the screen (see Figure 1). The
are things like, adding a force to the toy, adding to the toy’s score, player had to progress up the platforms avoiding the rolling
moving a toy away from another toy and making the toy explode. barrels. The children were also shown a pinball program.
As one of the effects is a command to transition to a new scene, it
is possible to create games with multiple levels or to present a
narrative.
When adding an action the user is presented with a list of causes.
After the cause is selected a list of effects appears to prompt for
the remaining information. Sometimes a cause or an effect will
prompt for extra information, such as which toy the collision
effect is associated with.
Selecting a toy in the scene creation mode allows the user to
observe the existing actions associated with the toy. Originally
each action was represented by up to four icons, e.g. if a toy car
was to explode after it collided with a toy tree the action was Figure 1 – The demo program.
represented by the collision icon, a tree icon, the explosion icon
and an icon representing the magnitude of the explosion. Each After talking about the app and letting the children play with the
icon associated with a cause or an effect was given a simple text game produced they were each given two paper templates
label. Even though this representation was reasonably well representing the iPad screen when an iFizz created program is
understood it was seen as unwieldy and we realised that the running (see Figure 2). They were told to think about a program
representation could be simplified considerably. By relying on the they would like to make with the app. In particular they were
text labels we could represent each action with only two icons, asked to work out what their program would look like, what it
one for the cause and one for the effect, e.g. the collision action is would do and how it was controlled. Then they were asked to
shown with an icon of the tree, labelled "collision", and an icon draw the program in the templates.
showing the magnitude of the explosion, labelled "explosion".
This of course requires the user to be able to read but as iFizz is
aimed at children eight or older this seems reasonable.
After the actions are added to the toys and scenes the program can
be played in the playing scenes mode. Here the toys react with the
2D physics and the effects run when the causes occur.
304
Short Papers IDC 2015 Medford, MA, USA
We were interested in the programs the children wanted to make direction and magnitude to a toy. A football shooting game drawn
in an iFizz like environment - one which provided built-in 2D by one child would then also be easier to create.
physics and was event based. In particular we were interested in
the variety of programs they would make in such an environment. This shows that the use of the touch screen technology is
important from the game design perspective. The children wanted
We wanted to constrain the thinking of the children as this can to be able to interact directly with the toys when a game was
assist with making choices and creativity [16]. playing. It is possible that they did this because they knew they
were designing games for a touch screen device but it is also
We specifically wanted to gather information about the actions - possible the games would have required this even if the children
the causes and effects necessary to add to iFizz to enable the were asked to design games for a traditional computer.
production of programs the children wished to make.
4.1.2. Replace the Toy
4. RESULTS Two of the games required a change of state for toys after
We were pleasantly surprised by the variety of programs drawn by colliding with power-up toys. The toys were to react differently
the children. We had expected a large number of Donkey Kong or while the power-up was in effect. This is difficult to implement in
pinball type games as these were the examples the children saw at the prototype iFizz because each toy has one set of actions and
the start of the sessions. There was only one pinball type game properties. A replace the toy effect would allow a toy to be
drawn and that was far more complicated than the example the replaced with the powered up version or indeed any other toy. The
children were shown. There were no Donkey Kong type games existing timer effect would enable the powered up version to
drawn by the children. This showed that the use of the examples return to its standard version after a set period of time.
did not greatly affect the choice of programs the children drew.
The 13 children produced images of 18 games. This included two 4.2. The Game Playing Interface
games which had two different levels drawn. There were aspects of game play or the interface which were not
included in the iFizz prototype but were shown to be necessary.
The drawings and descriptions of the programs produced by the
children were then analysed from the point of view of exactly how 4.2.1. Control Button Interface
they could be created, both the production of the images and the The iFizz prototype when in run mode has six buttons to interact
behaviours that the program would require. Examples of these are with the game; three down each side of the screen when held in
given in the discussion below. We looked for anything which landscape orientation. When a button is assigned to an action the
would be difficult to do in the prototype version of iFizz, where button displays a picture of the toy it is associated with (see
difficult meant that it was not immediately obvious from the Figure 1). Nine of the games drawn by the children used this
interface provided or would require several steps of actions, or concept, which had been demonstrated to them during the session,
was indeed impossible. but seven of these drawings showed not just the toy connected to
the button but also the effect carried out on the toy (see Figure 3).
The missing functions were described and we counted how often This was something we had been considering adding to iFizz and
the same or similar functions were required in the 18 games. this was solid evidence that such an addition would be useful.
Some of the programs could be produced without any additions to
the prototype version of iFizz. Other programs could be produced
with slight variations to the design or gameplay.
The changes required to match the requirements of the children’s
programs were in three areas: the actions (causes and effects), the
game playing interface, and the production of scenes and toys.
4.1. Actions
No new causes were needed for any of the programs drawn and
only two new effects were required to match the behaviours in the
children’s drawings: follow the finger and replace the toy with
Figure 3 – The side buttons show the effects.
another.
305
Short Papers IDC 2015 Medford, MA, USA
other games drawn might also be slightly easier to play with [3] Wing, J. M. Computational thinking. Commun. ACM, 49, 3
discrete rather than continuous movements. (March 2006), 33-35.
Adding discrete movements is currently being considered. [4] Soloway, E. and Spohrer, J. C. Studying the novice
programmer. Psychology Press, 2013.
4.2.4. Side-Scrollers
Two of the games drawn were side-scroller type games, both [5] Kelleher, C. and Pausch, R. Lowering the barriers to
based on Flappy Bird. Producing side-scrollers is difficult in programming: A taxonomy of programming environments
iFizz. The current workaround is to produce a number of different and languages for novice programmers. ACM Comput.
scenes and progress through them as the player reaches the side of Surv., 37, 2 (June 2005), 83-137.
the screen. We have no current plans to add a side-scroller mode [6] Maloney, J., Resnick, M., Rusk, N., Silverman, B. and
to iFizz but may consider this in the future. Eastmond, E. The Scratch Programming Language and
Environment. Trans. Comput. Educ., 10, 4 (November 2010),
4.3. Scenes and Toys 1-15.
In the prototype all lines drawn in the scene mode become
physical objects, similar to toys, but they do not move. This [7] Sheehan, R. Children's perception of computer programming
makes them walls, or floors or other obstacles. The scene creator as an aid to designing programming environments. In
mode can also load a background image which is only an image Proceedings of the Interaction Design and Children
and does not contain any objects with physical properties. Conference: IDC 2003 (Preston, England, 2003). ACM
Originally we thought that providing loadable background images Press, New York, NY, 75-83.
would be enough but seven of the programs drawn by the children
required unique backgrounds which toys could move over without [8] Sheehan, R., Hendrickx, J. and Chiu, B. Fizz: A 2D Physics-
colliding with them. It thus makes greater sense to provide the Based Programming Environment for Children. In
ability to draw backgrounds within the app. Proceedings of the World Conference on Educational
Multimedia, Hypermedia and Telecommunications 2010
5. PROBLEMS WITH THE METHOD (Toronto, Canada, 2010). AACE, 1408-1413.
All of the programs drawn by the children were games even [9] Sheehan, R. J. Moving a Desktop Physics-Based
though they were asked to draw programs of games or to tell Programming System to a Tablet. Presented at Interaction
stories. Given the demonstrated examples and the discussion that Design and Children 2014 (Aarhus, Denmark, 17 June - 20
accompanied them this was not surprising but it does mean that June), http://idc2014.org/wp-
any story telling features that may be necessary haven't been content/uploads/2014/09/idc20140_submission_189.pdf
discovered by this approach. The ability to go from one scene to
another which would be essential in telling a story was understood [10] Cypher, A. and Smith, D. C. KIDSIM: end user
by the children as several games either had different levels drawn programming of simulations. Presented at Human Factors in
or levels were mentioned by the children. A similar study Computing Systems, CHI'95 (Denver, CO, USA, 7-11 May).
concentrating on story telling is being planned. ACM., 27-34.
In many cases the children had not worked out the control [11] Wikipedia Contributors. Donkey Kong. Accessed: 16 March
schemes for their games; how the toys were to be moved and 2015 17:21 UTC.
controlled by the players. When prompted they usually said "by http://en.wikipedia.org/w/index.php?title=Donkey_Kong&ol
pushing buttons" or "by touching or dragging the toy". This was a did=650904125
problem because by asking them to draw a program the children [12] Wikipedia Contributors. Asteroids (video game). Accessed:
were focussing on the images rather than the program control. 16 March 2015 17:39 UTC.
http://en.wikipedia.org/w/index.php?title=Asteroids_(video_
6. CONCLUSION game)&oldid=646230753
In order to make a programming app for children that has the
functions necessary to produce the types of programs that the [13] Guha, M. L., Druin, A., Chipman, G., Fails, J. A., Simms, S.
children want to make we allowed children to create drawings and Farber, A. Working with young children as technology
depicting their programs. We then examined the drawings and design partners. Commun. ACM, 48, 1 2005), 39-42.
determined the functional requirements that our app would need
in order to make the production of these programs not only [14] Moser, C. Child-centered game development (CCGD):
feasible but simple. Using this technique we discovered a number developing games with children at school. Personal
of new functions and elements which are being added to our 2D Ubiquitous Comput., 17, 8 2013), 1647-1661.
physics and event based programming app to make it more useful [15] Ryokai, K., Lee, M. J. and Breitbart, J. M. Children's
for children. storytelling and programming with robotic characters. In
Proceedings of the seventh ACM conference on Creativity
7. REFERENCES and Cognition (Berkeley, California, USA, 2009). ACM,
[1] Snyder, L. Status update: high school CS internationally. 1640240, 19-28.
ACM Inroads, 3, 2 (June 2012), 82-85.
[16] Onarheim, B. and Wiltschnig, S. Opening and constraining:
[2] Bell, T., Andreae, P. and Robins, A. A Case Study of the constraints and their role in creative processes. In
Introduction of Computer Science in NZ Schools. Trans. Proceedings of the 1st DESIRE Network Conference on
Comput. Educ., 14, 2 (June 2014), 1-31. Creativity and Innovation in Design (2010). Desire Network,
83-89.
306