4

I've noticed a hint of something in the most satisfying GUIs I've interacted with. I'm not sure if I'm imagining this, but sometimes I think there's a small (almost undetectable) delay between my actions as a user (e.g. a button click) and a response from the UI. I'm not referring to when a task is being completed in the background and time is actually needed to complete it and respond to the user. Rather, I mean a very very slight delay on feedback that could occur instantaneously.

I'm beginning to suspect on some level that this delay makes the action feel more weighty and powerful, so long as it isn't too long. So my questions are:

  1. Has this effect been documented / researched at all?
  2. If so, how and why does it work?
  3. What's the best way to incorporate this into my own GUIs?
  • 1
    Are they animated interfaces? If so, you might be noticing the first animation frame being the same as the one before your action. And from which point do you start 'counting' the delay? Many interfaces react on release (a press has 3 stages; press, hold, release) because it allows for canceling (hold and move cursor/finger away) or gestures. So if you count from press, but the interface responds to release, the delay is purely in your head. – PixelSnader Feb 24 '16 at 23:29
3

I think the answer is YES.

2) This is because in the real world when you open a door or move an object everything happens immediately without delay. People are accustomed to interact with physical objects and get immediate feedback of the state of the object (if you pick up a rock you see immediately what below it). When people browse the internet they expect the same behaviour because they don't understand why websites/apps take some time to load. Generally the faster your website loads and responds the better. There is one recommendation from Google that your web page should load in less than 200ms or even less.

Google: Research has shown that any delay longer than a second will cause the user to interrupt their flow of thought, creating a poor experience.

1) There is relevant research about Virtual reality and how each delay in rendering of the virtual environment can lead to motion sickness because the brain expects one visual stimuli but when its not observed the brain gets confused and the user gets motion sickness.

3) You can use reactive frameworks, like Meteor and reactivex. I would suggest to use Meteor as it has loads of plugins, its easy to program, and has big user base with a lot of support forums and places you can get help.

  • 1
    A thousand times yes! UI should be responsive to the user above all else. Don’t make the user wait for the computer at all. Don’t make them tap again which probably undoes the first tap. – Simon White Feb 27 '16 at 9:05
3

Often, but not always.

Actions that are meant to be taken multiple times, daily, are best to be as fast as possible.

There are various situations where a delay might be beneficial in some way, like increasing trustworthiness of the output to the user, or even the value.

Coinstar is a great example of this. The machine is able to calculate the total change deposited almost instantly. Yet, during testing the company learned that consumers did not trust the machines. Customers though it was impossible for a machine to count change accurately at such a high rate.

Source: http://www.90percentofeverything.com/2010/12/16/adding-delays-to-increase-perceived-value-does-it-work/

Maybe someone can build Rome in a day, but I'll have some doubts about its construction quality.


There's a related question too: Can higher speeds harm the user experience?

2

It is risky to say 'always' when it comes to user behaviour. I think the issue here is that the definition of instantaneous might vary depending on where the delay happens in an user interaction, because if you were simply navigation the user interface then the focus or hover over behaviour should be immediate. But if you were to click a button and some validation or calculation is required, sometimes prolonging the response time fits more with the expectation of the user that the action requires time and therefore they are not looking for (and perhaps end up missing) the immediate feedback from the system.

Looking at some of the buttons these days that are also animated when the user triggers an action (e.g. with a loading animation), I see this as a way of managing the user's expectation for certain actions, and whether it is deliberate or not I think it is a good strategy of matching the user's expectation to the system's response.

  • No. Users never expect a response takes time. Only programmers think about what the computer is doing. If the response is not immediate, users think the computer is broken and tap again. – Simon White Feb 27 '16 at 9:06
  • Funny how you didn't understand the question and Simon didn't understand you didn't. You are right that animations can be used, but animation is also a response and the question is if a response should always be instantaneous. Yes, an animation should start immediately. – jazZRo Feb 27 '16 at 12:22
  • @jazZRo actually, my answer is really that you don't really know what the users think, and you can never guess what the programmer's intention is. I only highlighted some examples where this is the case, and leave it to the person asking to question to decide what it might be because research isn't really going to tell you unless it matches the exact context of usage as the applications being referred to. – Michael Lai Feb 27 '16 at 15:12
1

Immediate is a debatable term here, as we as a species have a specific speed of recognition (a speed of a signal going through our perception system, being analysed and being introduced to our cognition as a reaction to our action). What we consider immediate, would take ages for a fly.

Do you mean an artificial delay that is made slow specifically in order to help human beings notice it?

1

"Rather, I mean a very very slight delay on feedback that could occur instantaneously."

This is often used on tooltips, to stop it flashing and changing as you move a mouse pointer across an area of the UI to where you actually want it to be - I'm thinking data visualisations particularly here. A delay of 100ms or so stops users thinking "c'mon hurry up!" when they actually want to see the tip, but is long enough for a mouse whizzing across a bunch of stuff not to trigger a frenzy of distracting tooltip updating.

Q's related to this:

Why does the title attribute have a delay?

How long should the delay be before a tooltip pops up?

Microsoft has guidelines that say -->

https://msdn.microsoft.com/en-gb/library/windows/apps/hh465476.aspx "Tooltips are an interruption. A tooltip can be as distracting as a pop-up, so don't use them unless they add significant value."

But don't mention if it's based on any empirical research

  • Stopping it from flashing is not responding to the original interface event. – Simon White Feb 27 '16 at 9:08
  • A tooltip delay stops it responding to dozens of different, original UI events in the scenario I describe. Most interface events in pointer-based UIs are move, enter and exit events over UI elements. The google chrome bookmark bar demonstrates this - move over it quickly, no tooltip. Slow down and a tooltip is shown as the UI reckons the element has captured your interest and you're not just traversing it. – mgraham Feb 27 '16 at 9:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.