Do developer perceptions have borders? Comparing C code responses across continents
Recent studies have empirically validated the existence of small patterns in C code, named atoms of confusion (or atoms for short), that can interfere with program comprehension. The focus of this research is an attempt to see if these patterns in C would have a similar impact on a second group of p...
Gespeichert in:
Veröffentlicht in: | Software quality journal 2024-06, Vol.32 (2), p.431-457 |
---|---|
Hauptverfasser: | , , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Recent studies have empirically validated the existence of small patterns in C code, named atoms of confusion (or atoms for short), that can interfere with program comprehension. The focus of this research is an attempt to see if these patterns in C would have a similar impact on a second group of participants who have similar levels of experience with C, but come from different places. We report on studies conducted with students from the USA and China. Both sets of participants were shown snippets of code and asked to predict the output. While performance measures (accuracy and speed) showed little difference in aggregate, a few individual atoms yielded surprising results. For example, we found examples where the clarified versions of code, with the atoms removed, were
more confusing
to the Chinese participants, despite the presence of atoms having much less impact on this group in general. These findings suggest that both the atoms themselves, and the processes used to remove them, may be viewed differently by individuals from different parts of the world. As such, developing insights on the “cross-border” applicability of coding practices could help create better pedagogical practices to prepare students for today’s globally-integrated approach to software development. |
---|---|
ISSN: | 0963-9314 1573-1367 |
DOI: | 10.1007/s11219-023-09654-0 |