Module Brr.Human

Human factors.

System latency feelings

These values are from here.

val noticed : Time.span

noticed is 0.1s, the time span after which the user will notice a delay and feel that the system is not reacting instantaneously.

val interrupted : Time.span

interrupted is 1.s, the time span after which the user will feel interrupted and feedback from the system is needed.

val left : Time.span

left is 10.s, the time span after which the user will switch to another task and feedback indicating when the system expects to respond is needed.

val feel : unit -> [ `Interacting | `Interrupted | `Left ] Note.signal

feel () is a signal that varies according to user latency constants:

  • [user_feel ()]t = `Interacting if t < User.interrupted.
  • [user_feel ()]t = `Interrupted if t < User.left.
  • [user_feel ()]t = `Left if t >= User.left.

Touch target and finger sizes

These values are from here.

val touch_target_size : float

touch_target_size is 9.mm, the recommended touch target size in millimiters.

val touch_target_size_min : float

touch_size_min is 7.mm, the minimal touch target size in millimeters.

val touch_target_pad : float

touch_target_pad is 2.mm, the minimum padding size in millimeters between two touch targets.

val average_finger_width : float

average_finger_width is 11.mm, the average adult finger width.