National Research Council of Canada. NRC Institute for Information Technology
programming-by-voice; speech recognition; HCI; programming environments; assistive technologies; programmation vocale; reconnaissance de la parole; reconnaissance vocale; interface homme-machine; environnement de programmation; technologies assistives
In recent years, there has been an increase in the number of computer programmers suffering from Repetitive Strain Injury (RSI)-an umbrella term covering a series of musculoskeletal disorders caused by repetitive motion of the hands and arms. For those individuals, or any programmer with a handicap that precludes keyboard and/or mouse input, Speech Recognition (SR) is an attractive alternative because it could allow them to do their work without using such devices. Unfortunately, programming-by-voice with current SR systems is awkward because programming languages are not meant to be spoken. In this paper we describe various usability problems with programming-by-voice and show that none of the existing programming-by-voice tools address all of those barriers. We then present VoiceGrip, a programming-by-voice tool that adresses the widest range of programming-by-voice problems to date. VoiceGrip uses a unique approach where programmers first dictate code using an easy to utter pseudo-syntax, and then translate that automatically to native code in the appropriate programming language. The system has been downloaded by 343 individuals, and postings on a neutral programming-by-voice mailing list indicate that it is being used by at least some of them. We also present an experiment evaluating the performance of the system's symbol translation algorithm. In this experiment, the system exhibited low error rates in the range of 2.7% when confusion between homophonic symbols (i.e. symbols that have the same spoken pseudo code form) was ignored and 6.6% when confusion between homophonic symbols was taken into account. Finally, even though VoiceGrip is the tool that currently addresses the widest range of programming-by-voice problems, we conclude that a better tool can be developed by combining features of VoiceGrip with features of other existing programming-by-voice tools.
International Journal of Speech Technology4, no. 2 (2001): 103–116.