Learning Computing through Game Experiences

P. Fishwick (http://www.cise.ufl.edu/~fishwick)

Computing Culture

The field of computing is found in a wide array of disciplines including information science, computer science, and computer engineering. The culture of computing, including its formal languages, practices, and practitioners, has permeated the broader cultures of society at large. We use digital devices including smartphones and video recorders on a routine basis, and this use has changed how we think. Programming a digital video recorder (DVR) requires knowledge of tree structures, state machines, and other fundamental formal constructs found within computer science. This knowledge is learned through informal experience rather than through formal means (e.g., taking a university course). Therefore, there is a general need to teach non-computer specialists about core computing concepts because of their cultural significance. People should learn about computing, as they learn mathematics, because of its ubiquity in modern life.

Roadblocks and Opportunities

One challenge in learning computing relates to the need to entice the learner into computing through something that they find interesting and relevant. Certain games serve as a general opportunity to address this challenge since there is a pre-existing culture of game players, and one need only use this as curricular vehicle for introducing learning objectives. Games are developed using multiple disciplines, and players of the games cross disciplinary boundaries; World of Warcraft is probably played just as frequently by artists as programmers. However, there is a more significant set of roadblocks in bridging the areas of SEAD (Malina and Strohecker 2012). One of them is so basic as to be easily overlooked: writing vs. building. Some of our core approaches in the SEAD disciplines are oriented toward writing. Computer scientists write code or programs, as do humanist scholars who write the “scholarly edition.” The assumption of the former group is that algorithms, and most resulting code, are written. For the latter group, writing is the fundamental rhetorical device supporting criticism. Can we challenge these assumptions? Can an algorithm be defined by an analog machine (Fishwick 2012), and can the humanist’s rhetorical mandate employ audiovisual artifacts? The visual and musical arts offer opportunities in attempting this challenge: perhaps algorithms can be designed like skyscrapers, and criticism can be defined by perceptually-enabled interaction? Malina has created a phrase he calls the “crisis of representation” (Malina 2012), which characterizes the problem. SEAD Disciplines tend to be segmented using representational norms. The norms should be challenged by exploring new representations.

Game Experiences

The need to inform the general populace of computing can result in several different approaches; however, I suggest one specific approach based on interactive game technology. This approach involves exploring new representations for computing artifacts. I propose learning computing through game experiences. Consider, for example, two game experiences initiated by the same author: Minecraft and 0x10c (Notch 2012). Minecraft is a “block game” where blocks are mined, and a subculture of Minecraft has resulted where players use raw game materials to construct digital circuits (Minecraft 2012). The emerging game 0x10c is centered on the use of programming a virtual machine (DCPU-16) whose function serves as an in-game experience involving piloting and controlling a space ship. Aspects of computing, rather than being used to create games (i.e., writing game code), are instead used as virtual environments whose experiences involve learning computing. In Minecraft, one can create circuits out of virtual blocks and in the planned 0x10c, one can program a virtual computer for steering gameplay. The proposed goal is not to learn computing by authoring game code, but to leverage game-based social networks, culture, and gameplay as means for introducing computing concepts.

Aesthetic Computing Class

Many games and mods of those games can be used to create experiences that reinforce, or introduce, formal concepts found in computing. I have taught a class at the University of Florida for the past decade called Aesthetic Computing (AC 2012, ACP 2012). The purpose of the class is to broaden the representational possibilities for formal structures found in computing by using the arts and humanities as guidance. The products from this course have evolved over the years, and this past year, students used games and game engines to represent computing constructs such as data, equations, and code. One of the Spring 2012 class projects (Tadayon, Wilson, and Vo 2012) involved a simple Petri net using Minecraft features including dispensers, eggs, lava, and pistons. Figure 1 shows a side view of the Petri net. The redstone blocks in Minecraft are necessary to model message propagation needed for simulation modeling of the Petri net.


Figure 1: Side view of Petri net in Minecraft (from Tadayon, Wilson, and Vo 2012)

Using games as a means for teaching computing concepts can be seen as a form of serious gaming, although in this proposal, no new games are proposed. Instead, learning is facilitated by starting with existing game cultures such as the one around the game Minecraft. The opportunity for leveraging these cultures and adopting game-based materials as raw elements for novel representations of computing constructs separates this proposal from other work. The root idea is not new, as formal structures such as universal computers and calculators have been constructed from Legos and Tinkertoys and numerous other natural or engineered materials. The proposed curricular improvement is to build upon the past use of toy objects for constructing analog computers and to 1) broaden this concept to allow for multiple formal constructs (not only arithmetic units and universal computers), and to 2) employ game cultures, such as Minecraft, as a basis for exploring new representations of formal constructs. The assumption is that if players are drawn into subcultures of games, this sociological phenomenon can assist in learning new concepts that are contextualized within those subcultures. It is feasible to take this approach in learning any new concept, however, this proposal is based on computing concepts as a starting point.

Stakeholders and Recommendations

The primary stakeholders in this proposal are 1) the students who learn formal concepts of computing, 2) educational researchers who wish to explore the effectiveness of new representations on learning, 3) agencies concerned with learning (e.g., MacArthur Foundation, Bill and Melinda Gates Foundation, and the National Science Foundation), and 4) game authors and companies. Classes can be co-taught by SEAD discipline-specific teachers who wish to explore representational challenges outside of the norm: building algorithms and programs rather than writing them, and simultaneously exploring their rhetorical values within game cultures. Specific recommendations include:

1. Constructing educational scenarios for game-based experiences, including learning objectives for computing concept learning.
2. Creating a transdisciplinary SEAD social network, and workshop, for solidifying goals and outcomes for this approach.
3. Defining social science and education-based formal methods of assessment for measuring learning and motivation, and for studying game cultures and their players.
4. Exploring the broader impact of this approach on non-computing learning objectives in the SEAD disciplines (e.g., physics, social science, history).

References

AC 2012. Aesthetic Computing 2012 Course. http://www.cise.ufl.edu/~fishwick/ac/2012/
ACP 2012. Aesthetic Computing Best Project Videos. http://www.cise.ufl.edu/~fishwick/ac/2012/bestproj.html
Fishwick, P. A. 2012. Aesthetic Computing. In: Soegaard, Mads and Dam, Rikke Friis (eds.). “Encyclopedia of Human-Computer Interaction”. Aarhus, Denmark: The Interaction-Design.org Foundation. Available online at http://www.interaction-design.org/encyclopedia/aesthetic_computing.html
Malina, R. 2012. Commentary on: Fishwick, Paul A. (2012): Aesthetic Computing. In: Soegaard, Mads and Dam, Rikke Friis (eds.). “Encyclopedia of Human-Computer Interaction”. Aarhus, Denmark: The Interaction-Design.org Foundation. Available online at http://www.interaction-design.org/encyclopedia/aesthetic_computing.html
Malina, R. and Strohecker, C. 2012. https://seadnetwork.wordpress.com/sead-white-papers-steering-committee/Minecraft 2012. Redstone Circuits. http://www.minecraftwiki.net/wiki/Redstone_Circuits
Notch 2012. 0x10c Space Game Wiki. http://www.the0x10cwiki.net/0x10c_Wiki
Tadayon, R., R. Wilson, and P. Vo. 2012. Petri Nets in Minecraft. Accessed June 8, 2012. http://www.youtube.com/watch?v=sUR3xqPWU1I