In computing, an error message is a relatively short text message that describes a problematic situation. An error message generally indicates that an operation failed and may imply if not direct the user to a corrective action.
An error message is a classification of information reported by software. Other information can be classified as a warning to describe a potential problem or as purely informational; not about a problem. Additionally, not all error information is classified as an error message. For example, a core dump or a stack trace may be reported about an error condition, but although they are a form of error information, they are not considered error messages. A more abstract representation of an error is sometimes used instead of a message such as an indicator light or a numeric display which may require the user to consult documentation to interpret the error.
An error message can be reported in a variety of ways. For example, in a graphical user interface (GUI), an error message may be displayed in a dialog box. In a command-line interface (CLI), an error message may be printed to a standard stream. A program may write an error message to a log file. [1]
The proper design of error messages is an important aspect of usability and human–computer interaction. [2] When the content of an error message is misleading or wrong, the user struggles to correct the issue and to complete their desired task.
While graphical user interfaces have different conventions for displaying error messages, several techniques are common.
The three main factors that influence the design of error messages are technical limitations, the amount of information to be presented, and what kind of user input is required. [3]
Some systems have technical limitations that may constrain the amount of information an error message can contain. For example, a printer with a sixteen-character alphanumeric display can only show a very limited amount of information at once, so it may need to display very terse error messages. Even with computer monitors, the programmer must consider the smallest monitor that a user might reasonably use, and ensure that any error messages will fit on that screen.
The nature of the error determines the amount of information required to effectively convey the error message. A complex issue may require a more detailed error message in order to adequately inform the user of the problem.
In general, software designers should take care that the content of a messages does not expose security risk. An error message should not expose information that can be exploited by a cracker to obtain information that is otherwise difficult to obtain. Examples are systems which may show either "invalid user" or "invalid password" depending on which is incorrect, and the error page in the web server IIS 5.0 which provides a complete technical description of the error including a source code fragment.
The following error conditions are often reported via an error message. When such a condition occurs, the section header text might be reported as an error message and in fact is in some contexts, but different text is used for the condition in other contexts.
Notable error messages in specific computing contexts include:
With the rise of Web 2.0 services such as Twitter, end-user facing error messages such as HTTP 404 and HTTP 500 started to be displayed with whimsical characters, termed Fail Pets or Error Mascots. The term "Fail Pet" was coined, or at least first used in print, by Mozilla Engineer Fred Wenzel in a post on his blog entitled "Why Wikipedia might need a fail-pet — and why Mozilla does not." [6] Dr. Sean Rintel argues that error messages are a critical strategic moment in brand awareness and loyalty. Fail pets are of interest to marketers because they can result in brand recognition (especially through earned media). "However, that same recognition carries the danger of highlighting service failure." [7] The most famous fail pet is Twitter's Fail Whale (see Twitter service outages). Other fail pets include: