Do software engineers use autocompletion features differently than other developers? (2018)

Fictitious example of an autocompletion feature in an IDE
These are not the methods you are looking for

Programmers in movies are often able to crank out working code with seemingly very little effort. In real life, programmers often rely on IDE features like autocompletion to produce correct code quickly. Amlekar et al. studied the differences in autocompletion usage between people who program for a living and people who do it “on the side”.

Why it matters

Most integrated development environments (IDEs) offer some form of autocompletion feature which proposes potentially relevant code fragments that can be easily inserted using a single keystroke. This is useful, because:

One might expect that full-time professional developersWhich is what the “software engineers” in the title actually refers to, who spend much more time within IDEs than other developers (researchers, hobbyists, and students), use autocompletion differently. That would imply that professionals have different needs, and IDEs should adapt their autocompletion behaviour for this special group of users.

How the study was conducted

The authors tried to answer these questions using the MSR 2018 challenge dataset, which contains data on the actions that were performed by 85 developers within their IDEsThis dataset was also used in another exploratory study, about the relationship between working late and long hours on productivity..

The dataset contains 194,500 autocompletion events. Most autocompletion events are terminated because the developer:

Autocompletion events that are terminated in other ways or are triggered by developers for whom their job role is not known are filtered out. After filtering about 39,000 events remain.

These are used to calculate autocompletion ratios (share of autocompletion events within the total number of events within a single programming session) and determine the types of proposed code fragments (e.g. type, variable, and method names).

What discoveries were made

The results are fairly straightforward, but are best taken with a grain of salt due to the small size of the dataset:

The important bits

  1. Professional developers do not use autocompletion differently than other developers like researchers, hobbyists, and students