TY - JOUR
T1 - Eye-movement indices of reading while debugging Python source code
AU - Dempsey, Jack
AU - Tsiola, Anna
AU - Bosch, Nigel
AU - Christianson, Kiel
AU - Stites, Mallory
N1 - This work was supported by the Laboratory Directed Research and Development program at Sandia National Laboratories, a multimission laboratory managed and operated by National Technology and Engineering Solutions of Sandia LLC, a wholly owned subsidiary of Honeywell International Inc. for the U.S. Department of Energy\u2019s National Nuclear Security Administration under contract DE-NA0003525. This written work is authored by an employee of NTESS. The employee, not NTESS, owns the right, title and interest in and to the written work and is responsible for its contents. Any subjective views or opinions that might be expressed in the written work do not necessarily represent the views of the U.S. Government. The publisher acknowledges that the U.S. Government retains a non-exclusive, paid-up, irrevocable, world-wide license to publish or reproduce the published form of this written work or allow others to do so, for U.S. Government purposes. The DOE will provide public access to results of federally sponsored research in accordance with the DOE Public Access Plan.
PY - 2025
Y1 - 2025
N2 - Unlike text reading, the eye-movement behaviours associated with reading Python, a computer programming language, are largely understudied through a psycholinguistic lens. A general understanding of the eye movements involved in reading while troubleshooting Python, and how these behaviours compare to proofreading text, is critical for developing educational interventions and interactive tools for helping programmers debug their code. These data may also highlight to what extent humans use their underlying text reading ability when reading source code. The current work provides a profile of global reading behaviours associated with reading Python source code for debugging purposes. To this end, we recorded experienced programmers’ eye movements while they determined whether 21 different Python functions would produce the desired output, an incorrect output, or an error message. Some reading behaviours seem to mirror those found in text reading (e.g. effects of stimulus complexity), while others may be specific to reading code. Results suggest that semantic errors that produce undesired outputs in programming source code may influence early stages of processing, likely due to the largely top-down strategy employed by experienced programmers when reading source code. The findings are framed to invigorate discussion and further exploration into psycholinguistic analysis of human source code reading.
AB - Unlike text reading, the eye-movement behaviours associated with reading Python, a computer programming language, are largely understudied through a psycholinguistic lens. A general understanding of the eye movements involved in reading while troubleshooting Python, and how these behaviours compare to proofreading text, is critical for developing educational interventions and interactive tools for helping programmers debug their code. These data may also highlight to what extent humans use their underlying text reading ability when reading source code. The current work provides a profile of global reading behaviours associated with reading Python source code for debugging purposes. To this end, we recorded experienced programmers’ eye movements while they determined whether 21 different Python functions would produce the desired output, an incorrect output, or an error message. Some reading behaviours seem to mirror those found in text reading (e.g. effects of stimulus complexity), while others may be specific to reading code. Results suggest that semantic errors that produce undesired outputs in programming source code may influence early stages of processing, likely due to the largely top-down strategy employed by experienced programmers when reading source code. The findings are framed to invigorate discussion and further exploration into psycholinguistic analysis of human source code reading.
KW - Eye-tracking
KW - debugging
KW - programming languages
KW - python
KW - reading
UR - http://www.scopus.com/inward/record.url?scp=85214376711&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85214376711&partnerID=8YFLogxK
U2 - 10.1080/20445911.2024.2447117
DO - 10.1080/20445911.2024.2447117
M3 - Article
AN - SCOPUS:85214376711
SN - 2044-5911
VL - 37
SP - 89
EP - 107
JO - Journal of Cognitive Psychology
JF - Journal of Cognitive Psychology
IS - 2
ER -