Programming in Plain Language: Preparing Novice Programmers for the Era of Human–GenAI Collaborative Coding

Speaker: David Smith, Assistant Professor, Virginia Tech

Date: 12 January 2026

YouTube link: https://youtu.be/8BoL6oaOYxk

The talk on ‘Programming in Plain Language: Preparing Novice Programmers for the Era of Human–GenAI Collaborative Coding’ by David Smith was organised by KIAC. The attendees were from different departments in IISc and other institutes such as the Cambridge Institute of Technology and TIFR-Centre for Applicable Mathematics. Industry professionals also attended the talk. A summary of the talk is provided below.

The rise of GenAI and GenAI programming assistants is, in many ways, redefining what it means to program. This is, in turn, causing a great period of reflection on what skills we should be equipping novice programmers with in order to be successful—particularly in introductory courses. In the past, these courses focused on syntax mastery and equipping students with the ability to write code, typically beginning with individual functions and ending with small programs, from scratch. However, as these GenAI assistants are now able to generate whole programs from natural language descriptions, many are suggesting we should be shifting towards emphasising skills such as problem decomposition, specification, testing, code comprehension, and prompting. In this talk, David Smith covered the current conversations, pedagogy, and state-of-the-art tools that are shaping how programming is being redefined in the era of GenAI, highlighting both the promises and risks of this transformation. He then shared his research on enabling scalable, formative practice in two core areas that are becoming increasingly essential: code comprehension and prompting. A central focus here was the ‘Explain in Plain English’ (EiPE) question, a long-standing novice programming problem where students are asked to describe, in natural language, what a given piece of code does. By leveraging large language models, David has explored ways to enable autograding of EiPE tasks by transforming student responses back into code for automated evaluation, thus providing immediate and actionable feedback to students in formative environments. Finally, he discussed his current and future work on ‘natural language programming’ in linguistically diverse environments.