Hacker Newsnew | past | comments | ask | show | jobs | submit | mrob's commentslogin

Most people aren't even aware that it's possible to turn them off.

Games are entertainment products, not tools. It's acceptable for a game UI to draw attention to itself for artistic effect, but I don't want to have to put up with this when I'm trying to get work done. Instant state transitions become imperceptible as you learn how they work. An instant UI effectively functions as part of your body, just like hand tools do. Animations make this impossible.

Compare an ordinary pencil (no animations, movement is directly tied to your hand) to a pencil with a pompom on a spring attached to the end. Which is most fun for brief use? Which would you rather write a whole page of text with?


For UI purposes, sub-150ms animations can be very effective as "pro" interface behaviours. That's close to our best reaction time [1]. Good UI personality doesn't have to get in the way of pro-level efficiency.

One of the ways to achieve this is to not actually transition between states, but simply animate the "end bounce" of an introduced element, as if it was eased into position. So not actually slid from the left, for example, but rebounding the last few pixels from an imaginary slide. Our eyes just draw their conclusions to inform us of a movement, and in exchange the component is readable and usable immediately.

[1] ~100ms represents optimal reflex time in recent research. [2] Anything that requires user attention to interact after the component appears is very comfortable with a 150ms transition. One important note is that for components you can navigate across (i.e. one key shortcut invokes a modal state, another key runs a command in that modal), experienced users will "type" consecutive shortcuts in one go, and you must have the second behaviour responsive from frame 1.

[2] Some athletes seem to train down to ~80ms on very specific reflexes, which recently lead to race-start controversies when block timers disqualify sub-100ms reactions for runners.


> ~100ms represents optimal [human] reflex time in recent research.

For unpredictable inputs. Intervals between a human own actions or discrepancies in delays between successive external events can be effected or perceived with significantly greater precision, especially for people with e.g. music training, especially for percussionists. I’d bet on somewhere between one and two orders of magnitude more precision, that is single-digit milliseconds, at higher skill levels. (Chopin’s Fantaisie-Impromptu is among the easier rhythm-based parlour tricks and already requires staying below ~30ms of error. Alternatively, a single frame at 60fps is 17ms, and speedrunners can hit single frames of a game pretty reliably.)


I'm pretty sure that the way speedrunners get their fast times are by either anticipating, or more likely, by finding an earlier trigger event that correlates, and allows them to hit the frame perfect timing.

Reaction time is unrelated to perceptible latency. You're not reacting to things; you are seeing the result of an action you requested. You already know it's coming. To say that delays less than your reaction time don't matter is like saying it doesn't matter if your flight is delayed by an hour because it takes 8 hours to cross the Atlantic.

Watching your own hand movements through your phone camera is a good demonstration of this. Set 60 Hz video mode, and the latency is probably less than 30 ms - but still extremely obvious.

it's quite a lot more than 30ms, as phone cameras do some real heavy-weight image processing to compensate for their tiny size, I'm talking neural networks and such. the throughput might be 60fps when it's all conveyor-ed but the latency sure isn't

You're right. Looks like it's more around 90 ms, at least for my iPhone 12 Mini. Test setup was taking a photo of the iPhone 12 Mini watching an incrementing counter on a 50 Hz CRT.

Perceptible latency goes well below 10 ms. https://www.youtube.com/watch?v=vOvQCPLkPt4

If the animations are effectively 'cancellable', i.e. they don't block input or delay the change in state, this can be reasonable. You can put in a sequence of actions into a UI at a much faster pace than 100ms, if you have the muscle memory for it.

Using a keyboard or other hardware input device, yes however in today's modern touchscreen world, you have to wait for the UI to render before you can get to the next step so you do build up a step for the next step memory, but you do have to watch the screen so it's not exactly muscle memory.

I think this is key to understand the motivation behind pretty and animated UIs. In games it has a different motivation compared to UIs that you use as a tool. If you compare old software to new software, a lot of tab switching and hotkey magic is simply not there anymore. Blender has a notoriously difficult UI but once you get the hang of it, you become very efficient. I think the current way of creating UIs caters to people making decisions of whether to purchase the software but that don't actually use the software in the end.

Everything in reality is animated. Nothing instantaneously snaps between two states. Which is why UX designers want to animate everything, it looks more natural for something to move from one place to the next rather than snap instantaneously. Everything used to be even more animated, ebook readers would play a 3D page turning animation, these days we settle for subtle abstract animations.

>Everything in reality is animated. Nothing instantaneously snaps between two states.

That's precisely why a GUI should not be animated. No matter how I operate it, the action I use already has its own animation, e.g. my finger moving on the mouse. If I add another animation in the GUI itself that's double animation. It's equivalent to pressing a button and triggering a servo to automatically press that same button.


Animations are highly effective tools for conveying state information.

Consider a toolbar with a mix of enabled and disabled buttons. Hover effects (which I would consider animations) convey that something is clickable, and on-click effects confirm an action. These effects convey meaningful information to both beginner users and power users of any software, and are in no way inconvenient to either group.

I generally agree animations tend to get in the way when you want to get shit done, but the idea that animations are only applicable as artistic effects rings untrue to me.


Hover effects are a terrible way of indicating if something is clickable, because you have to mouse over them instead of just looking at them. This problem was already solved a long time ago by rendering inactive elements in gray. I'm not sure which GUI did this first, but the Apple Lisa (1983, first mass-market personal computer with a GUI) definitely did it.

I'd rather have an imperfect frame now than a perfect frame later. Latency should be the top priority for any UI, because when latency is low enough it feels like a part of your own body, which minimizes cognitive load. Animation is especially bad for this, because animations add hundreds of milliseconds of latency.

I think that's a false dichotomy. The examples the author gives would not be slower in any way if done correctly.

Old computers, before double-buffering and compositing, were fast. Single-digit millisecond latency from input to output was common.

Now it’s 30-ish years later and computers have not recovered the latency increase from compositing, double-buffering, and other attempts to make every frame perfect. If you are showing a frame on the screen that has failed to react to input that already occurred, especially more than about 20ms later, that frame is not perfect. It’s extra imperfect if the user cannot easily do what they’re trying to do while waiting for the computer to catch up with them.

But yes, most of the examples in the article are surely both imperfect in the sense the author meant and pointlessly slow, so there is no dichotomy :-/


However, the author makes these assertions:

- No partially loaded content. - No relayout while content loads.

Holding those as hard rules leads to delay or rejection. Instead, while I agree it's better to have everything up front, gracefully handling cases when we don't is important, and some degree of responsiveness, even with partially loaded content, often makes for a better experience for the user than a delay.

Just be up front about it and find ways to keep continuity of relationship and smoothness. Diffeomorphic mappings are your friend...


I saw that but couldn’t really connect it to the rest of the article because none of their examples had data loading.

Like the issue with the osx side bar transition is that the order of operations makes no sense.

When expanding, it makes the buttons vanish only to animate their reappearance from nothing once a panel slides over them.

It would make sense in the physical world if the panel occluded the buttons during transition.

During closing, the reverse problem happens. The buttons aren’t occluded but clip through the panel like it became water.

It happens fast but not so fast that you can’t see it, and there is an unnecessary distortion.

In today’s world of AI, good taste is all we human workers have so we should call out cut corners.


You might have thought the title was about Wayland and you're right. But this isn't about Wayland.

Outside of dedicated notification areas, a GUI should only change state in response to user action. Because the user requested the state change, they naturally know how it changed. This means any animation is a redundant waste of time.

The notification area doesn't need animations either, because a GUI is only appropriate for displaying non-urgent notifications. If something really needs urgent attention, you need alarms and flashing lights, not an animated "toast".


This is the standard confusion HNers have with real life.

I think it should work this way vs “how it be”


Acid-free paper and a carbon-black ink, or a modern neutral pH iron-gall ink, should last 1000 years if stored correctly. 2000 might be pushing it, but under a controlled atmosphere it should be possible.

"Young adult" in this context is a publishing industry marketing tactic. It doesn't refer to actual adults. The target audience is mostly children who want to feel like they're getting away with something they're not supposed to.

Young adult literature is not "books for target range of 11-15". OP made that claim up to make it sound terrible that people who finished high school report liking to read books literally written for their age bracket. Official young adult age range is 13-18, which means literally high schoolers. And yes, they are already grown a lot, so those books frequently end up being popular among reading adults too.

I am from generation that read a lot. Huge bulk of what people, both adults and teenagers, read was something called "junk literature". It is fascinating how the "kids don't read for pleasure" panic instantly jumps into "it is horrible that when kids read for pleasure, they report liking books that are age appropriate and written so that their generation likes them".


I remember plenty of "young adult" books in the school library in elementary and middle school in the 90s. e.g. I read A Wrinkle in Time in 4th grade, and The Giver was assigned in 7th. I think Hatchet may have been a choice of assigned reading in 5th. IIRC (and a quick search confirms) all of these were marketed as young adult. I've always thought of YA as targeted at roughly 9-12 years old. I remember thinking the term was patronizing when I was a kid.

You seem to assume that reading fiction is some kind of competition. You read it as 9 years old, therefore it is shameful to read it as teenager or adult. That is genuinely absurd.

I never said a kid should not be allowed to read books outside of their demographic bracket. Kids can read books "officially" for younger kids, older kids or adults assuming it does not contain genuinely 18+ content. A kid reading book meant for young adults will typically miss some themes, topics or relationships. It will relate characters differently, will miss some motivation and some stuff flies over their head. I personally missed most of the sex in Witcher when I read it the first time when I was too young to figure them out. I thought some characters are just mean when adult me understood exactly why they do what they do.

Young adult category is not meant or written for 9-12 years crowd. That does not mean kids brain will melt. My own kids have seen and enjoyed entertainment meant for older people - but it was super apparent a lot of it went right over their heads when I talked with them.


I don't view it as a competition. I've never been big on fiction in the first place. I'm just listing books I remember being present if not assigned in classrooms when I was that old, and I remember these things being characterized as Young Adult, which struck me as condescending as a 10 year old.

By contrast, in high school we were assigned books like Brave New World, which makes a lot more sense as a book for that age range and is more what I'd think "young adult" should mean.


It will rot your mind! It will make your eyes square! Stop doing something that I am not doing!

> "junk literature" ... fascinating ... panic

Yes. It's funny how old this meme is. It's about as old as novels, at least. It's fun reading centuries-old novels and finding references (well, thinly veiled protests) to the holier than thou impeccable paragons of virtue that have nothing better to do than hassle someone who wishes to read a book.

I suppose there's been some progress, if the fiction police have had to retreat to a limited subset of fiction to call sinful.


If by 'publishing industry marketing tactic' you mean a demographic, age range and to some extent (you can argue with this one) a genre, sure.

It doesn't refer to "actual adults", no: The age range is usually said to be 13..18.

The target audience is largely teenagers who want to read what they want to read.

What's your problem with "kids" reading books, anyway?


>The weirdly obsessive zeal that orgs like Toastmasters have about eliminating them is weird.

If you speak with disfluencies, you probably didn't sufficiently rehearse your speech. If you didn't rehearse enough, you probably didn't put much effort into writing it either, so why should I put much effort into listening? It's the same principle as AI slop.


Not necessarily true, more rehearsal isn't the key to fluent oratory.

Many people can speak off the cuff fluently and confidently, avoiding "like", "um", and other filler words. And even if you're not speaking fluently, leaving silences as punctuation is more effective, IMO.

Many impressive speakers I've met actually cite Toastmasters! So their obsessive zeal actually does work.

More rehearsal does work too sometimes, but it does sometimes lead to speeches "sounding too rehearsed".


> Many people can speak off the cuff fluently and confidently, avoiding "like", "um", and other filler words.

I don't think that's true, we usually just don't notice filler words in the same way we are surprised that people usually don't even talk in whole sentences, in contrast to written text or movies (which also use written text).


Physics doesn't prevent reproduction of bass in IEMs. Thanks to inverse square scaling of sound pressure with distance, putting the driver within the ear canal greatly reduces the required output level to the point where even tiny drivers can handle it. Lots of IEMs can reproduce loud, deep bass with low distortion.

You of course miss the whole-body tactile vibration effect of loud bass played on speakers, but the sound itself is there.


>it sounds more like what buyers today expect

Is that really true? Anybody buying music today instead of streaming is somebody who takes music more seriously than most. It seems likely they're going to care more about sound quality than the streaming audience.


Is it true? No idea. It's plausible. My point was that one example of a heavily compressed track doesn't make a loudness war. I offered a plausible alternative explanation of the same facts. It seems likely that someone buying a mass market album today would expect it to sound pretty similar across all formats.

I don't know why you've introduced this 'serious' vs. streaming thing.

What does taking music more seriously even mean here? If you seriously like listening to normalised Purple Rain on 128 kbps mp3 and also like collecting physical media, you might seriously like to buy and listen to normalised Purple Rain on your preferred (lossless, or less-lossy) format.


The modern equivalent of ReplayGain, EBU R 128, is already ubiquitous in the industry. People brickwall records anyway, presumably because more people are likely to complain about being unable to hear the quiet parts in their car, or about their phone speaker not being able to play it loud enough, than about the whole thing sounding squashed.

The ideal solution would be to distribute high dynamic range audio with metadata to configure optional playback-time dynamic range compression for noisy listening environments or weak playback equipment.


Agreed

Or make a sound format (like video containers) that could have two separate mixes of a track.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: