Should we leverage natural-language knowledge? An analysis of user errors in a natural-language-style programming language

  • Authors:
  • Amy Bruckman;Elizabeth Edwards

  • Affiliations:
  • College of Computing, Georgia Institute of Technology, Atlanta, GA;College of Computing, Georgia Institute of Technology, Atlanta, GA

  • Venue:
  • Proceedings of the SIGCHI conference on Human Factors in Computing Systems
  • Year:
  • 1999

Quantified Score

Hi-index 0.01

Visualization

Abstract

Should programming languages use natural-language-like syntax?Under what circumstances? What sorts of errors do noviceprogrammers make? Does using a natural- language-like programminglanguage lead to user errors? In this study, we read the entireonline interactions of sixteen children who issued a total of35,047 commands on MOOSE Crossing, an educational MUD for children,We counted and categorized the errors made. A total d 2,970 errorswere observed. We define natural-language errors as those errors inwhich the user failed to distinguish between English and code,issuing an incorrect command that was more English-like than thecorrect one. A total of 314 natural-language errors were observed.In most of those errors, the child was able to correct the problemeither easily (41.1% of the time) or with some effort (20.7%).Natural-language errors were divided into five categories. In orderfrom most to least frequent, they are: syntax errors, guessing acommand name by supplying an arbitrary English word, literalinterpretation of metaphor, assuming the system is keeping morestate information than is actually the case, and errors of operatorprecedence and combination. We believe that these error rates arewithin acceptable limits, and conclude that leveraging usersnatural-language knowledge is for many applications an effectivestrategy for designing end-user-programming languages.