Table of Contents
Fetching ...

Automating Personalized Parsons Problems with Customized Contexts and Concepts

Andre del Carpio Gutierrez, Paul Denny, Andrew Luxton-Reilly

TL;DR

PuzzleMakerPy leverages an LLM to auto-generate unlimited personalized Parsons problems with controllable contexts and programming concepts, addressing the scalability challenge in introductory programming education. Deployed in a large CS1 course, it elicited strong student engagement and perceived learning benefits, with users actively selecting contexts and concepts and some providing custom contexts. The tool uses a careful prompting and filtering pipeline to produce concise problem statements and valid drag-and-drop solutions, balancing content quality with responsiveness. Overall, the work demonstrates the practicality of automated, personalized resource generation for CS education and offers design insights for future LLM-based teaching aids.

Abstract

Parsons problems provide useful scaffolding for introductory programming students learning to write code. However, generating large numbers of high-quality Parsons problems that appeal to the diverse range of interests in a typical introductory course is a significant challenge for educators. Large language models (LLMs) may offer a solution, by allowing students to produce on-demand Parsons problems for topics covering the breadth of the introductory programming curriculum, and targeting thematic contexts that align with their personal interests. In this paper, we introduce PuzzleMakerPy, an educational tool that uses an LLM to generate unlimited contextualized drag-and-drop programming exercises in the form of Parsons Problems, which introductory programmers can use as a supplemental learning resource. We evaluated PuzzleMakerPy by deploying it in a large introductory programming course, and found that the ability to personalize the contextual framing used in problem descriptions was highly engaging for students, and being able to customize the programming topics was reported as being useful for their learning.

Automating Personalized Parsons Problems with Customized Contexts and Concepts

TL;DR

PuzzleMakerPy leverages an LLM to auto-generate unlimited personalized Parsons problems with controllable contexts and programming concepts, addressing the scalability challenge in introductory programming education. Deployed in a large CS1 course, it elicited strong student engagement and perceived learning benefits, with users actively selecting contexts and concepts and some providing custom contexts. The tool uses a careful prompting and filtering pipeline to produce concise problem statements and valid drag-and-drop solutions, balancing content quality with responsiveness. Overall, the work demonstrates the practicality of automated, personalized resource generation for CS education and offers design insights for future LLM-based teaching aids.

Abstract

Parsons problems provide useful scaffolding for introductory programming students learning to write code. However, generating large numbers of high-quality Parsons problems that appeal to the diverse range of interests in a typical introductory course is a significant challenge for educators. Large language models (LLMs) may offer a solution, by allowing students to produce on-demand Parsons problems for topics covering the breadth of the introductory programming curriculum, and targeting thematic contexts that align with their personal interests. In this paper, we introduce PuzzleMakerPy, an educational tool that uses an LLM to generate unlimited contextualized drag-and-drop programming exercises in the form of Parsons Problems, which introductory programmers can use as a supplemental learning resource. We evaluated PuzzleMakerPy by deploying it in a large introductory programming course, and found that the ability to personalize the contextual framing used in problem descriptions was highly engaging for students, and being able to customize the programming topics was reported as being useful for their learning.
Paper Structure (19 sections, 6 figures, 5 tables)

This paper contains 19 sections, 6 figures, 5 tables.

Figures (6)

  • Figure 1: A diagram illustrating the architecture and information flow of PuzzleMakerPy.
  • Figure 2: An image illustrating how a student would interact with PuzzleMakerPy when selecting their context and programming concepts to create a programming exercise.
  • Figure 3: An image illustrating PuzzleMakerPy's interface for generated problem statements.
  • Figure 4: An image illustrating PuzzleMakerPy's drag-and-drop interface for code solutions.
  • Figure 5: An image illustrating how PuzzleMakerPy provides feedback for a solution containing incorrect indentation.
  • ...and 1 more figures