As novice users learn to use a new application of computer technology, they frequently make errors (Greif & Keller, 1990; Lazonder & Meij, 1995; Norman, 1983). Systems and interfaces should be designed to minimize the chance of making an error. When errors are made, the system should maximize the user’s understanding of the error, and make it easy for users to recover from the error (Bagnara & Rizzo, 1989; Booth, 1991; Lewis & Norman, 1986; Norman, 1991; Senders & Moray, 1991; Shneiderman, 1998). Even if a system is designed to follow these principles, it is virtually impossible for users, especially novice users, to avoid making errors, because novice users are especially prone to committing errors (Arnold & Roe, 1987; Carroll, 1990; Greif & Keller, 1990; Lazonder & Meij, 1995). Arnold and Roe provide a good operational definition of an error, which is “when a user’s intention or goal is not attained” (Arnold & Roe, 1987, p. 204).