What is it like to program with artificial intelligence?

08/12/2022
by   Advait Sarkar, et al.
30

Large language models, such as OpenAI's codex and Deepmind's AlphaCode, can generate code to solve a variety of problems expressed in natural language. This technology has already been commercialised in at least one widely-used programming editor extension: GitHub Copilot. In this paper, we explore how programming with large language models (LLM-assisted programming) is similar to, and differs from, prior conceptualisations of programmer assistance. We draw upon publicly available experience reports of LLM-assisted programming, as well as prior usability and design studies. We find that while LLM-assisted programming shares some properties of compilation, pair programming, and programming via search and reuse, there are fundamental differences both in the technical possibilities as well as the practical experience. Thus, LLM-assisted programming ought to be viewed as a new way of programming with its own distinct properties and challenges. Finally, we draw upon observations from a user study in which non-expert end user programmers use LLM-assisted tools for solving data tasks in spreadsheets. We discuss the issues that might arise, and open research challenges, in applying large language models to end-user programming, particularly with users who have little or no programming expertise.

READ FULL TEXT

page 1

page 5

page 6

page 17

research
09/19/2023

How Do Analysts Understand and Verify AI-Assisted Data Analyses?

Data analysis is challenging as it requires synthesizing domain knowledg...
research
06/08/2023

Is AI the better programming partner? Human-Human Pair Programming vs. Human-AI pAIr Programming

The emergence of large-language models (LLMs) that excel at code generat...
research
07/08/2023

Copilot for Xcode: Exploring AI-Assisted Programming by Prompting Cloud-based Large Language Models

This paper presents an AI-assisted programming tool called Copilot for X...
research
06/23/2023

LLM-Assisted Content Analysis: Using Large Language Models to Support Deductive Coding

Deductive coding is a widely used qualitative research method for determ...
research
05/20/2023

CodeCompose: A Large-Scale Industrial Deployment of AI-assisted Code Authoring

The rise of large language models (LLMs) has unlocked various applicatio...
research
06/30/2022

Grounded Copilot: How Programmers Interact with Code-Generating Models

Powered by recent advances in code-generating models, AI assistants like...

Please sign up or login with your details

Forgot password? Click here to reset