Content deleted Content added
HeyElliott (talk | contribs) |
→Avoid when possible: Fixed typo Tags: Mobile edit Mobile web edit |
||
(12 intermediate revisions by 11 users not shown) | |||
Line 26:
* [[Text editor]]s – typically are in insert mode by default but can be toggled in and out of [[overtype]] mode by pressing the [[Insert key]].
* [[Bravo (editor)]] – the first [[WYSIWYG]] modal editor made for [[Xerox Alto]] computers at [[Xerox PARC]] by [[Butler Lampson]] and [[Charles Simonyi]]
* [[Vi (text editor)|vi]] – has one mode for inserting text, and a separate mode for entering commands. There is also an "[[Ex (text editor)|ex]]" mode for issuing more complex commands (e.g. search and replace). Under normal circumstances, the editor automatically returns to the previous mode after a command has been issued; however, it is possible to permanently move into this mode using ''Shift-Q''.
** Derivatives, such as [[Vim (text editor)|Vim]] and [[Neovim]]
* [[Emacs]] – has the concept of "prefix keys", which trigger a modal state by pressing the control key plus a letter key. Emacs then waits for additional keypresses that complete a [[keybinding]]. This differs from ''vi'' in that the mode always ends as soon as the command is called (when the sequence of key presses that activates it is completed). Emacs also has
* [[Cisco IOS]] – certain commands are executed in a "command mode".
* Tools chosen from a [[Palette (computing)|palette]] in [[Photo manipulation|photo-editing]] and drawing applications are examples of a modal interface. Some advanced image editors have a feature where the same tools can be accessed nonmodally by a keypress, and remain active as long as the key is held down. Releasing the key returns the interface to the modal tool activated by the palette.
Line 35:
===Modeless===
[[Larry Tesler]] at [[PARC (company)|PARC]] devised insights for a modeless [[word processor]] from the feedback gathered from a [[user test]] with newly-hired Sylvia Adams, where she was asked to [[ad lib]] some gestures to correct proofreading marks on the digital text.<ref>{{cite web|url=https://spectrum.ieee.org
== Mode errors ==
Line 48:
* PC users whose language is not based on the [[Latin alphabet]] commonly have to interact using two different [[keyboard layout]]s: a local one and [[QWERTY]]. This gives rise to mode errors linked to the current keyboard layout: quite often, the synchronization of "current layout" mode between the human and the interface is lost, and text is typed in a layout which is not the intended one, producing meaningless text and confusion. Keyboard keys in user interface elements like "(y/n)" can have opposite effect if a program is translated.
* A frequent example is the sudden appearance of a [[modal window|modal]] [[Alert dialog box|error dialog]] in an application while the user is typing, which is a form of [[focus stealing]]; the user expects the typed text to be introduced into a text field, but the unexpected dialog may discard all the input, or may interpret some keystrokes (like "Y" for "yes" and "N" for "no") in a way that the user did not intend, often triggering a destructive action that cannot be [[undo|reverted]]. Programmers can mitigate this by implementing a short delay between the modal dialog displaying and it beginning to accept keyboard input.
* The [[Unix]] [[text editor]] [[Vi (text editor)|vi]] can be notoriously difficult for beginners precisely because it uses modes, and because earlier versions configured mode indication to be turned off by default.
* In
=== In transportation accidents ===
* Mode confusion was part of the events that led to the loss of [[Air France Flight 447]] in 2009, and the loss of life of 228 people. The pilots reacted to a loss of altitude by pulling on the stick, which would have been an appropriate reaction with the autopilot fully enabled, which would then have put the aircraft in a climbing configuration. However, the airplane's systems had entered a mode of lesser automation ("direct law" in Airbus terms) due to a blocked airspeed sensor, allowing the pilots to put the plane in a nose-high stall configuration, from which they did not recover.<ref>[https://arstechnica.com/information-technology/2017/11/uss-mccain-collision-ultimately-caused-by-ui-confusion/ BEA final report on the loss of Air France 447]</ref>
* According to the [[National Transportation Safety Board|NTSB]], one of the factors contributing to the 2013 [[Asiana Airlines Flight 214]] crash was ''"the complexities of the autothrottle and autopilot flight director systems … which increased the likelihood of mode error".''<ref>[https://web.archive.org/web/20140625051127/http://www.ntsb.gov/news/events/2014/asiana214/abstract.html National Transportation Safety Board]
* On January 17, 2015, the offshore supply vessel "Red7 Alliance" collided with a lock gate of the Kiel Canal in Germany, damaging it severely. An investigation concluded that the levers controlling the ship's [[Azimuth thruster]]s were not used in a way appropriate to the mode they were set to, resulting in the ship accelerating instead of coming to a stop in the lock.<ref>[https://www.bsu-bund.de/SharedDocs/pdf/DE/Unfallberichte/2016/Untersuchungsbericht_16_15.pdf?__blob=publicationFile&v=5 M/V Red7 Alliance investigation report] (in German)</ref>
* On August 21, 2017, the US Navy destroyer [[USS John S. McCain (DDG-56)|USS John S. McCain]] [[USS John S. McCain and Alnic MC collision|collided]] with a commercial tanker in the Strait of Malacca, resulting in the loss of life of ten crew members. An investigation conducted by the US military concluded that immediately prior to the collision, helm and propulsion controls had been redistributed between bridge stations, and the bridge crew was not fully aware of that redistribution.<ref>{{cite web | url=https://arstechnica.com/information-technology/2017/11/uss-mccain-collision-ultimately-caused-by-ui-confusion/ | title=USS McCain collision ultimately caused by UI confusion| year=2017}}</ref>
* On April 10, 2018, the 5000 ton supply vessel ''VOS Stone'' unberthed from a wind platform under construction in the Baltic Sea. The vessel's master decided to put the steering in an alternative mode to perform a test of the system. Insufficient communication with the officer of the watch led to a temporary loss of control, collision with the platform, injury to three crew members, and significant damage.<ref>[https://www.bsu-bund.de/SharedDocs/pdf/EN/Investigation_Report/2019/Investigation_Report_118_18.pdf?__blob=publicationFile&v=1 Investigation Report 118/18], Federal Bureau of Maritime Casualty Investigation (Germany), April 10, 2019</ref>
* On April 19, 2020, an [[F-35A]] fighter jet was destroyed in a landing mishap at [[Eglin Air Force Base]]. Investigations concluded that the aircraft was misconfigured with the wrong mode of [[autothrottle]], resulting in the aircraft becoming uncontrollable upon touchdown.<ref>[https://web.archive.org/web/20201012024653/https://www.afjag.af.mil/Portals/77/AIB-Reports/2020/May/Eglin%20AFB%20F35A%20AIB%20Report_Signed.pdf US Air Force accident report]</ref><ref>
* On October 5, 2024, the [[HMNZS Manawanui (2019)|New Zealand Navy hydrographic vessel ''Manawanui'']] ran aground on a reef off [[Siumu]], [[Upolu]], [[Samoa]], and sank the following day. According to an official inquiry, the bridge crew failed to recognize that the ship's autopilot was enabled.<ref>[https://apnews.com/article/zealand-navy-ship-samoa-manawanui-sinking-military-dd9cccaa0739ef98f615cc4969a117b0 Crew mistakes caused the sinking of a New Zealand navy ship off Samoan coast, inquiry finds], Charlotte Graham-McLay, AP News, November 29, 2024</ref>
== Assessment ==
Modes are intended to grab the user's full attention and to cause them to acknowledge the content present in them, in particular when critical confirmation from the user is required.<ref name="context">{{cite web|url=http://quince.infragistics.com/Patterns/Modal%20Panel.aspx#Context|title=Modal Panel - Context|website=Infragistics.com|url-status=dead|archive-url=https://web.archive.org/web/20130506101851/http://quince.infragistics.com/Patterns/Modal%20Panel.aspx#Context|archive-date=2013-05-06}}</ref> This latter use is criticised as ineffective for its intended use (protection against errors in destructive actions) due to [[habituation]]. Actually making the action reversible (providing an "undo" option) is recommended instead.<ref>[[Aza Raskin]], A List Apart: [http://www.alistapart.com/articles/neveruseawarning Never Use a Warning When you Mean Undo]</ref> Though modes can be successful in particular usages to restrict dangerous or undesired operations, especially when the mode is actively maintained by a user as a ''quasimode''.
Modes are sometimes used to represent information pertinent to the task that
Modal proponents{{Who|date=September 2010}} may argue that many common activities are modal and users adapt to them. An example of modal interaction is that of driving motor vehicles. A driver may be surprised when pressing the acceleration pedal does not accelerate the vehicle in the forward direction, most likely because the vehicle has been placed in an operating mode like park, neutral, or reverse. Modal interfaces require training and experience to avoid mode errors like these.
Line 73 ⟶ 74:
[[Larry Tesler]], of [[Xerox PARC]] and [[Apple Computer]], disliked modes sufficiently to get a personalized license plate for his car that read: "NO MODES". He used this plate on various cars from the early 1980s until his death in 2020. Along with others, he also used the phrase "Don't Mode Me In" for years as a rallying cry to eliminate or reduce modes.<ref>[http://www.mail-archive.com/lisalist@mail.maclaunch.com/msg00409.html Origins of the Apple Human Interface] by Larry Tesler, Chris Espinosa</ref><ref>[https://web.archive.org/web/20040511051426/https://computerhistory.org/events/lectures/appleint_10281997/appleint_xscript.shtml Origins of the Apple Human Interface - full transcript]</ref>
Bruce Wyman, the designer of a [[multi-touch]] table for a [[Denver Art Museum]] art exhibition<ref>[
==Design recommendations==
===Avoid when possible===
[[Image:Arret.jpg|thumb|Small signs make explicit the mappings from signal to roads.]]
Alternatives to modes such as the [[undo]] command and the [[Recycle bin (computing)|recycle bin]] are recommended when possible.<ref name="Implementation">{{cite web|url=http://quince.infragistics.com/Patterns/Modal%20Panel.aspx#Implementation|title=Modal Panel - Implementation|website=Infragistics.com]|url-status=dead|archive-url=https://web.archive.org/web/20130506101851/http://quince.infragistics.com/Patterns/Modal%20Panel.aspx#Implementation|archive-date=2013-05-06}}</ref> HCI researcher [[Donald Norman]] argues that the best way to avoid mode errors, in addition to clear indications of state, is helping the users to construct an accurate [[mental model]] of the system which will allow them to predict the mode accurately.<ref>{{cite journal
This is demonstrated, for example, by some [[stop sign]]s at road intersections. A driver may be [[Operant conditioning|conditioned]] by a [[four-way stop]] [[sign]] near his or her home to assume that similar intersections will also be four way stops. If it happens to be only two way, the driver could proceed through if he or she sees no other cars. Especially if there is an obstructed view, a car could come
===Proper placement===
|