Supporting Novice Programmers: Developing and Evaluating Interactive Programming Activities for Assessment and Instruction
David Smith (University of Illinois Urbana-Champaign)
Colloquium
Tuesday, February 18, 2025, 3:30 pm
Gates Center (CSE2), G20 | Amazon Auditorium
Abstract
Effective instruction at scale requires ways to scaffold the process of learning to code for large groups of students and evaluate their learning thorough exams. The ever increasing need for effective, high quality assessment at scale and the rise of Generative AI (GenAI) is transforming computing education. In the past, introductory computing courses were primarily concerned with equipping students with the skills needed to write code independently and could leverage more open ended exercises. Meanwhile, in the age of GenAI, many are suggesting that skills such as the ability to describe computational tasks through natural language and comprehend the resulting generated code should receive further emphasis.
This talk explores David's work on developing and evaluating exercises for novice programmers with a focus on Parsons problems and Explain in Plain English (EiPE) Questions. EiPE activities, which aim to develop code comprehension by providing students with a segment of code and asking them to describe that code’s purpose. Parsons' problems aim to scaffold the process of learning to write code by having students construct programs from “blocks” which contain one or more lines of existing code. In particular, this talk will focus on the methodology involved in evaluating these activities in formative and summative contexts, with a focus on how such methodology can be applied to to adapt or create new exercises aimed at developing the skills needed for novices to successfully navigate the age of human-GenAI collaborative coding.
Bio
David Smith is a 5th-year Ph.D candidate at the University of Illinois Urbana-Champaign in the Siebel School of Computing and Data Science. His research focuses on developing and assessing innovative tools and techniques to support novice programmers. His current work explores topics such as the integration of generative AI tools in programming education, the development and evaluation of multilingual code comprehension activities, and Parsons problems—a programming activity designed to scaffold the process of learning to write code.
This talk will be streamed live on our YouTube channel. Link will be available on that page one hour prior to the event.