A guide to proper use of animation in UX
uxdesign.cc
uxdesign.cc
Edit: here is some reading for the downvoters:
https://usability.yale.edu/web-accessibility/articles/animat...
https://alistapart.com/article/designing-safer-web-animation...
https://simplyaccessible.com/article/animations/
http://accessibility.psu.edu/animations/
https://www.smashingmagazine.com/2018/04/designing-accessibi...
[1] except in gaming, where animation is expected and reasonable
I'm often amazed by "average" users who seem completely unfazed when they visit sites filled with animated ads and other visual noise; but it likely does negatively affect their understanding of the actual content, since they are being constantly distracted by everything else trying to get their attention. I was a few times forced into this situation and had to physically cover the flashing banners and other crap with my hands in order to actually read the content. Even if it's only in my peripheral vision, I found it to be sufficiently distracting that I couldn't think about the text I was reading --- it was like being half-asleep. I could read each word, but everything felt like a blur.
This brings up my hypothesis that the reason a lot of users seem to not notice things in the UI or read warnings closely is that they're so used to being distracted by useless things and desensitised to it that they've accepted not being able to concentrate and think as being normal, which is quite unsettling. Many times I've had to help someone out with an unfamiliar (to both of us) UI, and the person I was helping would gaze blankly and not be able to find something that I instantly saw.
They are unfazed because it's the norm, not the exception. Humans adapt. It's what we do. They see X and presume that's the way It's supposed to be.
This explains fashion. It even explains obesity. We look around and unless there's clear and obvious danger we conform, because conforming has historically been s survival instinct.
That "survival skill" is coming back to haunt us.
> "This brings up my hypothesis that the reason a lot of users seem to not notice things in the UI or read warnings closely is that they're so used to being distracted by useless things and desensitised to it that they've accepted not being able to concentrate and think as being normal..."
To be clear, I agree.
While it is true that some animations are excessive, I find that a certain amount of animation makes it less taxing to follow what is happening on screen. If big changes happen suddenly and without animation then I have to spend a little bit of extra time to figure out what moved where relative to where it was before and what was added, removed or changed.
Mainly I mean when changes happen automatically, like if something was dynamically added, removed or changed by the system. Not, say, if I initiated a page-down with my keyboard in mutt etc.
We don't have a widely-understood cross-cultural shorthand for annotating an item's 'newness'. By contrast, we are all familiar with objects retaining their identity while they move.
When I minimize my window in macOS, it physically transforms and is sent to its new location. I know where the window I was working on went, and I as a person would have a good reason to be able to somewhat or even mostly comprehend this even if I hadn't ever seen macOS before.
With no animation, the large and prominent window I have been using would immediately disappear with no indication where it went, and the minimized icon in the dock would be highly likely to be overlooked. It would also look almost exactly like "closing" the window, and it would be easy for an inexperienced user to think minimizing a window and closing it are the same thing. I can assure you, this blurred conceptual distinction is not an imaginary problem.
Sure, I don't personally need this animation because I'm an experienced user already. However, in almost all cases it is fundamentally flawed to approach interface design by considering only the needs and preferences of experienced users.
Sure, I don't dispute that for a second. However, we seem to have moved from "UI animation is categorically worse in all cases" to something like "UI animation is categorically worse for moderate-to-experienced users".
Frustration comes not from animation speed (except unreasonably slow), but from animations that freeze the interface. If you buy item and it jumps into a cart; if new item arrives and inserts into a list; if you change pages with < > buttons -- it is okay if it animates, but what is not okay is that you cannot click another button or simply scroll before the end of entire animation or at least slow part of ease-in curve. UI simply has response delays because of these tail timeouts. It feels slower because you cannot train yourself to catch a right moment on ultraslow ends of ease-in -- and so you tap twice to make an action or wait extra. (edit: remember how you quickly tapped on your phone to emulate g-sync with your finger?)
So, when you click buy, item starts jumping into cart, but you can instantly go back or buy/open another item. When you change pages and tap < twice, it just scrolls/rotates/whatever twice as fast. When new items arrive, space for them expands almost instantly, and then "new" animation goes, not interfering with your actions. If new items arrive continuously, debounce on 800-1500ms to prevent animations spoiling the entire interaction. And so on.
You may be interested in this mod: http://falloutmods.wikia.com/wiki/Sfall
I enjoyed playing Fallout 1 and 2 as a child, but I had very low standards back then. I now consider them unplayable without using this mod to speed up the animation.
Animations are (if done right) very useful in games. It's what makes you feel, for example, the difference between a weak damage (HP bar drops slowly) and something to watch out for (the HP bar actually shakes as a chunk is wiped out).
It also helps with immersion.
That use of animation is okay, but to make your product accessible, just make sure that there is a way to turn off the animation. Easing effects and simulation of real physical motion are not needed. Apple's out-of-the-box UIs are unusable to me. My window manager (i3wm) has no animation.
2. Page down doesn't always scroll the same distance when you hit the end of the page, unless you have over-scrolling like some code editors do but websites and browsers don't.
For media naturally represented as pages, like PDF or images, and when one whole page fits on a screen there's a different story though, there it's nice to be able to jump pages instantly without animations, because the page boundary itself can be used as reference. But for reflowing endless wall of text media like web pages and code you kindof need to follow your previous position as a reference.
You are among a tiny minority and come off as trying really hard when insisting that animations are useless. Very few people want a 0ms screen flash on page scroll.
There are many other people in this HN discussion expressing a preference for fast interfaces over animated interfaces.
Nobody in this thread besides you has expressed a desire for a 0ms scroll. Nobody.
JoshMnem: "The proper way to use animation is to NOT use it except when there is absolutely no other way to communicate something." (scrolling is communicated by the fact that you pressed the page-down button)
yorwba: "The first time, the effect would be made very obvious; but with continued use, it becomes so fast that it's instant."
iforgotpassword: "I usually try to disable animation entirely"
th0m4s: "On my last phone I turned the animations off complete"
kqr: "I turn off animations entirely on my phones, and when watching others use their phones I'm always baffled by how slow they feel."
devgutt: "You can also don't use animation at all. I really don't like animations even when used correctly."
+1 for mutt. Text-first is the way to go.
Then out of curiosity I disabled them all on a release and the feedback was pretty much the same except I got a few "it's much faster" responses.
Fwiw internal business application not consumer but lesson learnt.
Personally I very very rarely think animation is an improvement.
Except where you are using animation to cover loading times and at the end of the animation the UI is ready perhaps.
What I've exexperienced is that the team / client falls in love with senseless doodads and whatnots. They lack they empathy to ask:
- "If I saw this for the first time, what would I think?" as well as
- "If I had too keep seeing this - knowing it's not helping me - what would I think?"
The user needs is a distant third to the team's wants and lack of empathy. You'd think after Adobe Flash being abused we would have learned? That doesn't seem to be the case.
> Most animation is visual spam. The proper way to use animation is to NOT use it except when there is absolutely no other way to communicate something.
But they don't back up that claim. They don't come close to backing up such a sweeping statement.
Examples: animations that simulate real physical motion or cause flashes to appear on the page (like Material Design) on sites where users are supposed to read text are nearly always a bad idea from an accessibility perspective. Subtle animation that makes a certain part of a user interface clearer when the user is not reading content is okay if a lot of moderation is used. Don't think "how can I add animation?" -- think "how can I remove animation so that this still works?" Designers should also test the interface and make sure that it still works with animation disabled.
They are still too slow.
If you have an android phone, go into developer options and turn animation scale to 0.5x (animation duration is halved, so they are twice as fast). You'll be amazed how much faster the OS feels.
1. Pride. We worked hard to build this animation, and the user is damn well going to watch it! Because they'll definitely like it as much as we do. (This is an example of not putting the user first.)
2. Inaccurate conclusions from user testing. I think users go through two phases. Early on, they don't know their way around the UI and can't navigate quickly. Plus the animations are novel and they're still enjoying them as eye candy. So for two reasons, they don't mind slower animations. As they use the UI for days or weeks, both these factors flip. You start navigating the UI by muscle memory, and novelty is gone. Thus you can only find the optimal animation speed by testing how a user feels about it after weeks of usage, which isn't how user testing is usually done.
In short, with 100ms you have to go ¬-shaped and with 400ms you can go \-shaped.
Now almost nothing UX-based is configurable
Imagine moving a window 500px over 100ms in 30FPS, that is just 3 frames! It means your window will jump 166px per frame. On average resolution display this translates to a few centimers jump per frame. Not very smooth.
However, I've notice Android occasionally uses animation to convey things to the user, so I'll try your idea of halving it.
I forget which but stuck with 0.5x for that reason.
Was an article added to the list during a refresh? Did the correct item actually go away after deleting it? It's easy to miss updates without animations. Even if you don't miss the update an animation will provide an additional confirmation that the correct thing happened.
On touch devices there's also the fact that animations mimic input gestures. Imagine swipe-to-delete without the item actually moving, that would be super awkward to use...
Of course, like anything, it is possible to mis-/overuse.
I suppose you could just about make a case that when you have a modal element like a form to edit an item, if it takes up most or all of a small screen then having an animation to expand it makes a visual difference between "you're now on a new page" and "this form has popped up, but when you close it you'll be back on the page you were before - it hasn't gone away".
Otherwise mundane app will look much more sophisticated. It can also make the experience more fun, which makes it easier to addict the user. Just think why slot machines are so colorful and flashy. Would they have same appeal if they would look and behave like a parking meter?
I would not mind animations if:
- they would not slow me down - I'm faster than them and I have to wait. It would be interesting if animations would be faster or disabled when user interacts faster than some threshold.
- they would be interruptible
- they would not cause performance degradation
- they would not add more bugs. As with most asynchronous actions they are not properly tested when things happen simultaneously or are interrupted.
Though it may be interesting just to let users choose whether they want to see animations in general. That'd solve a lot of problems here, and additionally give you some metrics in regards to how many people like the things.
That would be the ideal solution. Make a setting in browsers and devices where users could turn off all animations. Designers could test their UIs with the setting on and off. Everyone would be happy.
Except when there is - for example, first-user introduction/onboarding segue's, which guide the users attention around the app by highlights/flows, perhaps overlaid in a fashion that makes it clear that the overlay itself is impermanent (by fading it) .. but only if its got a real purpose, as you state.
I appreciate this degree of assistance in learning a new app personally, especially on mobile.
Animating the UI is what we want the user to do anyway - and many users are very animated about how they use their apps (i.e. selfie culture), so using animation to train the user to use the app properly, such that the user animates back, seems obvious.
- some sticky like and share feature on the side
- weird contrasts which are not comfy for the eyes
- too many animations (this might not count at all)
This sums up most things I hate about modern web pages actually. Why use all these things? Especially huge sticky headers are just super annoying. Please don't use them. Thanks.
Also link related: https://alisdair.mcdiarmid.org/kill-sticky-headers/
Does that mean they're always done well? No, things like Medium's 'please join our service/subscribe to see more from [name]' are ugly and pointless, and nothing more than a visual distraction. Sticky ads (or for that matters, ads that try to take over large parts of the page in general) are also terrible for obvious reasons.
And yes, a lot of 'fancy' design techniques just hurt the usability of the page, as seen with anything that hijacks scroll/overuses parallax effects.
But I don't think sticky elements are bad in of themselves, and they can make the site easier to use if done correctly.
Yet I must endure all of its downsides the whole time I'm on the page, from taking up precious screen real estate to the even more annoying approach of popping in and out when I scroll up/down one pixel.
Just think of how seldom you interact with the navbar of most webpages and why it then needs to follow you around the page in the off chance that it's more convenient than just scrolling to the top.
So far I remain unconvinced that it can be done well since the entire premise is flawed: my device already gives me a one-click scroll-to-top shortcut. Like inertia scrolling, it's a bad smell when every website thinks it has to bring its own implementation of feature devices should already have.
A sticky header changes how page-down works, so I have to adjust my eye movement to compensate. Because of this I consider allowing web pages to set sticky headers a browser bug. Browser devs disagree, but at least I have the tools to disable this kind of user-hostile behavior.
So, let me get this right. Animations on th web should be fast, because we're used to the web being fast. Animations on mobile should be slow, because we're used to mobile apps being slow?
> In other cases, the user will inevitably think that the computer freezes or has troubles with the internet connection.
But on mobile, that is normal?
If I ever need to write a mobile app, I think I've got an idea to make my app feel a lot faster than its competitors.
What I don't understand is that we are not supposed to use motion blur. Is it only because it's hard to do right?
Also I always thought that the "when the moving objects transform their size disproportionally, they should move along the arc rather than in a straight line" thing felt wrong. Anybody else feels this way?
Animation can serve a communication (and hence UX) purpose, but when everything is animated it defeats its purpose.
It also has to be noted that the more animations there are, the better GPU you need, which can create a false need of a new device.