Cargando…

Seeing confusion through a new lens: on the impact of atoms of confusion on novices’ code comprehension

Code comprehension is crucial for software maintenance and evolution, but it can be hindered by tiny code snippets that can confuse the developers, called atoms of confusion. Previous studies investigated how atoms impact code comprehension through the perspectives of time, accuracy, and opinions of...

Descripción completa

Detalles Bibliográficos
Autores principales: da Costa, José Aldo Silva, Gheyi, Rohit, Castor, Fernando, de Oliveira, Pablo Roberto Fernandes, Ribeiro, Márcio, Fonseca, Baldoino
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Springer US 2023
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10193347/
https://www.ncbi.nlm.nih.gov/pubmed/37220598
http://dx.doi.org/10.1007/s10664-023-10311-0
_version_ 1785043817280307200
author da Costa, José Aldo Silva
Gheyi, Rohit
Castor, Fernando
de Oliveira, Pablo Roberto Fernandes
Ribeiro, Márcio
Fonseca, Baldoino
author_facet da Costa, José Aldo Silva
Gheyi, Rohit
Castor, Fernando
de Oliveira, Pablo Roberto Fernandes
Ribeiro, Márcio
Fonseca, Baldoino
author_sort da Costa, José Aldo Silva
collection PubMed
description Code comprehension is crucial for software maintenance and evolution, but it can be hindered by tiny code snippets that can confuse the developers, called atoms of confusion. Previous studies investigated how atoms impact code comprehension through the perspectives of time, accuracy, and opinions of developers. However, we need more studies evaluating other perspectives and the combination of these perspectives on a common ground through experiments. In our study, we evaluate how the eye tracking method can be used to gain new insights when we compare programs obfuscated by the atoms with functionally equivalent clarified versions. We conduct a controlled experiment with 32 novices in Python and measure their time, number of attempts, and visual effort with eye tracking through fixation duration, fixations count, and regressions count. We also conduct interviews and investigate the subjects’ difficulties with the programs. In our results, the clarified version of the code with Operator Precedence reduced the time spent in the region that contains the atom to the extent of 38.6%, and the number of answer attempts by 28%. Most subjects found the obfuscated version more difficult to solve than the clarified one, and they reported the order of precedence to be difficult to validate. By analyzing their visual effort, in the obfuscated version, we observed an increase of 47.3% in the horizontal regressions count in the atom region, making its reading more difficult. The additional atoms evaluated revealed other interesting nuances. Based on our findings, we encourage researchers to consider eye tracking combined with other perspectives to evaluate atoms of confusion and educators to favor patterns that do not impact the understanding and visual effort of undergraduates.
format Online
Article
Text
id pubmed-10193347
institution National Center for Biotechnology Information
language English
publishDate 2023
publisher Springer US
record_format MEDLINE/PubMed
spelling pubmed-101933472023-05-19 Seeing confusion through a new lens: on the impact of atoms of confusion on novices’ code comprehension da Costa, José Aldo Silva Gheyi, Rohit Castor, Fernando de Oliveira, Pablo Roberto Fernandes Ribeiro, Márcio Fonseca, Baldoino Empir Softw Eng Article Code comprehension is crucial for software maintenance and evolution, but it can be hindered by tiny code snippets that can confuse the developers, called atoms of confusion. Previous studies investigated how atoms impact code comprehension through the perspectives of time, accuracy, and opinions of developers. However, we need more studies evaluating other perspectives and the combination of these perspectives on a common ground through experiments. In our study, we evaluate how the eye tracking method can be used to gain new insights when we compare programs obfuscated by the atoms with functionally equivalent clarified versions. We conduct a controlled experiment with 32 novices in Python and measure their time, number of attempts, and visual effort with eye tracking through fixation duration, fixations count, and regressions count. We also conduct interviews and investigate the subjects’ difficulties with the programs. In our results, the clarified version of the code with Operator Precedence reduced the time spent in the region that contains the atom to the extent of 38.6%, and the number of answer attempts by 28%. Most subjects found the obfuscated version more difficult to solve than the clarified one, and they reported the order of precedence to be difficult to validate. By analyzing their visual effort, in the obfuscated version, we observed an increase of 47.3% in the horizontal regressions count in the atom region, making its reading more difficult. The additional atoms evaluated revealed other interesting nuances. Based on our findings, we encourage researchers to consider eye tracking combined with other perspectives to evaluate atoms of confusion and educators to favor patterns that do not impact the understanding and visual effort of undergraduates. Springer US 2023-05-18 2023 /pmc/articles/PMC10193347/ /pubmed/37220598 http://dx.doi.org/10.1007/s10664-023-10311-0 Text en © The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature 2023, Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law. This article is made available via the PMC Open Access Subset for unrestricted research re-use and secondary analysis in any form or by any means with acknowledgement of the original source. These permissions are granted for the duration of the World Health Organization (WHO) declaration of COVID-19 as a global pandemic.
spellingShingle Article
da Costa, José Aldo Silva
Gheyi, Rohit
Castor, Fernando
de Oliveira, Pablo Roberto Fernandes
Ribeiro, Márcio
Fonseca, Baldoino
Seeing confusion through a new lens: on the impact of atoms of confusion on novices’ code comprehension
title Seeing confusion through a new lens: on the impact of atoms of confusion on novices’ code comprehension
title_full Seeing confusion through a new lens: on the impact of atoms of confusion on novices’ code comprehension
title_fullStr Seeing confusion through a new lens: on the impact of atoms of confusion on novices’ code comprehension
title_full_unstemmed Seeing confusion through a new lens: on the impact of atoms of confusion on novices’ code comprehension
title_short Seeing confusion through a new lens: on the impact of atoms of confusion on novices’ code comprehension
title_sort seeing confusion through a new lens: on the impact of atoms of confusion on novices’ code comprehension
topic Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10193347/
https://www.ncbi.nlm.nih.gov/pubmed/37220598
http://dx.doi.org/10.1007/s10664-023-10311-0
work_keys_str_mv AT dacostajosealdosilva seeingconfusionthroughanewlensontheimpactofatomsofconfusiononnovicescodecomprehension
AT gheyirohit seeingconfusionthroughanewlensontheimpactofatomsofconfusiononnovicescodecomprehension
AT castorfernando seeingconfusionthroughanewlensontheimpactofatomsofconfusiononnovicescodecomprehension
AT deoliveirapablorobertofernandes seeingconfusionthroughanewlensontheimpactofatomsofconfusiononnovicescodecomprehension
AT ribeiromarcio seeingconfusionthroughanewlensontheimpactofatomsofconfusiononnovicescodecomprehension
AT fonsecabaldoino seeingconfusionthroughanewlensontheimpactofatomsofconfusiononnovicescodecomprehension