Theoretical basis for code presentation: A case for cognitive load
Nyah Speicher, Prashant Chandrasekar
TL;DR
The paper investigates how cognitive load (CL) affects BLV programmers and argues that many accessible tools neglect CL considerations. Grounded in cognitive load theory, it analyzes intrinsic, extraneous, and germane load, plus cognitive offloading, to critique existing non-programming and programming accessibility tools. It identifies gaps where CL-informed design could improve programming tasks for BLV users and proposes a concrete design direction: a 'virtual code view' that flattens structure, minimizes working memory demands, and caps line length, plus a plan for empirical evaluation with BLV developers. The work sets a foundation for CL-aware accessibility research in programming and aims to drive practical improvements in BLV coding environments.
Abstract
Evidence supports that reducing cognitive load (CL) improves task performance for people of all abilities. This effect is specifically important for blind-and-low-vision (BLV) individuals because they cannot rely on many common methods of managing CL, which are frequently vision-based techniques. Current accessible "solutions" for BLV developers only sporadically consider CL in their design. There isn't a way to know whether CL is being alleviated by them. Neither do we know if alleviating CL is part of the mechanism behind why these solutions help BLV people. Using a strong foundation in psychological sciences, we identify aspects of CL that impact performance and learning in programming. These aspects are then examined when evaluating existing solutions for programming sub-tasks for BLV users. We propose an initial design "recommendations" for presentation of code which, when followed, will reduce cognitive load for BLV developers.
