Productivity Assessment of Neural Code Completion

05/13/2022
by   Albert Ziegler, et al.
0

Neural code synthesis has reached a point where snippet generation is accurate enough to be considered for integration into human software development workflows. Commercial products aim to increase programmers' productivity, without being able to measure it directly. In this case study, we asked users of GitHub Copilot about its impact on their productivity, and sought to find a reflection of their perception in directly measurable user data. We find that the rate with which shown suggestions are accepted, rather than more specific metrics regarding the persistence of completions in the code over time, drives developers' perception of productivity.

READ FULL TEXT

page 4

page 5

page 6

research
08/17/2020

A Deep Dive on the Impact of COVID-19 in Software Development

Context: COVID-19 pandemic has impacted different business sectors aroun...
research
02/13/2023

The Impact of AI on Developer Productivity: Evidence from GitHub Copilot

Generative AI tools hold promise to increase human productivity. This pa...
research
09/13/2022

Learning to Prevent Profitless Neural Code Completion

Currently, large pre-trained models are widely applied in neural code co...
research
04/18/2023

The Unintended Consequences of Censoring Digital Technology – Evidence from Italy's ChatGPT Ban

We analyse the effects of the ban of ChatGPT, a generative pre-trained t...
research
12/15/2021

Long-Term Productivity Based on Science, not Preference

This position paper argues that decisions on processes, tools, technique...
research
03/19/2020

Nonparametric estimation of variable productivity Hawkes processes

An extension of the Hawkes model where the productivity is variable is c...
research
07/24/2022

Snapshot Metrics Are Not Enough: Analyzing Software Repositories with Longitudinal Metrics

Software metrics capture information about software development processe...

Please sign up or login with your details

Forgot password? Click here to reset