Designing a Scripting Language to Help the Blind Program Visually
Kenneth G. Franqueiro, Robert M. Siegfried · 2006 · Proceedings of the 8th International ACM SIGACCESS Conference on Computers and Accessibility (Assets '06) · doi:10.1145/1168987.1169035
Summary
This paper addresses the significant barrier that GUI-based programming environments pose for blind programmers. While programming was historically one of the more accessible professions for blind individuals — with the American Federation for the Blind listing 130 blind programmers in its database as of 1998 — the shift toward visual development tools like Visual Basic has created new obstacles. In Visual Basic, programmers typically design forms by pointing and clicking to place GUI components, a process that is fundamentally inaccessible to blind users. Even when blind programmers attempt to create forms by editing text-based form files directly, the process requires specifying pixel-level positions and dimensions for every component, which is impractical without visual feedback. The authors designed a scripting language called Molly that allows blind programmers to define Visual Basic forms verbally through a text-based script. Rather than requiring exact pixel coordinates, the language uses accessible concepts like rows and columns for layout organization, relative positioning terms (top, middle, bottom, left, center, right) for form placement, and simplified size options (small, medium, large) instead of pixel values. The language is case-insensitive and uses newlines as statement terminators, eliminating the need for indentation. The compiler processes .fms script files and generates standard Visual Basic .frm form files that can be added to any Visual Basic project.
Key findings
The Molly scripting language successfully demonstrated that Visual Basic forms could be created without visual interaction. The language divides the screen into a 3x3 grid for positioning and uses rows/columns for organizing form components, making spatial layout conceptually accessible. Feedback from the blind programming community significantly shaped the project — blind programmers explicitly stated they did not want a separate programming language but rather a tool that would simplify the specific task of designing Visual Basic forms. When the prototype compiler was shared with the blind programming community via mailing lists, users confirmed the language and its sample scripts had potential to help them create Visual Basic forms independently. However, as a prototype, questions remained about what additional features a full working version would need. The paper also documents related efforts: the University of Manitoba ran a training program for blind programmers from the mid-1960s with low attrition and high job placement rates, and other researchers developed tools like JavaSpeak and APL (Auditory Programming Language) for blind programmers.
Relevance
This paper highlights an often-overlooked accessibility challenge: the tools developers use to create software can themselves be inaccessible. As development environments have become increasingly visual, blind programmers face barriers not in understanding programming concepts but in interacting with the IDE. The Molly approach — creating a text-based abstraction layer over a visual design process — offers a design pattern applicable beyond Visual Basic. Modern development environments continue to rely heavily on visual drag-and-drop interfaces for UI design, and the principles demonstrated here remain relevant. The paper also underscores the importance of involving disabled users in the design process, as community feedback fundamentally reshaped the project's direction from a new programming language to a targeted scripting tool.
Tags: blind programmers · visual programming · graphical user interfaces · scripting languages · IDE accessibility · Visual Basic