ABSTRACT
Sketching out a code trace is a cognitive assistance for programmers, student and professional. Previous research (Lister et al. 2004) showed that students who sketch a trace on paper had greater success on code 'reading' problems involving loops, arrays, and conditionals. We replicated this finding, and developed further categories of student sketching strategies. Our results support previous findings that students who don't sketch on code reading problems have a lower success rate than students who do sketch. We found that students who sketch incomplete traces also have a low success rate, similar to students who don't sketch at all. We categorized sketching strategies on new problem types (code writing, code ordering, and code fixing) and find that different types of sketching are used on these problems, not always with increased success. We ground our results in a theory of sketching as a method for distributing cognition and as a demonstration of the process of the notional machine.
- ACM/IEEE-CS Joint Task Force on Computing Curricula. 2013. Computer Science Curricula 2013. Technical Report. ACM Press and IEEE Computer Society Press. DOI:http://dx.doi.org/10.1145/2534860 Google ScholarDigital Library
- Paul Chandler and John Sweller. 1991. Cognitive load theory and the format of instruction. Cognition and instruction 8, 4 (1991), 293--332. Google ScholarCross Ref
- Michelene TH Chi, Stephanie A Siler, Heisawn Jeong, Takashi Yamauchi, and Robert G Hausmann. 2001. Learning from human tutoring. Cognitive Science 25, 4 (2001), 471--533.Google ScholarCross Ref
- Michelene T. H. Chi, Paul J. Feltovich, and Robert Glaser. 1981. Categorization and Representation of Physics Problems by Experts and Novices. Cognitive Science 5, 2 (1981), 121--152. DOI:http://dx.doi.org/10.1207/s15516709cog0502 2Google ScholarCross Ref
- Benedict Du Boulay. 1986. Some Difficulties of Learning to Program. Journal of Educational Computing Research 2, 1 (1986), 57--73. DOI:http://dx.doi.org/10. 2190/3LFX-9RRF-67T8-UVK9Google ScholarCross Ref
- Robert Ferguson and George M. Bodner. 2008. Making sense of the arrow-pushing formalism among chemistry majors enrolled in organic chemistry. Chem. Educ. Res. Pract. 9 (2008), 102--113. Issue 2. DOI:http://dx.doi.org/10.1039/B806225K Google ScholarCross Ref
- Mark Guzdial, Barbara Ericson, Tom McKlin, and Shelly Engelman. 2014. Georgia Computes! An Intervention in a US State, with Formal and Informal Education in a Policy Context. 14, 2 (2014).Google Scholar
- Matthew Hertz and Maria Jump. 2013. Trace-Based Teaching in Early Programming Courses. Proceedings of the 44th ACM Technical Symposium on Computer Science Education (2013), 561--566. DOI:http://dx.doi.org/10.1145/2445196.2445364 Google ScholarDigital Library
- Mark A. Holliday and David Luginbuhl. 2004. CS1 assessment using memory diagrams. ACM SIGCSE Bulletin 36, 1 (2004), 200. DOI:http://dx.doi.org/10.1145/ 1028174.971373Google ScholarDigital Library
- Edwin Hutchins. 1995. How a cockpit remembers its speeds. Cognitive science 19, 3 (1995), 265--288. Google ScholarCross Ref
- Petri Ihantola and Ville Karavirta. 2011. Two-dimensional parsonfis puzzles: The concept, tools, and first observations. Journal of Information Technology Education 10 (2011), 2011.Google Scholar
- Magdalene Lampert. 1992. Teaching and learning long division for understanding in school. In Analysis of Arithmetic for Mathematics Teaching, Rosemary A. Hattrup Gaea Leinhardt, Ralph Putnam (Ed.). Psychology Press, Chapter 4, 221--282.Google Scholar
- Raymond Lister, Tony Clear, Dennis J Bouvier, Paul Carter, Anna Eckerdal, Jana Jackova, Mike Lopez, Robert McCartney, Phil Robbins, Otto Seppala, and others. 2010. Naturally occurring data as research instrument: analyzing examination responses to study the novice programmer. ACM SIGCSE Bulletin 41, 4 (2010), 156--173. Google ScholarDigital Library
- Raymond Lister, Otto Seppala, Beth Simon, Lynda Thomas, Elizabeth S. Adams, Sue Fitzgerald, William Fone, John Hamer, Morten Lindholm, Robert McCartney, Jan Erik Mostrom, and Kate Sanders. 2004. A multi-national study of reading and tracing skills in novice programmers. In ACM SIGCSE Bulletin, Vol. 36. 119--150. DOI:http://dx.doi.org/10.1145/1041624.1041673 Google ScholarDigital Library
- Linxiao Ma. 2007. Investigating and improving novice programmers' mental models of programming concepts. Ph.D. Dissertation. University of Strathclyde.Google Scholar
- Robert McCartney, Jan Erik Mostrom, Kate Sanders, and Otto Seppala. 2004. Questions, Annotations, and Institutions: observations from a study of novice programmers. In the Fourth Finnish/Baltic Sea Conference on Computer Science Education, October 1--3, 2004 in Koli, Finland. Helsinki University of Technology, Department of Computer Science and Engineering, Laboratory of Information Processing Science, FINLAND, 11--19. [17] Michael McCracken, Vicki Almstrum, Danny Diaz, Mark Guzdial, Dianne Hagan, Yifat Ben-David Kolikant, Cary Laxer, Lynda Thomas, Ian Utting, and Tadeusz Wilusz. 2001. A Multi-national, Multi-institutional Study of Assessment of Programming Skills of First-year CS Students. SIGCSE Bull. 33, 4 (Dec. 2001), 125--180.Google Scholar
- Briana B. Morrison, Lauren E. Margulieux, and Mark Guzdial. 2015. Subgoals, Context, and Worked Examples in Learning Computing Problem Solving. In Proceedings of the Eleventh Annual International Conference on International Computing Education Research (ICER '15). ACM, New York, NY, USA, 21--29. DOI: http://dx.doi.org/10.1145/2787622.2787733 Google ScholarDigital Library
- 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 (ACE '06). Australian Computer Society, Inc., Darlinghurst, Australia, Australia, 157--163. http://dl.acm.org/citation.cfm?id=1151869.1151890Google ScholarDigital Library
- Roy D Pea. 1993. Practices of distributed intelligence and designs for education. Distributed cognitions: Psychological and educational considerations 11 (1993).Google Scholar
- Robert S. Rist. 1989. Schema Creation in Programming. Cognitive Science 13, 3 (1989), 389--414. DOI:http://dx.doi.org/10.1207/s15516709cog1303 3Google ScholarCross Ref
- Juha Sorva. 2013. Notional Machines and Introductory Programming Education. Trans. Comput. Educ. 13, 2, Article 8 (July 2013), 31 pages. DOI:http://dx.doi.org/ 10.1145/2483710.2483713Google ScholarDigital Library
- John Sweller, Jeroen JG Van Merrienboer, and Fred GWC Paas. 1998. Cognitive architecture and instructional design. Educational psychology review 10, 3 (1998), 251--296. Google ScholarCross Ref
- Allison Elliott Tewand Mark Guzdial. 2010. Developing a Validated Assessment of Fundamental CS1 Concepts. In Proceedings of the 41st ACM Technical Symposium on Computer Science Education (SIGCSE '10). ACM, New York, NY, USA, 97--101. DOI:http://dx.doi.org/10.1145/1734263.1734297 Google ScholarDigital Library
- Lynda Thomas, Mark Ratcliffe, and Benjy Thomasson. 2004. Scaffolding with Object Diagrams in First Year Programming Classes: Some Unexpected Results. In Proceedings of the 35th SIGCSE Technical Symposium on Computer Science Education (SIGCSE '04). ACM, New York, NY, USA, 250--254. DOI:http://dx.doi. org/10.1145/971300.971390 Google ScholarDigital Library
- Juhani E. Tuovinen. 2000. Optimising Student Cognitive Load in Computer Education. In Proceedings of the Australasian Conference on Computing Education (ACSE '00). ACM, New York, NY, USA, 235--241. DOI:http://dx.doi.org/10.1145/ 359369.359405Google ScholarDigital Library
- Ian Utting, Allison Elliottt Tew, Mike McCracken, Lynda Thomas, Dennis Bouvier, Roger Frye, James Paterson, Michael Caspersen, Yifat Ben-David Kolikant, Juha Sorva, and Tadeusz Wilusz. 2013. A Fresh Look at Novice Programmers' Performance and Their Teachers' Expectations. In Proceedings of the ITiCSE Working Group Reports Conference on Innovation and Technology in Computer Science Education - Working Group Reports (ITiCSE -WGR '13). ACM, New York, NY, USA, 15--32. DOI:http://dx.doi.org/10.1145/2543882.2543884 Google ScholarDigital Library
- Vesa Vainio and Jorma Sajaniemi. 2007. Factors in Novice Programmers' Poor Tracing Skills. SIGCSE Bull. 39, 3 (June 2007), 236--240. DOI:http://dx.doi.org/10. 1145/1269900.1268853Google ScholarDigital Library
- Jacqueline Whalley, Christine Prasad, and P. K. Ajith Kumar. 2007. Decoding Doodles: Novice Programmers and Their Annotations. In Proceedings of the Ninth Australasian Conference on Computing Education - Volume 66 (ACE '07). Australian Computer Society, Inc., Darlinghurst, Australia, Australia, 171--178. http://dl.acm.org/citation.cfm?id=1273672.1273693Google ScholarDigital Library
- Aman Yadav, Sarah Gretter, Susanne Hambrusch, and Phil Sands. 2017. Expanding computer science education in schools: understanding teacher experiences and challenges. Computer Science Education 26, 4 (2017), 235--254. DOI:http://dx.doi.org/10.1080/08993408.2016.1257418 arXiv:http://dx.doi.org/10.1080/08993408.2016.1257418 Google ScholarCross Ref
Index Terms
- Using Tracing and Sketching to Solve Programming Problems: Replicating and Extending an Analysis of What Students Draw
Recommendations
Novice Rationales for Sketching and Tracing, and How They Try to Avoid It
ITiCSE '19: Proceedings of the 2019 ACM Conference on Innovation and Technology in Computer Science EducationPrior research has shown that sketching out a code trace on paper is correlated with higher scores on code reading problems. Why do students sometimes choose not to draw out a code trace, or if they do, choose a different sketching technique than their ...
The Effect of Sketching and Tracing on Instructors' Understanding of Student Misconceptions
ICER '17: Proceedings of the 2017 ACM Conference on International Computing Education ResearchThe operation of the notional machine presents a hidden but crucial process in students' understanding of introductory programming. When students trace though code, simulating the operation of the notional machine, this hidden operation becomes evident. ...
Further evidence of a relationship between explaining, tracing and writing skills in introductory programming
ITiCSE '09This paper reports on a replication of earlier studies into a possible hierarchy of programming skills. In this study, the students from whom data was collected were at a university that had not provided data for earlier studies. Also, the students were ...
Comments