Eye tracking analysis of computer program comprehension in programmers with dyslexia

This paper investigates the impact of dyslexia on the reading and comprehension of computer program code. Drawing upon work from the fields of program comprehension, eye tracking, dyslexia, models of reading and dyslexia gaze behaviour, a set of hypotheses is developed with which to investigate potential differences in the gaze behaviour of programmers with dyslexia compared to typical programmers. The hypotheses posit that, in general terms, programmers with dyslexia will show gaze behaviour of longer duration and a greater number of fixations on program features than typical programmers. An experiment is described in which 28 programmers (14 with dyslexia, 14 without dyslexia) were asked to read and explain three simple computer programs. Eye tracking technology is used to capture the gaze behaviour of the programmers. Data analysis suggests that the code reading behaviour of programmers with dyslexia is not what would be expected based on the dyslexia literature relating to natural text. In conjunction with further exploratory analysis, observations are made in relation to spatial differences in how programmers with dyslexia read and scan code. The results show that the gaze behaviour of programmers with dyslexia requires further study to understand effects such as code layout, identifier naming and line length. A possible impact on dyslexia gaze behaviour is from the visual crowding of features in program code which might cause certain program features to receive less attention during a program comprehension task.

[1]  Pierluigi Zoccolotti,et al.  Reading Words and Pseudowords: An Eye Movement Study of Developmental Dyslexia , 2002, Brain and Language.

[2]  H. Wimmer,et al.  A dual-route perspective on eye movements of dyslexic readers , 2010, Cognition.

[3]  Andrew Begel,et al.  Eye tracking in computing education , 2014, ICER '14.

[4]  Reinhold Kliegl,et al.  SWIFT: a dynamical model of saccade generation during reading. , 2005, Psychological review.

[5]  Patrick Jermann,et al.  Gaze Evidence for Different Activities in Program Understanding , 2012, PPIG.

[6]  John Gray,et al.  Dyslexia and learning computer programming , 2004, ITiCSE '04.

[7]  Markku Tukiainen,et al.  An eye-tracking methodology for characterizing program comprehension processes , 2006, ETRA.

[8]  S. Liversedge,et al.  Developmental eye-tracking research in reading: Introduction to the special issue , 2015 .

[9]  Emilia Mendes,et al.  Investigating the effects of personality traits on pair programming in a higher education setting through a family of experiments , 2012, Empirical Software Engineering.

[10]  Peter Coppin,et al.  Developing drawing and visual thinking strategies to enhance computer programming for people with dyslexia , 2008, 2008 IEEE Symposium on Visual Languages and Human-Centric Computing.

[11]  Meredith Ringel Morris,et al.  Understanding the Challenges Faced by Neurodiverse Software Engineering Employees: Towards a More Inclusive and Productive Technical Workforce , 2015, ASSETS.

[12]  J. Pynte,et al.  The optimal viewing position effect in beginning and dyslexic readers , 2003 .

[13]  Adele E. Howe,et al.  Program understanding behaviour during enhancement of large-scale software , 1997, J. Softw. Maintenance Res. Pract..

[14]  Dawn J. Lawrie,et al.  The impact of identifier style on effort and comprehension , 2012, Empirical Software Engineering.

[15]  Yann-Gaël Guéhéneuc,et al.  Taupe: Visualizing and analyzing eye-tracking data , 2014, Sci. Comput. Program..

[16]  Rainer Koschke,et al.  On the Comprehension of Program Comprehension , 2014, TSEM.

[17]  Andrew Begel,et al.  Eye Movements in Code Reading: Relaxing the Linear Order , 2015, 2015 IEEE 23rd International Conference on Program Comprehension.

[18]  Peter Coppin,et al.  Learning from the information workspace of an information professional with dyslexia and ADHD , 2009, 2009 IEEE Toronto International Conference Science and Technology for Humanity (TIC-STH).

[19]  Paul W. B. Atkins,et al.  Models of reading aloud: Dual-route and parallel-distributed-processing approaches. , 1993 .

[20]  J. Stein What is Developmental Dyslexia? , 2018, Brain sciences.

[21]  James S. Adelman,et al.  Letters in Words Are Read Simultaneously, Not in Left-to-Right Sequence , 2010, Psychological science.

[22]  Tony Clear,et al.  An introduction to program comprehension for computer science educators , 2010, ITiCSE-WGR '10.

[23]  Thomas Fritz,et al.  Eye gaze and interaction contexts for change tasks - Observations and potential , 2017, J. Syst. Softw..

[24]  Yann-Gaël Guéhéneuc,et al.  An empirical study on requirements traceability using eye-tracking , 2012, 2012 28th IEEE International Conference on Software Maintenance (ICSM).

[25]  Alan Kennedy,et al.  Eye movements in reading: Some theoretical context , 2013, Quarterly journal of experimental psychology.

[26]  H. Gelhorn,et al.  The Co-occurrence of Reading Disorder and ADHD , 2012, Journal of learning disabilities.

[27]  M Coltheart,et al.  DRC: a dual route cascaded model of visual word recognition and reading aloud. , 2001, Psychological review.

[28]  S. Valdois,et al.  The eye movements of dyslexic children during reading and visual search: Impact of the visual attention span , 2007, Vision Research.

[29]  Ian R. McChesney,et al.  Gaze behaviour in computer programmers with dyslexia: considerations regarding code style, layout and crowding , 2018, EMIP@ETRA.

[30]  Andreas Busjahn,et al.  Analysis of code reading to gain more insight in program comprehension , 2011, Koli Calling.

[31]  John Gray,et al.  Dyslexia and learning computer programming , 2004 .

[32]  Jonathan I. Maletic,et al.  Tracking Developers' Eyes in the IDE , 2016, IEEE Software.

[33]  D. C. Howell Statistical Methods for Psychology , 1987 .

[34]  P. Gomez,et al.  The effects of inter-letter spacing in visual-word recognition: Evidence with young normal readers and developmental dyslexics , 2012 .

[35]  Stéphanie Bellocchi,et al.  I can read it in your eyes: what eye movements tell us about visuo-attentional processes in developmental dyslexia. , 2013, Research in developmental disabilities.

[36]  M. Molteni,et al.  The gradient of visual attention in developmental dyslexia , 2001, Neuropsychologia.

[37]  Roman Bednarik,et al.  What influences dwell time during source code reading?: analysis of element type and frequency as factors , 2014, ETRA.

[38]  Jana Schumann,et al.  Confounding parameters on program comprehension: a literature survey , 2015, Empirical Software Engineering.

[39]  Luiz Fernando Capretz,et al.  Forty years of research on personality in software engineering: A mapping study , 2015, Comput. Hum. Behav..

[40]  L. Cupples,et al.  Thinking outside the boxes: Using current reading models to assess and treat developmental surface dyslexia , 2017, Neuropsychological rehabilitation.

[41]  M. Snowling,et al.  Subtypes of developmental dyslexia , 1997 .

[42]  Dror G. Feitelson,et al.  How programmers read regular code: a controlled experiment using eye tracking , 2015, ICPC 2015.

[43]  Ruven E. Brooks,et al.  Towards a Theory of the Comprehension of Computer Programs , 1983, Int. J. Man Mach. Stud..

[44]  K. Rayner The 35th Sir Frederick Bartlett Lecture: Eye movements and attention in reading, scene perception, and visual search , 2009, Quarterly journal of experimental psychology.

[45]  H. Renvall,et al.  Impaired processing of rapid stimulus sequences in dyslexia , 2001, Trends in Cognitive Sciences.

[46]  N. Pennington Stimulus structures and mental representations in expert comprehension of computer programs , 1987, Cognitive Psychology.

[47]  B. Pennington,et al.  Development of Dyslexia , 2015 .

[48]  Collin McMillan,et al.  Improving automated source code summarization via an eye-tracking study of programmers , 2014, ICSE.

[49]  Ben Shneiderman,et al.  Syntactic/semantic interactions in programmer behavior: A model and experimental results , 1979, International Journal of Computer & Information Sciences.

[50]  C. Bishop-Clark,et al.  Cognitive style, personality, and computer programming , 1995 .

[51]  Ruven E. Brooks,et al.  Using a behavioral theory of program comprehension in software engineering , 1978, ICSE '78.

[52]  Erik D. Reichle,et al.  E-Z Reader : An Overview of the Model and Two Recent Applications , 2014 .

[53]  D. Spinelli,et al.  Crowding Effects on Word Identification in Developmental Dyslexia , 2002, Cortex.

[54]  Zoï Kapoula,et al.  Latency of saccades and vergence eye movements in dyslexic children , 2008, Experimental Brain Research.

[55]  Iris Vessey,et al.  Research Report - The Relevance of Application Domain Knowledge: The Case of Computer Program Comprehension , 1995, Inf. Syst. Res..