skip to main content
10.1145/3491101.3519655acmconferencesArticle/Chapter ViewAbstractPublication PageschiConference Proceedingsconference-collections
poster

On How Novices Approach Programming Exercises Before and During Coding

Authors Info & Claims
Published:28 April 2022Publication History

ABSTRACT

Various tools and approaches are available to support undergraduate students learning to program. Most of them concentrate on the code and aim to ease the visualization of data structures or guide the debugging. However, in undergraduate introductory courses, students are typically given exercises in the form of a natural language problem. Deriving a correct solution largely depends on the problem-solving strategy they adopt rather than on their proficiency in dealing with the syntax and semantics of the code. Indeed, they face various challenges (apart from the coding), such as identifying the relevant information, stating the algorithmic steps to solve it, breaking it into smaller parts, and evaluating the implemented solution. To our knowledge, almost no attention has been paid to supporting such problem-solving strategies before and during the coding. This paper reports an interview and a sketching exercise with 10 participants exploring how the novices approach the programming exercises from a problem-solving perspective and how they imagine a tool to support their cognitive process. Findings show that students intuitively perform various actions over the exercise text, and they would appreciate having support from the development environment. Accordingly, based on these findings, we provide implications for designing tools to support problem-solving strategies.

References

  1. M. Adeli, N. Nelson, S. Chattopadhyay, H. Coffey, A. Henley, and A. Sarma. 2020. Supporting Code Comprehension via Annotations: Right Information at the Right Time and Place. In 2020 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC). 1–10. https://doi.org/10.1109/VL/HCC50065.2020.9127264Google ScholarGoogle ScholarCross RefCross Ref
  2. Umair Z. Ahmed, Nisheeth Srivastava, Renuka Sindhgatta, and Amey Karkare. 2020. Characterizing the Pedagogical Benefits of Adaptive Feedback for Compilation Errors by Novice Programmers. In Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Software Engineering Education and Training (Seoul, South Korea) (ICSE-SEET ’20). Association for Computing Machinery, New York, NY, USA, 139–150. https://doi.org/10.1145/3377814.3381703Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Valerie Barr and Chris Stephenson. 2011. Bringing Computational Thinking to K-12: What is Involved and What is the Role of the Computer Science Education Community?ACM Inroads 2, 1 (feb 2011), 48–54. https://doi.org/10.1145/1929887.1929905Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Brett A. Becker. 2016. An Effective Approach to Enhancing Compiler Error Messages. In Proceedings of the 47th ACM Technical Symposium on Computing Science Education (Memphis, Tennessee, USA) (SIGCSE ’16). Association for Computing Machinery, New York, NY, USA, 126–131. https://doi.org/10.1145/2839509.2844584Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Virginia Braun and Victoria Clarke. 2006. Using thematic analysis in psychology. Qualitative Research in Psychology 3, 2 (2006), 77–101. https://doi.org/10.1191/1478088706qp063oaGoogle ScholarGoogle ScholarCross RefCross Ref
  6. Angela Carbone, John Hurst, Ian Mitchell, and Dick Gunstone. 2009. An Exploration of Internal Factors Influencing Student Learning of Programming. In Proceedings of the Eleventh Australasian Conference on Computing Education - Volume 95(Wellington, New Zealand) (ACE ’09). Australian Computer Society, Inc., AUS, 25–34.Google ScholarGoogle Scholar
  7. Paul Denny, James Prather, Brett A. Becker, Catherine Mooney, John Homer, Zachary C Albrecht, and Garrett B. Powell. 2021. On Designing Programming Error Messages for Novices: Readability and Its Constituent Factors. Association for Computing Machinery, New York, NY, USA.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Alireza Ebrahimi. 1994. Novice programmer errors: language constructs and plan composition. International Journal of Human-Computer Studies 41, 4 (1994), 457–480. https://doi.org/10.1006/ijhc.1994.1069Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Jamie Gorson and Eleanor O’Rourke. 2019. How Do Students Talk About Intelligence? An Investigation of Motivation, Self-Efficacy, and Mindsets in Computer Science. In Proceedings of the 2019 ACM Conference on International Computing Education Research (Toronto ON, Canada) (ICER ’19). Association for Computing Machinery, New York, NY, USA, 21–29. https://doi.org/10.1145/3291279.3339413Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Shuchi Grover and Roy Pea. 2013. Computational Thinking in K–12: A Review of the State of the Field. Educational Researcher 42, 1 (2013), 38–43. https://doi.org/10.3102/0013189X12463051Google ScholarGoogle ScholarCross RefCross Ref
  11. Hyeonsu Kang and Philip J. Guo. 2017. Omnicode: A Novice-Oriented Live Programming Environment with Always-On Run-Time Value Visualizations. In Proceedings of the 30th Annual ACM Symposium on User Interface Software and Technology (Québec City, QC, Canada) (UIST ’17). Association for Computing Machinery, New York, NY, USA, 737–745. https://doi.org/10.1145/3126594.3126632Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Hieke Keuning, Johan Jeuring, and Bastiaan Heeren. 2018. A Systematic Literature Review of Automated Feedback Generation for Programming Exercises. ACM Trans. Comput. Educ. 19, 1, Article 3 (Sept. 2018), 43 pages. https://doi.org/10.1145/3231711Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Essi Lahtinen, Kirsti Ala-Mutka, and Hannu-Matti Järvinen. 2005. A Study of the Difficulties of Novice Programmers. In Proceedings of the 10th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (Caparica, Portugal) (ITiCSE ’05). Association for Computing Machinery, New York, NY, USA, 14–18. https://doi.org/10.1145/1067445.1067453Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Rina P. Y. Lai. 2021. Beyond Programming: A Computer-Based Assessment of Computational Thinking Competency. ACM Trans. Comput. Educ. 22, 2, Article 14 (nov 2021), 27 pages. https://doi.org/10.1145/3486598Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Raymond Lister, Beth Simon, Errol Thompson, Jacqueline L. Whalley, and Christine Prasad. 2006. Not Seeing the Forest for the Trees: Novice Programmers and the SOLO Taxonomy. In Proceedings of the 11th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (Bologna, Italy) (ITICSE ’06). Association for Computing Machinery, New York, NY, USA, 118–122. https://doi.org/10.1145/1140124.1140157Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Dastyni Loksa and Andrew J. Ko. 2016. The Role of Self-Regulation in Programming Problem Solving Process and Success. In Proceedings of the 2016 ACM Conference on International Computing Education Research(Melbourne, VIC, Australia) (ICER ’16). Association for Computing Machinery, New York, NY, USA, 83–91. https://doi.org/10.1145/2960310.2960334Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Dastyni Loksa, Andrew J. Ko, Will Jernigan, Alannah Oleson, Christopher J. Mendez, and Margaret M. Burnett. 2016. Programming, Problem Solving, and Self-Awareness: Effects of Explicit Guidance. In Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems (San Jose, California, USA) (CHI ’16). Association for Computing Machinery, New York, NY, USA, 1449–1461. https://doi.org/10.1145/2858036.2858252Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Andrew Luxton-Reilly, Simon, Ibrahim Albluwi, Brett A. Becker, Michail Giannakos, Amruth N. Kumar, Linda Ott, James Paterson, Michael James Scott, Judy Sheard, and Claudia Szabo. 2018. Introductory Programming: A Systematic Literature Review. In Proceedings Companion of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education (Larnaca, Cyprus) (ITiCSE 2018 Companion). Association for Computing Machinery, New York, NY, USA, 55–106. https://doi.org/10.1145/3293881.3295779Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Monica M. McGill and Adrienne Decker. 2020. Construction of a Taxonomy for Tools, Languages, and Environments across Computing Education. In Proceedings of the 2020 ACM Conference on International Computing Education Research (Virtual Event, New Zealand) (ICER ’20). Association for Computing Machinery, New York, NY, USA, 124–135. https://doi.org/10.1145/3372782.3406258Google ScholarGoogle Scholar
  20. Rodrigo Pessoa Medeiros, Geber Lisboa Ramalho, and Taciana Pontual Falcão. 2019. A Systematic Literature Review on Teaching and Learning Introductory Programming in Higher Education. IEEE Transactions on Education 62, 2 (2019), 77–90. https://doi.org/10.1109/TE.2018.2864133Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. 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. In Working Group Reports on ITiCSE on Innovation and Technology in Computer Science Education(Dundee, Scotland) (ITiCSE-WGR ’07). Association for Computing Machinery, New York, NY, USA, 204–223. https://doi.org/10.1145/1345443.1345441Google ScholarGoogle Scholar
  22. James Prather, Raymond Pettit, Brett A. Becker, Paul Denny, Dastyni Loksa, Alani Peters, Zachary Albrecht, and Krista Masci. 2019. First Things First: Providing Metacognitive Scaffolding for Interpreting Problem Prompts. In Proceedings of the 50th ACM Technical Symposium on Computer Science Education (Minneapolis, MN, USA) (SIGCSE ’19). Association for Computing Machinery, New York, NY, USA, 531–537. https://doi.org/10.1145/3287324.3287374Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Yizhou Qian and James Lehman. 2017. Students’ Misconceptions and Other Difficulties in Introductory Programming: A Literature Review. ACM Trans. Comput. Educ. 18, 1, Article 1 (Oct. 2017), 24 pages. https://doi.org/10.1145/3077618Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Jonathan C. Roberts, Panagiotis D. Ritsos, James R. Jackson, and Christopher Headleand. 2018. The Explanatory Visualization Framework: An Active Learning Framework for Teaching Creative Computing Using Explanatory Visualizations. IEEE Transactions on Visualization and Computer Graphics 24, 1(2018), 791–801. https://doi.org/10.1109/TVCG.2017.2745878Google ScholarGoogle ScholarCross RefCross Ref
  25. Anthony Robins, Janet Rountree, and Nathan Rountree. 2003. Learning and Teaching Programming: A Review and Discussion. Computer Science Education 13, 2 (2003), 137–172. https://doi.org/10.1076/csed.13.2.137.14200 arXiv:https://doi.org/10.1076/csed.13.2.137.14200Google ScholarGoogle ScholarCross RefCross Ref
  26. Neil Smith, Mike Richards, and Daniel G. Cabrero. 2018. Summer of Code: Assisting Distance-Learning Students with Open-Ended Programming Tasks. In Proceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education (Larnaca, Cyprus) (ITiCSE 2018). Association for Computing Machinery, New York, NY, USA, 224–229. https://doi.org/10.1145/3197091.3197119Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Juha Sorva, Ville Karavirta, and Lauri Malmi. 2013. A Review of Generic Program Visualization Systems for Introductory Programming Education. ACM Trans. Comput. Educ. 13, 4, Article 15 (Nov. 2013), 64 pages. https://doi.org/10.1145/2490822Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. J. Ángel Velázquez-Iturbide, Isidoro Hernán-Losada, and Maximiliano Paredes-Velasco. 2017. Evaluating the Effect of Program Visualization on Student Motivation. IEEE Transactions on Education 60, 3 (2017), 238–245. https://doi.org/10.1109/TE.2017.2648781Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Mauricio Verano Merino and Tijs van der Storm. 2020. Block-Based Syntax from Context-Free Grammars. In Proceedings of the 13th ACM SIGPLAN International Conference on Software Language Engineering (Virtual, USA) (SLE 2020). Association for Computing Machinery, New York, NY, USA, 283–295. https://doi.org/10.1145/3426425.3426948Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Jeannette M. Wing. 2006. Computational Thinking. Commun. ACM 49, 3 (mar 2006), 33–35. https://doi.org/10.1145/1118178.1118215Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. On How Novices Approach Programming Exercises Before and During Coding
        Index terms have been assigned to the content through auto-classification.

        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
          CHI EA '22: Extended Abstracts of the 2022 CHI Conference on Human Factors in Computing Systems
          April 2022
          3066 pages
          ISBN:9781450391566
          DOI:10.1145/3491101

          Copyright © 2022 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: 28 April 2022

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • poster
          • Research
          • Refereed limited

          Acceptance Rates

          Overall Acceptance Rate6,164of23,696submissions,26%

          Upcoming Conference

          CHI '24
          CHI Conference on Human Factors in Computing Systems
          May 11 - 16, 2024
          Honolulu , HI , USA

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        HTML Format

        View this article in HTML Format .

        View HTML Format