Learning Concurrency Concepts while Playing Games

Cornelia P. Inggs, Taun Gadd, Justin Giffard

Abstract

We think that people will find it easier to learn concurrency concepts if they can play a game that challenges the player to solve puzzles using the same techniques required by a programmer to develop concurrent programs. This article presents two such games in which multiple threads of control are represented by multiple avatars that can perform actions concurrently in a game environment. The player controls the avatars by specifying a sequence of actions for each avatar to execute using a block-based visual syntax, independent of programming language. The avatars execute their actions in the game environment, showing the effect of every action.

References

  1. Akimoto, N. and de Cheng, J. (2003). An educational game for teaching and learning concurrency. In Proceedings of the 1st International Conference on Knowledge Economy and Development of Science and Technology, pages 34-39.
  2. CodeCombat (2016). A classroom in-a-box for teaching Computer Science. https://codecombat.com/. Accessed 2017-01-30.
  3. Google (2016). Blockly: A library for building visual programming editors. https://developers.google.com/ blockly/. Last updated 2016-10-14.
  4. Google (2015). Blockly Games: Games for tomorrow's programmers. https://blockly-games.appspot.com/. Last updated 2015-01-17.
  5. HopScotch (2016). Coding made for you. https://www.gethopscotch.com/. Last blog entry 2016-11-04.
  6. Hudec?ek, P. and PokornÉ, M. (2016). The Deadlock Empire: Slay dragons, master concurrency. https://deadlockempire.github.io/. Accessed 2017-01- 30.
  7. Lightbot. Solve puzzles using programming logic. https://lightbot.com/. Accessed 2017-01-30.
  8. Marmorstein, R. (2015). Teaching semaphores using... semaphores. Journal of Computing Sciences in Colleges, 30(3):117-125.
  9. MIT. Scratch: Create stories, games, and animations. https://scratch.mit.edu/. Accessed 2017-01-30.
  10. MIT (2015). MIT App Inventor: A beginner's introduction to programming and app creation. http://appinventor.mit.edu/explore/. Accessed 2017- 01-30.
  11. OpenTDD (2005-2014). An open source simulation game based upon Transport Tycoon Deluxe. https://www.openttd.org/en. Accessed 2017-01-30.
Download


Paper Citation


in Harvard Style

Inggs C., Gadd T. and Giffard J. (2017). Learning Concurrency Concepts while Playing Games . In Proceedings of the 9th International Conference on Computer Supported Education - Volume 1: SGoCSL, ISBN 978-989-758-239-4, pages 597-602. DOI: 10.5220/0006374705970602


in Bibtex Style

@conference{sgocsl17,
author={Cornelia P. Inggs and Taun Gadd and Justin Giffard},
title={Learning Concurrency Concepts while Playing Games},
booktitle={Proceedings of the 9th International Conference on Computer Supported Education - Volume 1: SGoCSL,},
year={2017},
pages={597-602},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0006374705970602},
isbn={978-989-758-239-4},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 9th International Conference on Computer Supported Education - Volume 1: SGoCSL,
TI - Learning Concurrency Concepts while Playing Games
SN - 978-989-758-239-4
AU - Inggs C.
AU - Gadd T.
AU - Giffard J.
PY - 2017
SP - 597
EP - 602
DO - 10.5220/0006374705970602