Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
38 tokens/sec
GPT-4o
59 tokens/sec
Gemini 2.5 Pro Pro
41 tokens/sec
o3 Pro
7 tokens/sec
GPT-4.1 Pro
50 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

Explaining Code with a Purpose: An Integrated Approach for Developing Code Comprehension and Prompting Skills (2403.06050v1)

Published 10 Mar 2024 in cs.HC, cs.CY, and cs.SE

Abstract: Reading, understanding and explaining code have traditionally been important skills for novices learning programming. As LLMs become prevalent, these foundational skills are more important than ever given the increasing need to understand and evaluate model-generated code. Brand new skills are also needed, such as the ability to formulate clear prompts that can elicit intended code from an LLM. Thus, there is great interest in integrating pedagogical approaches for the development of both traditional coding competencies and the novel skills required to interact with LLMs. One effective way to develop and assess code comprehension ability is with ``Explain in plain English'' (EiPE) questions, where students succinctly explain the purpose of a fragment of code. However, grading EiPE questions has always been difficult given the subjective nature of evaluating written explanations and this has stifled their uptake. In this paper, we explore a natural synergy between EiPE questions and code-generating LLMs to overcome this limitation. We propose using an LLM to generate code based on students' responses to EiPE questions -- not only enabling EiPE responses to be assessed automatically, but helping students develop essential code comprehension and prompt crafting skills in parallel. We investigate this idea in an introductory programming course and report student success in creating effective prompts for solving EiPE questions. We also examine student perceptions of this activity and how it influences their views on the use of LLMs for aiding and assessing learning.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (36)
  1. An Analysis of Using Many Small Programs in CS1 (SIGCSE ’19). ACM, NY, NY, USA, 585–591. https://doi.org/10.1145/3287324.3287466
  2. Strategies for deploying unreliable AI graders in high-transparency high-stakes exams. In Artificial Intelligence in Education: 21st International Conference, AIED 2020, Ifrane, Morocco, July 6–10, 2020, Proceedings, Part I 21. Springer, 16–28.
  3. Programming Is Hard - Or at Least It Used to Be: Educational Opportunities and Challenges of AI Code Generation. In Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 1 (Toronto ON, Canada) (SIGCSE 2023). Association for Computing Machinery, New York, NY, USA, 500–506. https://doi.org/10.1145/3545945.3569759
  4. John B Biggs and Kevin F Collis. 2014. Evaluating the quality of learning: The SOLO taxonomy (Structure of the Observed Learning Outcome). Academic Press.
  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/1478088706qp063oa
  6. Analysis of Code Reading to Gain More Insight in Program Comprehension. In Proceedings of the 11th Koli Calling International Conference on Computing Education Research (Koli, Finland) (Koli Calling ’11). Association for Computing Machinery, New York, NY, USA, 1–9. https://doi.org/10.1145/2094131.2094133
  7. A validated scoring rubric for explain-in-plain-english questions. In Proc. of the 51st ACM Tech Symp on CS Education. 563–569.
  8. Bruno Pereira Cipriano and Pedro Alves. 2023. Gpt-3 vs object oriented programming assignments: An experience report. In Proceedings of the 2023 Conference on Innovation and Technology in Computer Science Education V. 1. 61–67.
  9. Explain in Plain English Questions Revisited: Data Structures Problems. In Proc. of the 45th ACM Tech Symp on CS Education (Atlanta, Georgia, USA) (SIGCSE ’14). ACM, New York, NY, USA, 591–596. https://doi.org/10.1145/2538862.2538911
  10. Conversing with Copilot: Exploring Prompt Engineering for Solving CS1 Problems Using Natural Language. In Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 1 (Toronto, Canada) (SIGCSE 2023). Association for Computing Machinery, New York, NY, USA, 1136–1142. https://doi.org/10.1145/3545945.3569823
  11. Prompt Problems: A New Programming Exercise for the Generative AI Era. In Proceedings of the 55th ACM Technical Symposium on Computer Science Education V. 1 (Portland, OR, USA) (SIGCSE 2024). Association for Computing Machinery, New York, NY, USA, 296–302. https://doi.org/10.1145/3626252.3630909
  12. Computing Education in the Era of Generative AI. Commun. ACM 67, 2 (Jan 2024), 56–67. https://doi.org/10.1145/3624720
  13. The robots are coming: Exploring the implications of openai codex on introductory programming. In Proceedings of the 24th Australasian Computing Education Conference. 10–19.
  14. My AI Wants to Know If This Will Be on the Exam: Testing OpenAI’s Codex on CS2 Programming Exercises (ACE ’23). ACM, NY, NY, USA, 97–104. https://doi.org/10.1145/3576123.3576134
  15. Autograding ”Explain in Plain English” Questions Using NLP. In Proc of the 52nd ACM Tech Sym on S Education (Virtual Event, USA) (SIGCSE ’21). ACM, New York, NY, USA, 1163–1169. https://doi.org/10.1145/3408877.3432539
  16. How Should We ‘Explain in Plain English’? Voices from the Community. In Proc of the 17th ACM Conf on Int Comp Ed Research (Virtual Event, USA) (ICER 2021). ACM, New York, NY, USA, 69–80. https://doi.org/10.1145/3446871.3469738
  17. How should we ‘Explain in plain English’? Voices from the Community. In Proceedings of the 17th ACM conference on international computing education research. 69–80.
  18. Mohammed Hassan and Craig Zilles. 2021. Exploring ‘reverse-Tracing’ Questions as a Means of Assessing the Tracing Skill on Computer-Based CS 1 Exams. In Proc. of the 17th ACM Conf. on Int. Comp. Ed. Research (Virtual Event, USA) (ICER 2021). ACM, New York, NY, USA, 115–126. https://doi.org/10.1145/3446871.3469765
  19. Viraj Kumar and Arun Raman. 2023. Helping Students Develop a Critical Eye with Refute Questions. In Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 2 (Toronto ON, Canada) (SIGCSE 2023). ACM, New York, NY, USA, 1181. https://doi.org/10.1145/3545947.3569636
  20. Am I Wrong, or Is the Autograder Wrong? Effects of AI Grading Mistakes on Learning. In Proc. of the 2023 ACM Conference on International Computing Education Research - Volume 1 (Chicago, IL, USA) (ICER ’23). ACM, New York, NY, USA, 159–176. https://doi.org/10.1145/3568813.3600124
  21. Not seeing the forest for the trees: novice programmers and the SOLO taxonomy. ACM SIGCSE Bulletin 38, 3 (2006), 118–122.
  22. Mary L McHugh. 2012. Interrater reliability: the kappa statistic. Biochemia medica 22, 3 (2012), 276–282.
  23. Maria Medvidova and Jaroslav Porubän. 2022. Program Comprehension and Quality Experiments in Programming Education. In Third Int. Comp Prog Ed Conf (ICPEC 2022) (Open Access Series in Informatics (OASIcs), Vol. 102), Alberto Simões and João Carlos Silva (Eds.). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany, 14:1–14:12. https://doi.org/10.4230/OASIcs.ICPEC.2022.14
  24. Ability to ’explain in Plain English’ Linked to Proficiency in Computer-Based Programming. In Proc. of the 9th Annual International Conference on International Computing Education Research (Auckland, New Zealand) (ICER ’12). ACM, New York, NY, USA, 111–118. https://doi.org/10.1145/2361276.2361299
  25. ’Explain in Plain English’ Questions: Implications for Teaching. In Proceedings of the 43rd ACM Technical Symposium on Computer Science Education (Raleigh, North Carolina, USA) (SIGCSE ’12). Association for Computing Machinery, New York, NY, USA, 385–390. https://doi.org/10.1145/2157136.2157249
  26. The Robots Are Here: Navigating the Generative AI Revolution in Computing Education. In Proceedings of the 2023 Working Group Reports on Innovation and Technology in Computer Science Education (Turku, Finland) (ITiCSE-WGR ’23). Association for Computing Machinery, New York, NY, USA, 108–159. https://doi.org/10.1145/3623762.3633499
  27. Arun Raman and Viraj Kumar. 2022. Programming pedagogy and assessment in the era of AI/ML: A position paper. In Proceedings of the 15th Annual ACM India Compute Conference. 29–34.
  28. Automatic Generation of Programming Exercises and Code Explanations Using Large Language Models. In Proc of the 2022 ACM Conf on Int Comp Ed Research - Volume 1 (Lugano, Switzerland) (ICER ’22). ACM, New York, NY, USA, 27–43. https://doi.org/10.1145/3501385.3543957
  29. Thrilled by Your Progress! Large Language Models (GPT-4) No Longer Struggle to Pass Assessments in Higher Education Programming Courses. In Proceedings of the 2023 ACM Conference on International Computing Education Research - Volume 1 (Chicago, IL, USA) (ICER ’23). Association for Computing Machinery, New York, NY, USA, 78–92. https://doi.org/10.1145/3568813.3600142
  30. Instructor Perceptions of AI Code Generation Tools - A Multi-Institutional Interview Study. In Proc of the 55th ACM Tech Sym on CS Education V. 1 (Portland, OR, USA) (SIGCSE 2024). ACM, New York, NY, USA, 1223–1229. https://doi.org/10.1145/3626252.3630880
  31. Patterns of Student Help-Seeking When Using a Large Language Model-Powered Programming Assistant. In Proceedings of the 26th Australasian Computing Education Conference (Sydney, Australia) (ACE ’24). Association for Computing Machinery, New York, NY, USA, 49–57. https://doi.org/10.1145/3636243.3636249
  32. David H. Smith IV and Craig Zilles. [n. d.]. Code Generation Based Grading: Evaluating an Auto-grading Mechanism for “Explain-in-Plain-English” Questions. arXiv:2311.14903 [cs.CY]
  33. Code Comprehension Problems as Learning Events. In Proceedings of the 17th ACM Annual Conference on Innovation and Technology in Computer Science Education (Haifa, Israel) (ITiCSE ’12). Association for Computing Machinery, New York, NY, USA, 81–86. https://doi.org/10.1145/2325296.2325319
  34. Alaaeddin Swidan and Felienne Hermans. 2019. The Effect of Reading Code Aloud on Comprehension: An Empirical Study with School Students. In Proceedings of the ACM Conference on Global Computing Education (Chengdu,Sichuan, China) (CompEd ’19). Association for Computing Machinery, New York, NY, USA, 178–184. https://doi.org/10.1145/3300115.3309504
  35. Towards an Assessment Rubric for EiPE Tasks in Secondary Education: Identifying Quality Indicators and Descriptors. In Proc. of the 20th Koli Calling International Conf. on Computing Ed. Research (Koli, Finland) (Koli Calling ’20). ACM, New York, NY, USA, Article 30, 10 pages. https://doi.org/10.1145/3428029.3428031
  36. PrairieLearn: Mastery-based online problem solving with adaptive scoring and recommendations driven by machine learning. In 2015 ASEE Annual Conference & Exposition. 26–1238.
User Edit Pencil Streamline Icon: https://streamlinehq.com
Authors (6)
  1. Paul Denny (67 papers)
  2. David H. Smith IV (29 papers)
  3. Max Fowler (5 papers)
  4. James Prather (21 papers)
  5. Brett A. Becker (14 papers)
  6. Juho Leinonen (41 papers)
Citations (10)
X Twitter Logo Streamline Icon: https://streamlinehq.com