en

Alan Cooper

  • Вадим Мазурhar citeretfor 5 måneder siden
    to minimize mouse movement
  • Nikita Ischenkohar citeretfor 2 år siden
    When a control actively rejects keystrokes during the entry process, this is an example of active validation. A text-only entry control, for example, may accept only alphabetic characters and refuse to allow numbers to be entered. Some controls reject any keystrokes other than numeric. Other controls reject spaces, tabs, hyphens, and other punctuation in real time. Some variants can get pretty intelligent and reject certain numbers based on live calculations. For example, numbers might need to pass a checksum algorithm.
  • Nikita Ischenkohar citeretfor 2 år siden
    If an explanation is offered, users will be less inclined to assume that the rejection is arbitrary (or the product of a defective keyboard). They also will be in a better position to give the application what it wants.
  • Nikita Ischenkohar citeretfor 2 år siden
    If the control waits until the user finishes entering data before it edits the value, this is passive validation.
  • Nikita Ischenkohar citeretfor 2 år siden
    A way to address this is by maintaining a countdown timer in parallel with the input and reset it with each keystroke. If the countdown timer ever hits 0, do your validation processing. The timer should be set to approximately half a second. The effect is that as long as the user enters a keystroke faster than once every half-second, the system is extremely responsive. If the user pauses for more than half a second, the application reasonably assumes that he has paused to think, so it goes ahead and analyzes the input so far.
  • Nikita Ischenkohar citeretfor 2 år siden
    To provide rich visual feedback, the entry field could change colors or reveal an icon to reflect its estimate of the validity of the entered data.
  • Nikita Ischenkohar citeretfor 2 år siden
    For example, if the user enters a nonnumeric character in a numeric-only field, the application would show the hint near the point of the offending entry, yet without obscuring it. It would say, for example, ZIP codes can only contain numeric characters, 0–9. Yes, the user is rejected, but he is not ignored.
  • Nikita Ischenkohar citeretfor 2 år siden
    Instead of yellow ToolTips offering flyover labels for icon buttons, we could have pink ones offering flyover hints for unbounded edit fields. These hints can help eliminate traditional error messages. In this example, if the user enters a value lower than is allowed, the application would replace the entered value with the lowest allowable value and modelessly display a hint that explains the reason for the substitution. The user can enter a new value or accept the minimum without being stopped by an error dialog.
  • Nikita Ischenkohar citeretfor 2 år siden
    It’s nice when a text edit control is smart enough to recognize appropriate units. For example, if an application requests a measurement, and the user enters 5", 5i, 5in, 5 inches, not only should the control report the result as five, but it also should report inches. If the user enters 5mm, the control should report it as 5 millimeters.
  • Nikita Ischenkohar citeretfor 2 år siden
    Say that the field is requesting a column width. The user can enter either a number or a number and an indicator of the measurement system, as just described. Users also could be allowed to enter the word default, and the application would set the column width to its default value. The user could alternatively enter best fit, and the application would measure all the entries in the column and choose the most appropriate width for the circumstances. This scenario has a problem, however, because the words “default” and “best fit” must be in the user’s head rather than in the application somewhere. This is easy to solve, though. All we need to do is provide the same functionality through a combo box. The user can drop down the box and find a few standard widths and the words “default” and “best fit.”
fb2epub
Træk og slip dine filer (ikke mere end 5 ad gangen)