Explaining Code with a Purpose: An Integrated Approach for Developing Code Comprehension and Prompting Skills

Paul Denny, David H. Smith, Max Fowler, James Prather, Brett A. Becker, Juho Leinonen

Research output: Chapter in Book/Report/Conference proceedingConference article in proceedingsScientificpeer-review

13 Citations (Scopus)
19 Downloads (Pure)

Abstract

Reading, understanding and explaining code have traditionally been important skills for novices learning programming. As large language models (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.

Original languageEnglish
Title of host publicationITiCSE 2024 - Proceedings of the 2024 Conference Innovation and Technology in Computer Science Education
PublisherACM
Pages283-289
Number of pages7
ISBN (Electronic)979-8-4007-0600-4
DOIs
Publication statusPublished - 3 Jul 2024
MoE publication typeA4 Conference publication
EventAnnual Conference on Innovation & Technology in Computer Science Education - Università degli Studi di Milano, Milan, Italy
Duration: 8 Jul 202410 Jul 2024
Conference number: 29
https://iticse.acm.org/2024/

Conference

ConferenceAnnual Conference on Innovation & Technology in Computer Science Education
Abbreviated titleITiCSE
Country/TerritoryItaly
CityMilan
Period08/07/202410/07/2024
Internet address

Keywords

  • code comprehension
  • cs1
  • eipe
  • explain in plan english
  • introductory programming
  • large language models
  • llms
  • prompting

Fingerprint

Dive into the research topics of 'Explaining Code with a Purpose: An Integrated Approach for Developing Code Comprehension and Prompting Skills'. Together they form a unique fingerprint.

Cite this