The use of magnets for the nonvisual construction of syntax-based tangible object assemblies by individuals who are blind or visually impaired.

Many students have difficulty in mastering syntax when programming. To alleviate this problem, the Scratch programming language was developed to have a visual block-based drag and drop code editor, where the shapes of the blocks and animation are used to make the syntax intuitive. To similarly make...

Full description

Bibliographic Details
Published in:Assistive Technology Vol. 36; no. 2; pp. 101 - 116
Main Authors: Kim, Hyun Woo, Pawluk, Dianne TV
Format: pictorial research tables/charts Journal Article
Published: Taylor & Francis Ltd 2024
Online Access:View this record in EBSCOhost
Description
Summary:Many students have difficulty in mastering syntax when programming. To alleviate this problem, the Scratch programming language was developed to have a visual block-based drag and drop code editor, where the shapes of the blocks and animation are used to make the syntax intuitive. To similarly make syntax intuitive to individuals who are blind or visually impaired (BVI) using tangible code blocks, a method needs to take into account perceptual processing differences between the senses and implementation differences between the physical and virtual world. The studies in this paper examined the effectiveness of using localized reciprocal shape information in combination with magnetic attraction for providing intuitive feedback about syntax. Supplementing the use of localized reciprocal shape constraints with magnetic attraction increased the accuracy and perceived ease of use by blindfolded BVI users to detect whether blocks successfully connected and, therefore, represented a code segment with valid syntax. This did not appear to change significantly with changes in the size and weight of the blocks, although stronger magnetic connections appeared preferred. We also introduced a "stopper" design to allow for code blocks to have exceptions to the regular syntax rules, while not adding complexity to the majority of code blocks.