Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3025453.3025711acmconferencesArticle/Chapter ViewAbstractPublication PageschiConference Proceedingsconference-collections
research-article

Teaching Programming with Gamified Semantics

Published: 02 May 2017 Publication History

Abstract

Dominant approaches to programming education emphasize program construction over language comprehension. We present Reduct, an educational game embodying a new, comprehension-first approach to teaching novices core programming concepts which include functions, Booleans, equality, conditionals, and mapping functions over sets. In this novel teaching strategy, the player executes code using reduction-based operational semantics. During gameplay, code representations fade from concrete, block-based graphics to the actual syntax of JavaScript ES2015. We describe our design rationale and report on the results of a study evaluating the efficacy of our approach on young adults (18+) without prior coding experience. In a short timeframe, novices demonstrated promising learning of core concepts expressed in actual JavaScript. We also present results from an online deployment. Finally, we discuss ramifications for the design of future computational thinking games.

Supplementary Material

suppl.mov (pn2301.3.mp4)
Supplemental video
suppl.mov (pn2301p.mp4)
Supplemental video

References

[1]
Samson Abramsky. 1993. Computational interpretations of linear logic. Theoretical computer science 111, 1 (1993), 3--57.
[2]
ACM/IEEE-CS Joint Task Force on Computing Curricula. 2013. Computer science curricula 2013. http://www.acm.org/education/CS2013-final-report.pdf. (2013).
[3]
Deborah Adshead, Charles Boisvert, David Love, and Phil Spencer. 2015. Changing Culture: Educating the Next Computer Scientists. In Proceedings of the 2015 ACM Conference on Innovation and Technology in Computer Science Education. ACM, 33--38.
[4]
Efthimia Aivaloglou and Felienne Hermans. 2016. How Kids Code and How We Know: An Exploratory Study on the Scratch Repository. In Proceedings of the 2016 ACM Conference on International Computing Education Research. ACM, 53--61.
[5]
Erik Andersen, Yun-En Liu, Richard Snider, Roy Szeto, Seth Cooper, and Zoran Popoviç. 2011. On the harmfulness of secondary game objectives. In Proceedings of the 6th International Conference on Foundations of Digital Games. ACM, 30--37.
[6]
Erik Andersen, Eleanor O'Rourke, Yun-En Liu, Rich Snider, Jeff Lowdermilk, David Truong, Seth Cooper, and Zoran Popovic. 2012. The impact of tutorials on games of varying complexity. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. ACM, 59--68.
[7]
John Robert Anderson. 2000. Learning and memory. (2000).
[8]
John R. Anderson, Frederick G. Conrad, and Albert T. Corbett. 1989. Skill acquisition and the LISP tutor. Cognitive Science 13, 4 (1989), 467--505.
[9]
John R. Anderson, Albert T. Corbett, Kenneth R. Koedinger, and Ray Pelletier. 1995. Cognitive tutors: Lessons learned. The journal of the learning sciences 4, 2 (1995), 167--207.
[10]
Mark H. Ashcraft. 2002. Math anxiety: Personal, educational, and cognitive consequences. Current directions in psychological science 11, 5 (2002), 181--185.
[11]
Titus Barik, Emerson Murphy-Hill, and Thomas Zimmermann. 2016. A Perspective on Blending Programming Environments and Games: Beyond Points, Badges, and Leaderboards. In Proceedings of the 2016 IEEE Symposium on Visual Languages and Human-Centric Computing.
[12]
David Bau, D. Anthony Bau, Mathew Dawson, and C. Pickens. 2015. Pencil code: block code for a text world. In Proceedings of the 14th International Conference on Interaction Design and Children. ACM, 445--448.
[13]
Piraye Bayman and Richard E. Mayer. 1983. A Diagnosis of Beginning Programmers' Misconceptions of BASIC Programming Statements. Commun. ACM 26, 9 (Sept. 1983), 677--679.
[14]
David W. Braithwaite and Robert L. Goldstone. 2013. Integrating formal and grounded representations in combinatorics learning. Journal of Educational Psychology 105, 3 (2013), 666.
[15]
Karen Ann Brennan. 2013. Best of both worlds: Issues of structure and agency in computational creation, in and out of school. Ph.D. Dissertation. Massachusetts Institute of Technology.
[16]
Neil C. C. Brown, Jens Mönig, Anthony Bau, and David Weintrop. 2016. Panel: Future Directions of Block-based Programming. In Proceedings of the 47th ACM Technical Symposium on Computing Science Education. ACM, 315--316.
[17]
Jerome Seymour Bruner. 1966. Toward a theory of instruction. Vol. 59. Harvard University Press.
[18]
Shalina Chatlani. 2016. Challenges persist when gamifying education. (December 2016). http://www.educationdive.com/news/challenges-persist-when-gamifying-education/430817/ {Online; posted 5-Dec-2016}.
[19]
Alonzo Church. 1941. The calculi of lambda-conversion. Number 6. Princeton University Press.
[20]
Michael Clancy. 2004. Misconceptions and attitudes that interfere with learning to program. Computer science education research (2004), 85--100.
[21]
Codeacademy. 2011. Codeacademy. http://www.codeacademy.org. (2011).
[22]
CodeCombat. 2014. Code Combat. PC Game. (2014).
[23]
Code.org. 2013. Code.org. http://www.code.org. (2013).
[24]
Stephen Cooper, Wanda Dann, and Randy Pausch. 2000. Alice: a 3-D tool for introductory programming concepts. In Journal of Computing Sciences in Colleges, Vol. 15. Consortium for Computing Sciences in Colleges, 107--116.
[25]
Mihaly Csikszentmihalyi. 1991. Flow: The psychology of optimal experience. Vol. 41. HarperPerennial NY.
[26]
Mihaly Csikszentmihalyi. 1996. Flow and the psychology of discovery and invention. New Yprk: Harper Collins (1996).
[27]
Sayamindu Dasgupta, William Hale, Andrés Monroy-Hernández, and Benjamin Mako Hill. 2016. Remixing as a pathway to computational thinking. In Proceedings of the 19th ACM Conference on Computer-Supported Cooperative Work & Social Computing. ACM, 1438--1449.
[28]
Stuart E Dreyfus and Hubert L Dreyfus. 1980. A five-stage model of the mental activities involved in directed skill acquisition. Technical Report. DTIC Document.
[29]
Sarah Esper, Stephen R. Foster, and William G. Griswold. 2013. CodeSpells: embodying the metaphor of wizardry for programming. In Proceedings of the 18th ACM conference on Innovation and technology in computer science education. ACM, 249--254.
[30]
Anne L. Fay and Richard E. Mayer. 1988. Learning LOGO: A cognitive analysis. (1988).
[31]
Emily R. Fyfe, Nicole M. McNeil, and Stephanie Borjas. 2015. Benefits of "concreteness fading" for children's mathematics understanding. Learning and Instruction 35 (2015), 104--120.
[32]
Emily R. Fyfe, Nicole M. McNeil, Ji Y Son, and Robert L. Goldstone. 2014. Concreteness fading in mathematics and science instruction: A systematic review. Educational Psychology Review 26, 1 (2014), 9--25.
[33]
Robert L. Goldstone and Ji Y. Son. 2005. The transfer of scientific principles using concrete and idealized simulations. The Journal of the Learning Sciences 14, 1 (2005), 69--110.
[34]
Google. 2013. Blockly. https://developers.google.com/blockly/. (2013).
[35]
Lindsey Ann Gouws, Karen Bradshaw, and Peter Wentworth. 2013. Computational thinking in educational activities: an evaluation of the educational game light-bot. In Proceedings of the 18th ACM conference on Innovation and technology in computer science education. ACM, 10--15.
[36]
Philip J. Guo. 2013. Online python tutor: embeddable web-based program visualization for cs education. In Proceeding of the 44th ACM technical symposium on Computer science education. ACM, 579--584.
[37]
Kyle J. Harms, Noah Rowlett, and Caitlin Kelleher. 2015. Enabling independent learning of programming concepts through programming completion puzzles. In Visual Languages and Human-Centric Computing (VL/HCC), 2015 IEEE Symposium on. IEEE, 271--279.
[38]
Michael S. Horn, Erin Treacy Solovey, R. Jordan Crouser, and Robert J. K. Jacob. 2009. Comparing the use of tangible and graphical programming languages for informal science education. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. ACM, 975--984.
[39]
Hansen Hsu. 2015. The Appsmiths: Community, Identity, Affect And Ideology Among Cocoa Developers From Next To Iphone. Ph.D. Dissertation. Cornell University.
[40]
Lisa C. Kaczmarczyk, Elizabeth R. Petrick, J. Philip East, and Geoffrey L. Herman. 2010. Identifying student misconceptions of programming. In Proceedings of the 41st ACM technical symposium on Computer science education. ACM, 107--111.
[41]
Ken Kahn. 1996. Toontalk: An animated programming environment for children. Journal of Visual Languages & Computing 7, 2 (1996), 197--217.
[42]
Caitlin Kelleher, Randy Pausch, and Sara Kiesler. 2007. Storytelling alice motivates middle school girls to learn computer programming. In Proceedings of the SIGCHI conference on Human factors in computing systems. ACM, 1455--1464.
[43]
Jordana Kerr, Mary Chou, Reilly Ellis, and Caitlin Kelleher. 2013. Setting the scene: scaffolding stories to benefit middle school students learning to program. In 2013 IEEE Symposium on Visual Languages and Human Centric Computing. IEEE, 95--98.
[44]
Khan Academy. 2006. https://www.khanacademy.org/. (2006).
[45]
Michael Kölling, Neil C. C. Brown, and Amjad Altadmri. 2015. Frame-based editing: Easing the transition from blocks to text-based programming. In Proceedings of the Workshop in Primary and Secondary Computing Education. ACM, 29--38.
[46]
Dave Krebs, Alexander Conrad, and Jingtao Wang. 2012. Combining visual block programming and graph manipulation for clinical alert rule building. In CHI'12 Extended Abstracts on Human Factors in Computing Systems. ACM, 2453--2458.
[47]
Deepak Kumar. 2014. Digital playgrounds for early computing education. ACM Inroads 5, 1 (2014), 20--21.
[48]
Alyson La. 2015. Language trends on GitHub. https://github.com/blog/2047-language-trends-on-github. (2015).
[49]
Michael J. Lee, Faezeh Bahmani, Irwin Kwan, Jilian LaFerte, Polina Charters, Amber Horvath, Fanny Luor, Jill Cao, Catherine Law, Michael Beswetherick, and others. 2014. Principles of a debugging-first puzzle game for computing education. In 2014 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC). IEEE, 57--64.
[50]
Michael J. Lee and Andrew J. Ko. 2015. Comparing the effectiveness of online learning approaches on cs1 learning outcomes. In Proceedings of the eleventh annual International Conference on International Computing Education Research. ACM, 237--246.
[51]
Jonathan Liu. 2012. Dragonbox: Algebra beats angry birds. Wired, June (2012).
[52]
Yun-En Liu, Christy Ballweber, Eleanor O'rourke, Eric Butler, Phonraphee Thummaphan, and Zoran Popović. 2015. Large-Scale Educational Campaigns. ACM Transactions on Computer-Human Interaction (TOCHI) 22, 2 (2015), 8.
[53]
Yanjin Long and Vincent Aleven. 2014. Gamification of Joint Student/System Control over Problem Selection in a Linear Equation Tutor. In Intelligent Tutoring Systems. Springer, 378--387.
[54]
John H. Maloney, Kylie Peppler, Yasmin Kafai, Mitchel Resnick, and Natalie Rusk. 2008. Programming by choice: urban youth learning programming with scratch. Vol. 40. ACM.
[55]
Nicole M. McNeil and Emily R. Fyfe. 2012. "Concreteness fading" promotes transfer of mathematical knowledge. Learning and Instruction 22, 6 (2012), 440--448.
[56]
Timothy S. McNerney. 2004. From turtles to Tangible Programming Bricks: explorations in physical language design. Personal and Ubiquitous Computing 8, 5 (2004), 326--337.
[57]
Indrani Medhi, Aman Sagar, and Kentaro Toyama. 2006. Text-free user interfaces for illiterate and semi-literate users. In 2006 International Conference on Information and Communication Technologies and Development. IEEE, 72--82.
[58]
Orni Meerbaum-Salant, Michal Armoni, and Mordechai Ben-Ari. 2011. Habits of programming in scratch. In Proceedings of the 16th annual joint conference on Innovation and technology in computer science education. ACM, 168--172.
[59]
Orni Meerbaum-Salant, Michal Armoni, and Mordechai Ben-Ari. 2013. Learning computer science concepts with Scratch. Computer Science Education 23, 3 (2013), 239--264.
[60]
Marvin Minsky. 1986. Introduction to LogoWorks. (1986).
[61]
Seymour Papert. 1980. Mindstorms: Children, computers, and powerful ideas. Basic Books, Inc.
[62]
Seymour Papert. 1986. Seymour Papert: On Logo. (1986). {Video series}.
[63]
Roy D. Pea and Karen Sheingold. 1987. Mirrors of minds: Patterns of experience in educational computing. ERIC.
[64]
Arnold Pears, Stephen Seidman, Lauri Malmi, Linda Mannila, Elizabeth Adams, Jens Bennedsen, Marie Devlin, and James Paterson. 2007. A survey of literature on the teaching of introductory programming. ACM SIGCSE Bulletin 39, 4 (2007), 204--223.
[65]
Gordon D. Plotkin. 1981. A structural approach to operational semantics. (1981).
[66]
Cyndi Rader, Cathy Brand, and Clayton Lewis. 1997. Degrees of comprehension: children's understanding of a visual programming environment. In Proceedings of the ACM SIGCHI Conference on Human factors in computing systems. ACM, 351--358.
[67]
Vennila Ramalingam, Deborah LaBelle, and Susan Wiedenbeck. 2004. Self-efficacy and mental models in learning to program. In ACM SIGCSE Bulletin, Vol. 36. ACM, 171--175.
[68]
C. Reigeluth and R. Stein. 1983. Elaboration theory. Instructional-design theories and models: An overview of their current status (1983), 335--381.
[69]
Mitchel Resnick. 2007. All I really need to know (about creative thinking) I learned (by studying how children learn) in kindergarten. In Proceedings of the 6th ACM SIGCHI conference on Creativity & cognition. ACM, 1--6.
[70]
Mitchel Resnick, John Maloney, Andrés Monroy-Hernández, Natalie Rusk, Evelyn Eastmond, Karen Brennan, Amon Millner, Eric Rosenbaum, Jay Silver, Brian Silverman, and others. 2009. Scratch: programming for all. Commun. ACM 52, 11 (2009), 60--67.
[71]
Hong Kian Sam, Abang Ekhsan Abang Othman, and Zaimuarifuddin Shukri Nordin. 2005. Computer self-efficacy, computer anxiety, and attitudes toward the Internet: A study among undergraduates in Unimas. Educational Technology & Society 8, 4 (2005), 205--219.
[72]
Katharina Scheiter, Peter Gerjets, and Julia Schuh. 2010. The acquisition of problem-solving skills in mathematics: How animations can aid understanding of structural problem features and solution procedures. Instructional Science 38, 5 (2010), 487--502.
[73]
James C. Spohrer and Elliot Soloway. 1986. Novice mistakes: Are the folk wisdoms correct? Commun. ACM 29, 7 (1986), 624--632.
[74]
Nikolai Tillmann, Jonathan De Halleux, Tao Xie, Sumit Gulwani, and Judith Bishop. 2013. Teaching and learning programming and software engineering via interactive gaming. In 2013 35th International Conference on Software Engineering (ICSE). IEEE, 1117--1126.
[75]
Ingo J Timm, Tjorben Bogon, Andreas D Lattner, and René Schumann. 2008. Teaching distributed artificial intelligence with RoboRally. In Multiagent System Technologies. Springer, 171--182.
[76]
Tomorrow Corporation. 2015. Human Resource Machine. PC Game. (2015).
[77]
Jeroen J. G. Van Merriënboer. 1990. Strategies for programming instruction in high school: Program completion vs. program generation. Journal of educational computing research 6, 3 (1990), 265--285.
[78]
We Want To Know. 2013. DragonBox. PC Game. (2013).
[79]
Wizards of the Coast. 1995. RoboRally. Board Game. (1995).
[80]
Sharon Zhou, Ivy J. Livingston, Mark Schiefsky, Stuart M. Shieber, and Krzysztof Z. Gajos. 2016. Ingenium: Engaging Novice Students with Latin Grammar. In Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems. ACM, 944--956.

Cited By

View all
  • (2023)A Proof Tree Builder for Sequent Calculus and Hoare LogicElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.375.5375(54-62)Online publication date: 10-Mar-2023
  • (2023)Motivating Students to Learn How to Write Code Using a Gamified Programming TutorEducation Sciences10.3390/educsci1303023013:3(230)Online publication date: 22-Feb-2023
  • (2023)Evaluating the Utility of Notional Machine Representations to Help Novices Learn to Code TraceProceedings of the 2023 ACM Conference on International Computing Education Research - Volume 110.1145/3568813.3600119(314-328)Online publication date: 7-Aug-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
CHI '17: Proceedings of the 2017 CHI Conference on Human Factors in Computing Systems
May 2017
7138 pages
ISBN:9781450346559
DOI:10.1145/3025453
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 02 May 2017

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. block-based programming
  2. concreteness fading
  3. educational games
  4. novice programming

Qualifiers

  • Research-article

Conference

CHI '17
Sponsor:

Acceptance Rates

CHI '17 Paper Acceptance Rate 600 of 2,400 submissions, 25%;
Overall Acceptance Rate 6,199 of 26,314 submissions, 24%

Upcoming Conference

CHI 2025
ACM CHI Conference on Human Factors in Computing Systems
April 26 - May 1, 2025
Yokohama , Japan

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)109
  • Downloads (Last 6 weeks)10
Reflects downloads up to 18 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2023)A Proof Tree Builder for Sequent Calculus and Hoare LogicElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.375.5375(54-62)Online publication date: 10-Mar-2023
  • (2023)Motivating Students to Learn How to Write Code Using a Gamified Programming TutorEducation Sciences10.3390/educsci1303023013:3(230)Online publication date: 22-Feb-2023
  • (2023)Evaluating the Utility of Notional Machine Representations to Help Novices Learn to Code TraceProceedings of the 2023 ACM Conference on International Computing Education Research - Volume 110.1145/3568813.3600119(314-328)Online publication date: 7-Aug-2023
  • (2023)Examples of Unsuccessful Use of Code Comprehension Strategies: A Resource for Developing Code Comprehension PedagogyProceedings of the 2023 ACM Conference on International Computing Education Research - Volume 110.1145/3568813.3600116(15-28)Online publication date: 7-Aug-2023
  • (2023)An Integrated Program Analysis Framework for Graduate Courses in Programming Languages and Software Engineering2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE)10.1109/ASE56229.2023.00101(598-610)Online publication date: 11-Sep-2023
  • (2023)Game-making and conflicts in collaborative learning settings: a synthesisSN Social Sciences10.1007/s43545-023-00801-94:1Online publication date: 16-Dec-2023
  • (2023)Symbolic encoding of LL(1) parsing and its applicationsFormal Methods in System Design10.1007/s10703-023-00420-361:2-3(338-379)Online publication date: 22-Jun-2023
  • (2022)A Proposal of Code Modification Problem for Self-study of Web Client Programming Using JavaScriptAdvances in Science, Technology and Engineering Systems Journal10.25046/aj0705087:5(53-61)Online publication date: Sep-2022
  • (2022)Modeling Player Knowledge in a Parallel Programming Educational GameIEEE Transactions on Games10.1109/TG.2020.303750514:1(64-75)Online publication date: Mar-2022
  • (2022)Evaluating Usability and Educational Effectiveness of a Serious Game for Programmers Using Alternative Interfaces and Types of Activities2022 IEEE Global Engineering Education Conference (EDUCON)10.1109/EDUCON52537.2022.9766768(644-651)Online publication date: 28-Mar-2022
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media