# History of adaptive automated instruction in computer applications

Within the field of human-computer interaction there has long been interest in developing adaptive automated instruction software to facilitate learning of application programs. This software would monitor a computer user's behavior while using the application program, and then provide optimized and personalized instruction to help the user become more skilled with the application. This form of instruction could be performed by a stand-alone tutoring application, or it could be carried out by special routines built into the application program itself (as with the Microsoft Office Assistant discussed below).

## Timeline

A variety of different strategies for automated instruction in computer applications have been discussed and tried over a period of at least 25 years, although at present the technology does not appear to enjoy very wide application. Some of the notable developments in this field are listed here:
* 1956. Gordon Pask and Robin McKinnon-Wood develop SAKI, the first adaptive instruction system to go into commercial production. SAKI taught keyboard skills and it optimized the rate by which a trainee keyboard operator learned by making the difficulty level of the tasks contingent on the learner's performance. As the learner's performance improved the rate of teaching increased and instructional support was delayed.
* 1992. C. Thomas and M. Krogsaeter describe an adaptable extension to Microsoft Excel called Flexcel. Flexcel records and studies the user's command history using Excel and "analyzes the user's interaction style and presents adaptation suggestions." (p. 123) For example, the program notes when a user repeatedly fails to utilize an available shortcut and reminds the user about the existence of the shortcut.
* 1996. S. Bhavnani and colleagues describe an Active Assistant for Computer-Aided Design (CAD) programs, for which they constructed a prototype versione. The Active Assistant records the history of a CAD user's usage of the program, and monitors for "symptoms of suboptimal and incorrect CAD usage" (p. 253). Upon discovering such cases, it might provide "textual notification that there is a better way to perform a task executed by the user" (p. 251) or it might provide "graphic remediation" utilizing a tutorial window.
* 1996. Microsoft introduces the Office Assistant—often referred to as "Clippy"—to provide personalized assistance in the use of Office 97 products. Depending upon user-set options governing Clippy's behavior, the animated agent can provide a variety of forms of advice to users, based on inspection of the user history and comparison with optimal prototypes. Clippy becomes relatively notorious among some Office users, who complain that the agent is intrusive and annoying.
* 1996. Oppermann & Thomas describe an approach for Supporting Learning as an Iterative Process where users of an application to be learned can acquire usage knowledge iteratively by experience, annotations and individual or cooperative recourses to prior knowledge.
* 1999. F. Linton describes the OWL (Organization Wide Learning) Project undertaken at The MITRE Corporation in Massachusetts, USA. In OWL, all of the computer users within an organization run software that keeps track of the Microsoft Office commands they issue. By pooling and comparing the command histories of different users, OWL can "recommend to each user individual selected Word features that their peers have already found useful." (p. 2). The prototype of OWL was constructed using Visual Basic and records all Office commands given by the user, including with the mouse.
* 2001. Oppermann & Specht describe a Context-sensitive Nomadic Information System that supports learning by adaptive information about museum exhibits while roaming through a museum.
* 2001. Microsoft demotes the Office Assistant to a subordinate, non-default status within the Office XP applications
* 2006. Fujitsu Corporation files a US patent application (#20070092857) on a "Method and apparatus for supporting training, and computer product." The application claims that Fujitsu invented the idea of "An apparatus for supporting training for using an application program, comprising: an analyzing unit configured to analyze a record of usage of functions in the application program based on an operation history of the application program; and a generating unit configured to generate data relating to the training based on a result of analysis by the analyzing unit." (Independent Claim 7)