Eye movements in code reading: relaxing the linear order

Teresa Busjahn, Roman Bednarik, Andrew Begel, Martha Crosby, James Paterson, Carsten Schulte, Bonita Sharif, Sascha Tamm

    Research output: Chapter in Book/Report/Conference proceedingConference contribution

    141 Downloads (Pure)

    Abstract

    Code reading is an important skill in programming. Inspired by the linearity that people exhibit while natural language text reading, we designed local and global gaze-based measures to characterize linearity (left-to-right and top-to-bottom) in reading source code. Unlike natural language text, source code is executable and requires a specific reading approach. To validate these measures, we compared the eye movements of novice and expert programmers who were asked to read and comprehend short snippets of natural language text and Java programs. Our results show that novices read source code less linearly than natural language text. Moreover, experts read code less linearly than novices. These findings indicate that there are specific differences between reading natural language and source code, and suggest that non-linear reading skills increase with expertise. We discuss the implications for practitioners and educators.
    Original languageEnglish
    Title of host publication2015 IEEE 23rd International Conference on Program Comprehension
    PublisherIEEE
    Pages255-265
    Number of pages11
    ISBN (Print)978-1-4673-8159-8
    DOIs
    Publication statusPublished - 7 Sep 2015

    Keywords

    • eye tracking
    • novice
    • expert
    • eye movement
    • code reading

    Fingerprint Dive into the research topics of 'Eye movements in code reading: relaxing the linear order'. Together they form a unique fingerprint.

    Cite this