Conference PaperPDF Available

Comilona: the game of balanced diet menus Approaching Nutrition and Computational Thinking

Authors:

Abstract and Figures

This work describes the development and implementation of the Comilona game. It has been crafted from the beginning trying to emphasize the educational content and the players enjoyment at the same time. The users can practice and develop their skills in Computational Thinking with little or no programming knowledge. The game target audience is 8 to 12 years and it aims is cover programming concepts through the development of menus to a balance diet. Also, it discusses the potential benefits of this kind of games as a support tool to foster student motivation and abilities in problem solving.
Content may be subject to copyright.
Actas del V Congreso Internacional de Videojuegos y Educación (CIVE'17)
ISBN 978-84-697-3849-8
Comilona: the game of balanced
diet menus
Approaching Nutrition and Computational Thinking
Rafael Herrero, Coromoto León
Dpto. Ingeniería Informática y de Sistemas
Universidad de La Laguna
Apto. 456, 38200 La Laguna, Tenerife, Spain
comthink@ull.es, cleon@ull.es
AbstractThis work describes the development and
implementation of the Comilona game. It has been crafted from
the beginning trying to emphasize the educational content and the
players enjoyment at the same time. The users can practice and
develop their skills in Computational Thinking with little or no
programming knowledge. The game target audience is 8 to 12
years and it aims is cover programming concepts through the
development of menus to a balance diet. Also, it discusses the
potential benefits of this kind of games as a support tool to foster
student motivation and abilities in problem solving.
Keywordscomputational thinking; game based learning;
introductory programming, games and learning
I. INTRODUCTION
Computational Thinking (CT) has increasingly gained
attention in the educational field in the past decade, following a
short paper by J. Wing [1], who used this expression to indicate
thinking as a computer scientist (i.e., using an analytic and
algorithmic approach to formulate, analyze and solve problems).
In her article, Wing claimed that CT is a fundamental skill for
everyone, not just for computer scientists. To reading, writing,
and arithmetic, we should add computational thinking to every
child analytical ability. Ten years after this seminal work,
hundreds of papers on this topic have been published in the
academic literature with the added value of CT to foster thinking
and problem solving skills [2].
A mutual influence between CT and coding/programming is
recognized. The acquisition of CT does not to necessarily need
computer programming, being a (conceptual) approach to
problem solving that uses strategies such as algorithms,
abstraction and debugging [3]. However, programming
illustrates in concrete terms otherwise-abstract concepts and can
therefore be an effective and practical way to foster the
development of CT skills. On the other hand, teaching word
processing and how to create slideshows does not lead students
to do a deep analysis that allows them to think creatively and
critically [4].
Digital Literacy, which is usually identified with the
Information and Communication Technology (ICT) school
subject, in which students learn to use computers and other
electronic equipment to store and send information, is seen to
differ from CT, even though connected to it. Few question the
potential value of CT in schools but it is less clear how
traditional coding tools can be successfully employed for
Computer Science Education without introducing difficult
overhead. Particularly in subject areas where coding is not the
focus, coding overhead quickly turns into an insurmountable
educational obstacle.
Moreover, many initiatives have been launched to
promote programming among the population, especially
among children and young people who have a broad digital
culture. The Hour of Code [5] is a global initiative consisting
of one-hour introduction to computer science. It was designed
to demystify code and show that everyone can learn the
basics. The goal is not to teach everybody to become an expert
computer scientist in one hour. Only one hour is enough to
learn that computer science is fun and creative, that it is
accessible at all ages, for all students, regardless of their
background. Similar initiatives are: Made With Code, Code
Club, CoderDojo, Code Week, among others. Computer
Science for All [6] is a project promoted by the White House
which intends to empower a generation of American students
with the computer science skills they need to thrive in a digital
economy. Google CS First [7] is a project which is intended
to inspire kids to create with technology through free
computer science clubs. Google is also promoting
computational thinking by the creation and dissemination of
materials and courses for educators [8].
There is an extensive bibliography related to Game-Based
Learning (GBL) for computing. Games can be a valuable tool
for enriching computer science education, since they can
facilitate a number of conditions that promote learning:
student motivation, active learning, adaptability,
collaboration, and simulation. Additionally, they provide the
instructor the ability to collect learning metrics with relative
ease [9]. In this work we present the digital game “Comilona”
designed to teach knowledge, skills, and/or attitudes related
to computer science. The systematic review by Wang [10]
found no empirically validated games to support education in
health care training. We found three games focus primarily on
nutrition area [11] [13] but not in computer science
education.
Actas del V Congreso Internacional de Videojuegos y Educación (CIVE'17)
ISBN 978-84-697-3849-8
The paper is organized as follows: Section II presents the
progress of the digital game through examples. Section III
locates the target audience. Section IV describes the
implementation process and the software-tools used to
develop the application. Section V presents the concluding
remarks and the future works.
Fig. 1. Current version of Comilona prototype
II. GAME DEVELOPMENT
The angular theme of the game is nutrition, where the goal is
always to create a balanced menu that meets the nutritional
values recommended by nutritionists [14]. However, the
objective is to learn the concepts of CT in a gradual, never
exponential way. The game is divided into levels with several
challenges each.
The game simulates a puzzle where players control different
kind of foods by giving various commands to them. The goal of
the game is to prepare a dish where each level contains only one
recipe. During the game-play, players need to design a solution
algorithm through using programming and symbolic
representations in order to mix the foods to cook the recipe. The
commands players can give to the foods are divided into two as
action commands and programming commands. While action
commands are used to choose and move the foods in an
environment consisting of a bowl, programming commands
indirectly affect these actions and facilitate designing
algorithms. Both types of commands are dragged from their
associated toolbars and can be dropped into the programming
specific area. Players play the game by dragging and dropping
any number of commands into these programming area in any
sequence they choose, for as long as they have foods in their
game-play. To complete a level, players need to move their
foods on the bowl, activate the blender, and this will then allow
them to proceed to the next level. As players progress through
the levels, the bowl environment expands and the recipes
increases in complexity. In each level, players also encounter
items that can be used to cook. These cookware items are
randomly scattered every time players start to play a level, and
thus this kind of approach ensures that the problem presented to
a player at one level is significantly different from a problem
presented to another player playing at the same level, or indeed
the same player repeating the level to consolidate their learning.
The randomness of cookware items is also controlled in order to
guarantee the complexity of levels remains consistent. The game
rewards players with new features (such as new cookware items,
new recipes and new diet constraint) as players advance through
the game.
Figure 1 shows the user interface for the first level where the
user will learn simple concepts such as aggregation, which leads
to the theory of sequence. For example, how many fruits are
needed to reach a recommended nutritional value as fats or
proteins. In the next level, it will approach more advanced
concepts like loops. The first challenges are the same as the first
level, but now, the player can not, for example, select fives
apples one by one, they have to do it using loops. The last level
will be a mix of all the concepts studied previously, but now
going further in the programming concepts with conditionals
and functions. In this case, we will point out the user if the result
is not the optimal answer.
Actas del V Congreso Internacional de Videojuegos y Educación (CIVE'17)
ISBN 978-84-697-3849-8
III. TARGET AUDIENCE
This introductory computer science digital game was
designed for ages 8 to 12, and might be useful for a wide range
of ages and a variety of courses.
Fig. 2. Comilona story on Scratch
IV. IMPLEMENTATION
A stand-alone, cross-platform desktop application has been
developed. It works on the major operating systems on the
market and is totally portable, so it can be copied to any storage
device, such as a pendrive or a CD, without installing anything
on the guest machine. No Internet connection is needed, but the
development was based on web technologies. A client has been
programmed in the Javascript programming language [15]. The
native application was created using the Electron [16]
framework. It is an open source project maintained by Github
[17] and uses Chromium to assure that the development will be
fully compatible with most browsers. Since Comilona is based
on the block philosophy [18], the library for building visual
programming editors Blockly [19] has been used. Blockly
allows to define a workspace within the page where we will have
the blocks on one side and the area on which to place them on
the other. Each of the blocks represents a code fragment, we can
create some custom ones or use the already predefined ones.
These elements can be dragged from one area to another to form
a puzzle that becomes code in different languages. The
Comilona code is in charge of analyses the generated code to
determine if the puzzle formed by the player is correct or not.
Comilona is not a platform to develop games like Scratch
[20] or Kodu [21]. Scratch is a visual programming environment
that lets users create interactive, media-rich projects. People
have created a wide range of projects with Scratch, including
animated stories, games, online news shows, book reports,
greeting cards, music videos, science projects, tutorials,
simulations, etc. [22]. Scratch builds on the constructionist ideas
of Logo [23] and Etoys [24]. It makes easy to import or create
many kinds of media (images, sounds, music). The Scratch Web
site provides a social context for Scratch users, allowing users
to share their Scratch projects, receive feedback and
encouragement from their peers, and learn from the projects of
others. On the contrary, Comilona is a stand-alone desktop
application. The goal of Comilona is to offer a close exercise to
develop CT skills for student for ages 8 to 12, and its story
implementation using Scratch is out of this range. Figure 2
shows a possible implementation of Comilona’s story using
Scratch.
Actas del V Congreso Internacional de Videojuegos y Educación (CIVE'17)
ISBN 978-84-697-3849-8
V. CONCLUSIONS
This work has illustrated an approach to learn through digital
games in an effort to integrate computational thinking with
learning of nutrition concepts. The prototype game has now
reached the stage where a detailed and structured evaluation can
be carried out. A structured evaluation exercise with young
students will be performed, and the empirical evidence from that
exercise will be analyzed and used to validate our research.
ACKNOWLEDGMENT
This work has been supported by the Spanish Ministry of
Economy, Industry and Competitiveness inside the program
I+D+i Orientada a los Retos de la Sociedad with contract
number TIN2016-78410-R.
REFERENCES
[1] J. M. Wing, “Computational thinking,” Commun. ACM, vol. 49, no. 3,
pp. 3335, Mar. 2006.
[2] S. Bocconi, A. Chioccariello, G. Dettori, A. Ferrari, K. Engelhardt, P.
Kampylis, and Y. Punie, “Exploring the field of computational thinking
as a 21st century skill,” in EDULEARN16 Proceedings, ser. 8th
International Conference on Education and New Learning Technologies.
IATED, 4-6 July, 2016 2016, pp. 47254733.
[3] T. Bell, J. Alexander, I. Freeman, and M. Grimley, “Computer science
unplugged: School students doing real computing without computers,”
The New Zealand Journal of Applied Computing and Information
Technology, vol. 13, no. 1, pp. 2029, 2009.
[4] A. Collins and J. Brown, What’s Worth Teaching?: Rethinking
Curriculum in the Age of Technology, ser. Technology, Education
Connections (the TEC Series) Series. Teachers College Press, Teachers
College, Columbia University, 2017.
[5] “Code.org,” http://code.org, accessed: 2017-04-27.
[6] “Computer Science For All,”
https://www.whitehouse.gov/blog/2016/01/30/computer-science-all,
accessed: 2017-04-27.
[7] “Google CS First,” https://www.cs-first.com/, accessed: 2017-04-27.
[8] “Google for Education,” www.google.com/edu/resources/programs/
exploring-computational-thinking/, accessed: 2017-04-27.
[9] C. Johnson, M. McGill, D. Bouchard, M. K. Bradshaw, V. A. Bucheli, L.
D. Merkle, M. J. Scott, Z. Sweedyk, J. ´Angel, Z. Xiao, and M. Zhang,
“Game development for computer science education,” in Proceedings of
the 2016 ITiCSE Working Group Reports, ser. ITiCSE ’16. New York,
NY, USA: ACM, 2016, pp. 2344.
[10] R. Wang, S. DeMaria Jr, A. Goldberg, and D. Katz, “A systematic review
of serious games in training health care professionals,” Simulation in
Healthcare, vol. 11, no. 1, pp. 4151, 2016.
[11] V. J. Green, R. B. Parnes, L. M. Montuori, T. Mardigan, J. Gerald, and D.
Friedman, “Fresh minds, from farm to classroom: A nutrition and
agriculture game,” Journal of nutrition education and behavior, vol. 35,
no. 5, pp. 271272, 2003. [12]
[12] J. M. Lacey, J. R. McGinn, R. L. Albino, and T. Ferro, “The nutritional
scattergories R game: adding zest to a nutrition course,” Journal of
nutrition education and behavior, vol. 35, no. 6, pp. 333334, 2003.
[13] M. T. Burns, M. Benoit, and D. Bulvan, “Nutrition jeopardy,” Journal of
nutrition education and behavior, vol. 34, no. 2, pp. 117118, 2002.
[14] K. E. Drummond and L. M. Brefere, Nutrition for foodservice and
culinary professionals. J. Wiley, 2004.
[15] C. Wootton, JavaScript Programmer’s Reference. Wrox Press Ltd., 2001.
[16] “Electron,” electron.atom.io, accessed: 2017-04-27.
[17] “Github,” github.com, accessed: 2017-04-27.
[18] J. Maloney, M. Resnick, N. Rusk, B. Silverman, and E. Eastmond, “The
scratch programming language and environment,” ACM Transactions on
Computing Education (TOCE), vol. 10, no. 4, p. 16, 2010.
[19] “Blockly,” developers.google.com/blockly/, accessed: 2017-04-27.
[20] “Scratch,” https://scratch.mit.edu/, accessed: 2017-04-27.
[21] “Kodu,” https://www.kodugamelab.com/, accessed: 2017-04-27.
[22] J. Maloney, et al. "The scratch programming language and environment."
ACM Transactions on Computing Education (TOCE), vol. 10, no. 4, pg.
16. 2010.
[23] S. Papert. Mindstorms: Children, computers, and powerful ideas. Basic
Books, Inc. 1980.
[24] C.J. Bouras, et. Al. “Squeak Etoys: Interactive and Collaborative Learning
Environments” in I. Management Association (Ed.), Gaming and
Simulations: Concepts, Methodologies, Tools and Applications, pp. 898-
909, 2011
... Fig. 1 shows an example of activity for secondary. This is Comilona [10] whose objective is to cover the fundamental concepts of programming by solving the problem of diet, posing challenges of increasing difficulty that allows the preparation of balanced menus. ...
Conference Paper
Computational thinking could be described as the thought processes involved in formulating problems and representing their solutions in such a way that these solutions can be executed by an information processing agent (either a human, a computer, or combinations of both). Therefore, this process involves learning to think about how to represent and solve problems that require a combination of human cognitive power and computing power. This skill is inherently developed by those who are engaged in computer programming. In the subject of the degree in Computer Engineering "Programming Languages and Paradigms" are studied procedural, object-oriented and functional programming. The first activities carried out focus on imperative and structured programming, working on assignment statements, conditionals and control structures. Secondly, the concepts of abstraction and encapsulation of object-oriented programming are introduced, working with classes, objects and polymorphism. Finally, it is the turn to the paradigms of declarative and functional programming. These contents are taught in the third year of the degree, therefore, those who study it have already developed the skills of computational thinking. Educational innovation has many faces and one of them is service-learning, a project-based methodology in which the acquisition of knowledge converges with a practical application in the form of community service, education in values and critical thinking. The objective of service learning is to reverse part of the educational process for the benefit of the community, therefore, we propose as an activity of the subject the organization of the Computational Thinking Olympiad for primary and secondary students. The Computational Thinking Olympiad allows university students to teach the youngest the fundamentals of Computer Science, therefore, it is an act of solidarity. In addition, investigating the characteristics of pre-university classrooms and the causes of the lack of interest in Computer Science in boys and girls is a learning activity. Finally, committing to the organization and execution of the activities of the Computational Thinking Olympiad by applying and taking advantage of what has been studied in the subject of programming languages and paradigms is service-learning. This paper describes how the Computational Thinking Olympiad is organized and developed in collaboration with the Computational Thinking Cultural Classroom and the Scientific Culture and Innovation Unit. The four editions of the activity have allowed its refinement and improvement.
Conference Paper
Full-text available
Games can be a valuable tool for enriching computer science education, since they can facilitate a number of conditions that promote learning: student motivation, active learning, adaptivity, collaboration, and simulation. Additionally, they provide the instructor the ability to collect learning metrics with relative ease. As part of 21st Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE 2016), the Game Development for Computer Science Education working group convened to examine the current role games play in computer science (CS) education, including where and how they fit into CS education. Based on reviews of literature, academic research, professional practice, and a comprehensive list of games for computing education, we present this working group report. This report provides a summary of existing digital games designed to enrich computing education, an index of where these games may fit into a teaching paradigm using the ACM/IEEE Computer Science Curricula 2013 [13], and a guide to developing digital games designed to teach knowledge, skills, and attitudes related to computer science.
Conference Paper
Full-text available
Computational Thinking, which entails using analytic and algorithmic approaches to formulate, analyse and solve problems, has increasingly gained attention in the educational field in the past decade, giving rise to a large amount of academic and grey literature, as well as to numerous public and private initiatives to implement it. Despite such widespread interest, its successful integration in school curricula is still facing several open issues and challenges. In order to contribute to the field development, we are carrying out a desk investigation to draw a comprehensive overview of recent findings produced by academic research, grassroots initiatives and policy actions addressing the development of computational thinking in primary and secondary school, as well as to highlight major implications for policy and practice. In this paper we describe the project methodology and a classification of the comprehensive corpus of documents collected. We also present a preliminary picture of the field as it is emerging from our analysis.
Article
Full-text available
Various aspects of computational thinking, which builds on the power and limits of computing processes, whether they are executed by a human or by a machine, are discussed. Computational methods and models are helping to solve problems, design systems, and understand human behavior, by drawing on concepts fundamental to computer science (CS). Computational thinking (CT) is using abstraction and decomposition when attacking a large complex task or designing a large complex systems. CT is the way of thinking in terms of prevention, protection, and recovery from worst-case scenarios through redundancy, damage containment, and error correction. CT is using heuristic reasoning to discover a solution and using massive amount of data to speed up computation. CT is a futuristic vision to guide computer science educators, researchers, and practitioners to change society's image of the computer science field.
Article
Full-text available
The Computer Science Unplugged project provides ways to expose students to ideas from Computer Science without having to use computers. This has a number of applications, including outreach, school curriculum support, and clubs. The "Unplugged" project, based at Canterbury University, uses activities, games, magic tricks and competitions to show children the kind of thinking that is expected of a computer scientist. All of the activities are available free of charge at csunplugged.org. The project has recently enjoyed widespread adoption internationally, and substantial industry support. It is recommended in the ACM K-12 curriculum, and has been translated into 12 languages. As well as simply providing teaching resources, there is a very active program developing and evaluating new formats and activities. This includes adaptations of the kinaesthetic activities in virtual worlds; integration with other outreach tools such as the Alice language, adaptation for use by students in large classrooms, and videos to help teachers and presenters understand how to use the material. This paper will explore why this approach has become popular, and describe developments and adaptations that are being used for outreach and teaching around New Zealand, as well as internationally. Authors Tim Bell is Associate Professor in the Department of Computer Science and Software Engineering at the University of Canterbury, where he has been for 20 years. He is the recipient of several teaching awards, including an inaugural NZ TTEA in 2002. In the past his main research has been in text compression, and he is the co-author of three books and many papers on this topic. Jason Alexander is a Ph.D. student in the Human-Computer Interaction lab in the Department of Computer Science and Software Engineering at the University of Canterbury. He has presented many Unplugged shows over the last three years. He is currently in the concluding stages of his thesis entitled Understanding and Improving Electronic Document Navigation. Isaac Freeman has a Graduate Diploma in Computer Science, a Diploma in Teaching, and a Masters in Mathematics. He has worked as a classroom teacher, and is now a fulltime web designer and developer. Mick Grimley is a Senior Lecturer in the School of Educational Studies and Human Development at the University of Canterbury. Mick is interested in the enhancement of learning, and in particular as it relates to cognition, motivation, interest, interactivity, new technologies and e-learning. These interests have led him into the study of how technology can be leveraged to improve learning.
Article
Full-text available
Scratch is a visual programming environment that allows users (primarily ages 8 to 16) to learn computer programming while working on personally meaningful projects such as animated stories and games. A key design goal of Scratch is to support self-directed learning through tinkering and collaboration with peers. This article explores how the Scratch programming language and environment support this goal.
Article
Statement: Serious games are computer-based games designed for training purposes. They are poised to expand their role in medical education. This systematic review, conducted in accordance with PRISMA guidelines, aimed to synthesize current serious gaming trends in health care training, especially those pertaining to developmental methodologies and game evaluation. PubMed, EMBASE, and Cochrane databases were queried for relevant documents published through December 2014. Of the 3737 publications identified, 48 of them, covering 42 serious games, were included. From 2007 to 2014, they demonstrate a growth from 2 games and 2 genres to 42 games and 8 genres. Overall, study design was heterogeneous and methodological quality by MERQSI score averaged 10.5/18, which is modest. Seventy-nine percent of serious games were evaluated for training outcomes. As the number of serious games for health care training continues to grow, having schemas that organize how educators approach their development and evaluation is essential for their success.
Article
This paper describes the design and structure of the AFS Authentication Server. The scope of this work is to provide readers with a sufficiently detailed description of the AuthServer so that they may construct client applications that call the server's RPC interface. Overview 1 April 12, 1993 14:48 Authentication Server Interface 1.3 Document Layout