Atoms of Confusion in Java

03/08/2021
by   Chris Langhout, et al.
0

Although writing code seems trivial at times, problems arise when humans misinterpret what the code actually does. One of the potential causes are "atoms of confusion", the smallest possible patterns of misinterpretable source code. Previous research has investigated the impact of atoms of confusion in C code. Results show that developers make significantly more mistakes in code where atoms are present. In this paper, we replicate the work of Gopstein et al. to the Java language. After deriving a set of atoms of confusion for Java, we perform a two-phase experiment with 132 computer science students (i.e., novice developers). Our results show that participants are 2.7 up to 56 times more likely to make mistakes in code snippets affected by 7 out of the 14 studied atoms of confusion, and when faced with both versions of the code snippets, participants perceived the version affected by the atom of confusion to be more confusing and/or less readable in 10 out of the 14 studied atoms of confusion.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/11/2018

The Effect of Noise on Sofware Engineers' Performance

Background: Noise, defined as an unwanted sound, is one of the commonest...
research
04/04/2019

Recommendations for Datasets for Source Code Summarization

Source Code Summarization is the task of writing short, natural language...
research
08/18/2023

Test Code Refactoring Unveiled: Where and How Does It Affect Test Code Quality and Effectiveness?

Context. Refactoring has been widely investigated in the past in relatio...
research
03/19/2023

Towards a Dataset of Programming Contest Plagiarism in Java

In this paper, we describe and present the first dataset of source code ...
research
09/30/2022

Towards effective assessment of steady state performance in Java software: Are we there yet?

Microbenchmarking is a widely used form of performance testing in Java s...
research
09/10/2019

Human Languages in Source Code: Auto-Translation for Localized Instruction

Computer science education has promised open access around the world, bu...
research
03/08/2019

A Replication Study on Code Comprehension and Expertise using Lightweight Biometric Sensors

Code comprehension has been recently investigated from physiological and...

Please sign up or login with your details

Forgot password? Click here to reset