skip to main content
10.1145/3105726.3106190acmconferencesArticle/Chapter ViewAbstractPublication PagesicerConference Proceedingsconference-collections
research-article

Using Tracing and Sketching to Solve Programming Problems: Replicating and Extending an Analysis of What Students Draw

Published:14 August 2017Publication History

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.

References

  1. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  2. Paul Chandler and John Sweller. 1991. Cognitive load theory and the format of instruction. Cognition and instruction 8, 4 (1991), 293--332. Google ScholarGoogle ScholarCross RefCross Ref
  3. 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 ScholarGoogle ScholarCross RefCross Ref
  4. 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 ScholarGoogle ScholarCross RefCross Ref
  5. 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 ScholarGoogle ScholarCross RefCross Ref
  6. 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 ScholarGoogle ScholarCross RefCross Ref
  7. 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 ScholarGoogle Scholar
  8. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  9. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  10. Edwin Hutchins. 1995. How a cockpit remembers its speeds. Cognitive science 19, 3 (1995), 265--288. Google ScholarGoogle ScholarCross RefCross Ref
  11. 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 ScholarGoogle Scholar
  12. 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 ScholarGoogle Scholar
  13. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  14. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  15. Linxiao Ma. 2007. Investigating and improving novice programmers' mental models of programming concepts. Ph.D. Dissertation. University of Strathclyde.Google ScholarGoogle Scholar
  16. 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 ScholarGoogle Scholar
  17. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  18. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  19. Roy D Pea. 1993. Practices of distributed intelligence and designs for education. Distributed cognitions: Psychological and educational considerations 11 (1993).Google ScholarGoogle Scholar
  20. Robert S. Rist. 1989. Schema Creation in Programming. Cognitive Science 13, 3 (1989), 389--414. DOI:http://dx.doi.org/10.1207/s15516709cog1303 3Google ScholarGoogle ScholarCross RefCross Ref
  21. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  22. 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 ScholarGoogle ScholarCross RefCross Ref
  23. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  24. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  25. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  26. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  27. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  28. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  29. 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 ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Using Tracing and Sketching to Solve Programming Problems: Replicating and Extending an Analysis of What Students Draw

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    ICER '17: Proceedings of the 2017 ACM Conference on International Computing Education Research
    August 2017
    316 pages
    ISBN:9781450349680
    DOI:10.1145/3105726

    Copyright © 2017 ACM

    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 ACM 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]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 14 August 2017

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article

    Acceptance Rates

    ICER '17 Paper Acceptance Rate29of180submissions,16%Overall Acceptance Rate189of803submissions,24%

    Upcoming Conference

    ICER 2024
    ACM Conference on International Computing Education Research
    August 13 - 15, 2024
    Melbourne , VIC , Australia

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader