ABSTRACT
In a Parsons problem the learner places mixed-up code blocks in the correct order to solve a problem. Parsons problems can be used for both practice and assessment in programming courses. While most students correctly solve Parsons problems, some do not. Unsuccessful practice is not conducive to learning, leads to frustration, and lowers self-efficacy. Ericson invented two types of adaptation for Parsons problems, intra-problem and inter-problem, in order to decrease frustration and maximize learning gains. In intra-problem adaptation, if the learner is struggling, the problem can dynamically be made easier. In inter-problem adaptation, the next problem's difficulty is modified based on the learner's performance on the last problem. This paper reports on the first observational studies of five undergraduate students and 11 secondary teachers solving both intra-problem adaptive and non-adaptive Parsons problems. It also reports on a log file analysis with data from over 8,000 users solving non-adaptive and adaptive Parsons problems. The paper reports on teachers' understanding of the intra-problem adaptation process, their preference for adaptive or non-adaptive Parsons problems, their perception of the usefulness of solving Parsons problems in helping them learn to fix and write similar code, and the effect of adaptation (both intra-problem and inter-problem) on problem correctness. Teachers understood most of the intra-problem adaptation process, but not all. Most teachers preferred adaptive Parsons problems and felt that solving Parsons problems helped them learn to fix and write similar code. Analysis of the log file data provided evidence that learners are nearly twice as likely to correctly solve adaptive Parsons problems than non-adaptive ones.
- John R Anderson, C Franklin Boyle, and Brian J Reiser. 1985. Intelligent tutoring systems. Science 228, 4698 (1985), 456--462.Google Scholar
- 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.Google Scholar
- Ken Arnold, James Gosling, and David Holmes. 2005. The Java programming language. Addison Wesley Professional.Google Scholar
- Ronald Baecker and Ian Small. 1990. Animation at the interface. The art of human-computer interface design (1990), 251--267.Google Scholar
- Albert Bandura, WH Freeman, and Richard Lightsey. 1999. Self-efficacy: The exercise of control.Google Scholar
- Klara Benda, Amy Bruckman, and Mark Guzdial. 2012. When life and learning do not fit: Challenges of workload and communication in introductory computer science online. ACM Transactions on Computing Education (TOCE) 12, 4 (2012), 15.Google Scholar
- Jens Bennedsen and Michael E Caspersen. 2007. Failure rates in introductory programming. ACM SIGcSE Bulletin 39, 2 (2007), 32--36.Google ScholarDigital Library
- Laura E. Berk and Adam Winsler. 1995. Scaffolding Children's Learning: Vygotsky and Early Childhood Education. National Association for the Education of Young Children.Google Scholar
- John D Bransford, Ann L Brown, Rodney R Cocking, et al. 2000. How people learn. Vol. 11. Washington, DC: National academy press.Google Scholar
- Fanny Chevalier, Nathalie Henry Riche, Catherine Plaisant, Amira Chalbi, and Christophe Hurter. 2016. Animations 25 Years Later: New Roles and Opportunities. In Proceedings of the International Working Conference on Advanced Visual Interfaces. ACM, 2909255, 280--287. https://doi.org/10.1145/2909132.2909255Google ScholarDigital Library
- Gemma Corbalan, Liesbeth Kester, and Jeroen JG Van Merriënboer. 2008. Selecting learning tasks: Effects of adaptation and shared control on learning efficiency and task involvement. Contemporary Educational Psychology 33, 4 (2008), 733--756.Google ScholarCross Ref
- Albert T Corbett, Kenneth R Koedinger, and John R Anderson. 1997. Intelligent tutoring systems. In Handbook of human-computer interaction. Elsevier, 849--874.Google Scholar
- National Research Council et al. 2000. How people learn: Brain, mind, experience, and school: Expanded edition. National Academies Press.Google Scholar
- Wanda P Dann, Stephen Cooper, and Randy Pausch. 2008. Learning to program with Alice. Prentice Hall Press.Google Scholar
- Paul Denny, Andrew Luxton-Reilly, and Beth Simon. 2008. Evaluating a new exam question: Parsons problems. In Proceedings of the fourth international workshop on computing education research. ACM, 113--124.Google ScholarDigital Library
- Carol S Dweck. 1986. Motivational processes affecting learning. American psychologist 41, 10 (1986), 1040.Google Scholar
- Barbara Ericson, Mark Guzdial, Briana Morrison, Miranda Parker, Matthew Moldavan, and Lekha Surasani. 2015. An eBook for teachers learning CS principles. ACM Inroads 6, 4 (2015), 84--86.Google ScholarDigital Library
- Barbara Jane Ericson. 2018. Evaluating the Effectiveness and Efficiency of Parsons Problems and Dynamically Adaptive Parsons Problems as a Type of Low Cognitive Load Practice Problem. Ph.D. Dissertation. Georgia Institute of Technology.Google Scholar
- Barbara J. Ericson, James D. Foley, and Jochen Rick. 2018. Evaluating the Efficiency and Effectiveness of Adaptive Parsons Problems. In Proceedings of the 2018 ACM Conference on International Computing Education Research (ICER '18). ACM, New York, NY, USA, 60--68. https://doi.org/10.1145/3230977.3231000Google ScholarDigital Library
- Barbara J Ericson, Mark J Guzdial, and Briana B Morrison. 2015. Analysis of interactive features designed to enhance learning in an ebook. In Proceedings of the eleventh annual International Conference on International Computing Education Research. ACM, 169--178.Google ScholarDigital Library
- Barbara J Ericson, Lauren E Margulieux, and Jochen Rick. 2017. Solving parsons problems versus fixing and writing code. In Proceedings of the 17th Koli Calling Conference on Computing Education Research. ACM, 20--29.Google ScholarDigital Library
- David Flanagan. 2006. JavaScript: the definitive guide. " O'Reilly Media, Inc.".Google Scholar
- Stuart Garner. 2007. An Exploration of How a Technology-Facilitated Part-Complete Solution Method Supports the Learning of Computer Programming. Issues in Informing Science & Information Technology 4 (2007).Google Scholar
- Kyle James Harms, Jason Chen, and Caitlin L Kelleher. 2016. Distractors in Parsons Problems Decrease Learning Efficiency for Young Novice Programmers. In Proceedings of the 2016 ACM Conference on International Computing Education Research. ACM, 241--250.Google ScholarDigital Library
- Brian Harvey, Daniel Garcia, Josh Paley, and Luke Segars. 2012. Snap!:(build your own blocks). In Proceedings of the 43rd ACM technical symposium on Computer Science Education. ACM, 662--662.Google ScholarDigital Library
- Petri Ihantola and Ville Karavirta. 2011. Two-dimensional Parson's Puzzles: The Concept, Tools, and First Observations. Journal of Information Technology Education 10 (2011), 119--132.Google Scholar
- Dan Ingalls, Ted Kaehler, John Maloney, Scott Wallace, and Alan Kay. 1997. Back to the future: the story of Squeak, a practical Smalltalk written in itself. In ACM SIGPLAN Notices, Vol. 32. ACM, 318--326.Google ScholarDigital Library
- Paivi Kinnunen and Beth Simon. 2010. Experiencing programming assignments in CS1: the emotional toll. In Proceedings of the Sixth international workshop on Computing education research. ACM, 77--86.Google ScholarDigital Library
- John Maloney, Mitchel Resnick, Natalie Rusk, Brian Silverman, and Evelyn Eastmond. 2010. The scratch programming language and environment. ACM Transactions on Computing Education (TOCE) 10, 4 (2010), 16.Google ScholarDigital Library
- Jane Margolis and Allan Fisher. 2003. Unlocking the clubhouse: Women in computing. MIT press.Google Scholar
- Dale Parsons and Patricia Haden. 2006. Parson's programming puzzles: a fun and effective learning tool for first programming courses. In Proceedings of the 8th Australasian Conference on Computing Education-Volume 52. Australian Computer Society, Inc., 157--163.Google ScholarDigital Library
- Michel F Sanner et al. 1999. Python: a programming language for software integration and development. J Mol Graph Model 17, 1 (1999), 57--61.Google Scholar
- John A Sloboda, Jane W Davidson, Michael JA Howe, and Derek G Moore. 1996. The role of practice in the development of performing musicians. British journal of psychology 87, 2 (1996), 287--309.Google Scholar
- John Sweller. 1988. Cognitive load during problem solving: Effects on learning. Cognitive science 12, 2 (1988), 257--285.Google Scholar
- John Sweller. 1994. Cognitive load theory, learning difficulty, and instructional design. Learning and instruction 4, 4 (1994), 295--312.Google Scholar
- Michael Tuffiash, Roy W Roring, and K Anders Ericsson. 2007. Expert performance in SCRABBLE: Implications for the study of the structure and acquisition of complex skills. Journal of Experimental Psychology: Applied 13, 3 (2007), 124.Google ScholarCross Ref
- Jeroen JG 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.Google ScholarCross Ref
- Kurt Vanlehn. 2006. The behavior of tutoring systems. International journal of artificial intelligence in education 16, 3 (2006), 227--265.Google ScholarDigital Library
- Lev Semenovich Vygotsky. 1980. Mind in society: The development of higher psychological processes. Harvard university press.Google Scholar
- Christopher Watson and Frederick WB Li. 2014. Failure rates in introductory programming revisited. In Proceedings of the 2014 conference on Innovation & technology in computer science education. ACM, 39--44.Google ScholarDigital Library
- David Wolber, Hal Abelson, Ellen Spertus, and Liz Looney. 2011. App Inventor. " O'Reilly Media, Inc.".Google Scholar
Index Terms
- Investigating the Affect and Effect of Adaptive Parsons Problems
Recommendations
Evaluating the Efficiency and Effectiveness of Adaptive Parsons Problems
ICER '18: Proceedings of the 2018 ACM Conference on International Computing Education ResearchPractice is essential for learning. There is evidence that solving Parsons problems (putting mixed up code blocks in order) is a more efficient, but just as effective, form of practice than writing code from scratch. However, not all students ...
Dynamically Adaptive Parsons Problems
ICER '16: Proceedings of the 2016 ACM Conference on International Computing Education ResearchParsons problems are code segments that must be placed in the correct order with the correct indention. Research on Parsons problems suggests that they might be a more effective and efficient learning approach than writing equivalent code, especially ...
Parsons Problems and Beyond: Systematic Literature Review and Empirical Study Designs
ITiCSE-WGR '22: Proceedings of the 2022 Working Group Reports on Innovation and Technology in Computer Science EducationProgramming is a complex task that requires the development of many skills including knowledge of syntax, problem decomposition, algorithm development, and debugging. Code-writing activities are commonly used to help students develop these skills, but ...
Comments