Blocks4All: Five Keys for Accessible Block-Based Languages
Lauren R. Milne, Macalester College
Richard E. Ladner, University of Washington
Accessible Elements
Each block is fully described (title, description, location) by VoiceOver, the screen reader for iOS. Additionally, blocks are placed at the bottom of the screen so they can be found without vision.
Moving Blocks
Instead of drag and drop, each block is moved using select, select drop. You select the block you want to move, and then select the location you want to move it to. This two-phase interaction is much easier to perform with VoiceOver.
Conveying Program Structure
Blocks are a uniform size and nested blocks are stacked. Structure is also conveyed via audio cues (the blocks underneath tell you if you are inside a loop or conditional).
Conveying Type Information
We used audio clips to communicate information about types (e.g. Booleans and condition statements make a beep-beep noise when selected to indicate they fit together).
Accessible Output
We designed the app to control a Dash robot from Wonder Workshop, which can move and make noise.