Towards Inclusive Source Code Readability Based on the Preferences of Programmers with Visual Impairments
Authors
Title of the Paper
Towards Inclusive Source Code Readability Based on the Preferences of Programmers with Visual Impairments
Paper Information
- Subject Area: Code readability and accessibility research for visually impaired developers
- Keywords: Software developers, visually impaired individuals, accessibility, code readability, programming tools, programming languages, screen readers, non-linear navigation, code formatting
Research Background and Problem Statement
-
Identified Problems or Challenges:
- Current code readability standards primarily cater to the needs of sighted developers, neglecting the unique requirements of visually impaired programmers.
- The linear and instantaneous output characteristics of screen readers pose significant challenges for visually impaired developers in reading, navigating, and understanding code.
-
Significance:
- Code readability is directly linked to the efficiency of code maintenance and collaboration. Overlooking the specific needs of visually impaired developers may result in accessibility inequities.
-
Motivation and Related Work:
- While extensive research has focused on assisting visually impaired developers in navigating and understanding code structures, there is limited exploration of their specific needs and influencing factors regarding code readability.
- The authors aim to identify the preferences of visually impaired developers in aspects such as indentation, line length, and naming conventions, and to explore the potential implications of these preferences on tools, languages, and coding standards.
Proposed Solution
-
Methods/Solutions:
-
Formulated research questions (RQ1, RQ2):
- RQ1: How do the code readability preferences of visually impaired developers differ from those of sighted developers, and why?
- RQ2: What are the implications of these differences for programming tools, coding style guidelines, and programming languages?
-
Conducted a qualitative study:
- Remote interviews with 16 visually impaired developers.
- Presented code samples designed based on 15 code readability rules, covering aspects such as indentation, variable naming, and line length.
- Designed two sets of code samples using the existing Python style guide (PEP8) and accessibility-oriented standards, inviting participants to share their preferences.
-
Analyzed participants' reasons for selecting specific code samples, while also collecting insights into their common practices in collaboration and tool usage.
-
-
Innovations:
- Proposed a more inclusive new taxonomy for code readability.
- Systematically analyzed how code attributes (e.g., variable naming, whitespace) influence readability from the perspective of screen readers versus graphical user interfaces (GUIs).
-
Implementation Steps and Techniques:
- Evaluated the effectiveness of PEP8 standards and other readability schemes through real-world code reading scenarios of screen reader users.
- Used coding analysis of participants' transcribed responses to propose relevant design and tool improvement recommendations.
Research Outcomes
-
Specific Achievements:
- Updated Code Readability Taxonomy:
- Developed a comparative taxonomy addressing the needs of GUI and screen reader users.
- For instance, while long lines of code should be split into multiple lines, screen reader users prioritize how splitting impacts speech navigation efficiency.
- Empirical Data Contribution:
- Provided detailed data on visually impaired developers' preferences for code formatting (e.g., variable naming length, comment wrapping preferences) and feedback on actual tool settings.
- Design Recommendations:
- Suggested tools and languages support navigation and formatting mechanisms tailored to screen reader habits, such as improving IDE plugins to support speech-based line wrapping.
- Recommended programming language designs optimize the pronunciation logic of special characters (e.g., dots, underscores) under different screen reader settings.
- Updated Code Readability Taxonomy:
-
Advantages:
- Offered an evaluation of existing code style guides (e.g., PEP8) in the context of visually impaired developers, addressing a research gap in accessible coding standards.
- Facilitated understanding of code collaboration differences between visually impaired and sighted developers, promoting inclusive team culture.
-
Experimental and Evaluation Results:
- Many visually impaired developers preferred code formats that reduce navigation complexity and speech verbosity.
- For example, abbreviations in variable names may result in longer speech output (e.g., "btn" has more syllables than "button").
-
Limitations and Future Directions:
-
Limitations:
- The study focused solely on Python, which may not generalize to other languages (e.g., C-style languages).
- The sample predominantly consisted of younger male programmers, failing to fully represent the needs of visually impaired developers across other genders and age groups.
- Limited to screen reader users, excluding scenarios involving braille displays and tactile devices.
-
Future Directions:
- Expand research to include other programming language formats.
- Explore the dynamics of code format preferences in mixed-ability teams during real-world collaboration.
- Investigate how braille devices influence code readability and how tools can support seamless collaboration across different assistive technologies.
-
Research Questions / Practical Problems
Question signals indexed for this paper.
Research Questions
2- How do blind and sighted developers' code readability preferences differ, and why?Category: Workplace, Development, and Professional Work SupportSimilar questionsarrow_forward
- What implications do these differences have for programming tools, code style guides, and programming languages?Category: Workplace, Development, and Professional Work SupportSimilar questionsarrow_forward
Practical Problems
1- Blind programmers struggle to read and understand code efficiently.Category: Workplace, Development, and Professional Work SupportSimilar questionsarrow_forward
- 71%
Finding the Needle in a Haystack: On the Automatic Identification of Accessibility User Reviews
CHI '21· Voice Accessibility +2
- 71%
Exploring Mobile Device Accessibility: Challenges, Insights, and Recommendations for Evaluation Methodologies
CHI '24· Visual Impairment Technologies (Screen Readers, Tactile Graphics, Braille) +2
- 67%
CodeTalk: Improving Programming Environment Accessibility for Visually Impaired Developers
CHI '18· Visual Impairment Technologies (Screen Readers, Tactile Graphics, Braille) +1
- 67%
"Do You Want Me to Participate or Not?": Investigating the Accessibility of Software Development Meetings for Blind and Low Vision Professionals
CHI '24· Visual Impairment Technologies (Screen Readers, Tactile Graphics, Braille) +1
- 67%
The Dilemma of Building Do-It-Yourself (DIY) Solutions For Workplace Accessibility
CHI '25· Visual Impairment Technologies (Screen Readers, Tactile Graphics, Braille) +1
- 67%
Robust Annotation of Mobile Application Interfaces in Methods for Accessibility Repair and Enhancement
UIST '18· Visual Impairment Technologies (Screen Readers, Tactile Graphics, Braille) +1
- 67%
Towards Automated Accessibility Report Generation for Mobile Apps
UIST '24· Visual Impairment Technologies (Screen Readers, Tactile Graphics, Braille) +1
- 63%
DesignChecker: Visual Design Support for Blind and Low Vision Web Developers
UIST '24· Visual Impairment Technologies (Screen Readers, Tactile Graphics, Braille) +3
Based on Jaccard similarity of research subtopics & professions (≥60%)