The Programmer's Assistant: Conversational Interaction with a Large Language Model for Software Development
Steven I. Ross, Fernando Martinez, Stephanie Houde, Michael Muller,, Justin D. Weisz

TL;DR
This paper introduces the Programmer's Assistant, a conversational system with large language models that enables multi-turn, context-aware interactions to assist software developers, demonstrating improved engagement and productivity in coding tasks.
Contribution
The paper presents a novel conversational interface for LLMs in software development, enabling context-aware, multi-turn interactions that enhance user engagement and expand the assistant's capabilities.
Findings
Participants found the system capable of extended discussions.
The assistant's responses were rated as high quality.
The system showed potential to improve developer productivity.
Abstract
Large language models (LLMs) have recently been applied in software engineering to perform tasks such as translating code between programming languages, generating code from natural language, and autocompleting code as it is being written. When used within development tools, these systems typically treat each model invocation independently from all previous invocations, and only a specific limited functionality is exposed within the user interface. This approach to user interaction misses an opportunity for users to more deeply engage with the model by having the context of their previous interactions, as well as the context of their code, inform the model's responses. We developed a prototype system -- the Programmer's Assistant -- in order to explore the utility of conversational interactions grounded in code, as well as software engineers' receptiveness to the idea of conversing…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
