Live data from Hacker News

Performance Matters (2019)

hillelwayne.com

61–70 of 75 posts

Re: Performance Matters (2019)

#61
post #42

Software can be bad in arbitrary way, and still be useful and not too agonizing. But, software that ignores, delays or discards user inputs ? Absolutely F*$#ing Unacceptable. Unfortunately, most user-interface software (including the ePCR software described in this article) commits this "Unpardonable Sin" of UI software. So, the EMTs, being insulted by the software developer, just don't use it. If you write UI softwa…

Unfortunately Firefox is guilty of that Unpardonable Sin. Often I will open a new window to search for something and start typing my request right away, since the address/search bar should be focused on new windows. If the window takes a little bit of time to appear for some reason, the first few characters will be dropped. Frustrating. Chrome on the other hand does not exhibit this defect, even if I start typing bef…

Firefox has too many abstraction layers. The other day I've managed to break the multi-account containers, because I pressed Enter (to confirm opening a site in a different container) faster than the confirmation page finished loading, which yielded a) an empty tab with no site, and b) a confirmation page with no URL in it, that did nothing.

Software should never break because flesh-and-bone human user is "too fast" for it.

Re: Performance Matters (2019)

#62

What would happen if you replace "performance" in this article with "not contrast enough UI" or "bad autocorrect" or "annoying background music"? Should this article have been "Good autocorrect matters"? The problem here isn't performance. The problem here is that the company which is building this software are so remote from end-user that they don't hear feedback. If they knew that performance is the problem and mul…

"Bad autocorrect" is a problem (notable examples include MacOS helpfully autoincorrecting names of prescription medicines in some clinics). "Not contrast enough" and "annoying background music" can be worked around. Bad performance can't.

Re: Performance Matters (2019)

#63

This matters more than one would think. I've once worked on a system that was objectively slow. Some actions would take seconds to complete. It's not like people would refuse the use the system, it was the only way to do their jobs. The public had no choice, either. Initially, I didn't think it was such a big deal. Yes it was a bit slow, but nothing _terrible_ and why did it matter, since there were so many other pro…

I had a similar experience using my own web app over a satellite link (750ms+ latency) many years ago. What took minutes at the office literally took hours over the air, which I found really surprising. I knew it would take longer but it was much more than 10x longer.

This was when I first realised that UI delays have a non linear effect on productivity. The productivity loss from 10x latency increase is more than 10x. I don’t know how to explain it other than by example, but if you have multiple 1000ms delays you’re more likely to be distracted - to check your email or get a cup of tea or answer a slack message - than if you’re just ploughing through the work. That was my experience anyway.

A few years later I saw the problem in a different context (ETL), so I drew up an informal scale from small to long delays using this kind of human centred thought process, and I realised that, for example, a 1 hour delay to process ETL data is effectively identical to a 6-12 hour delay, because the user will set the process off and go do something else productive for the rest of the work day, which had a huge impact on project delivery (of course).

Once I had seen this in action, I couldn’t unsee it, and I spent the next few years getting rid of a pile of bottlenecks to make the UI performance and feedback loops as fast as possible, for example by refactoring complex operations. My proudest moment was reducing a very complex, 8 hour process down to a 5 minute (perceived) process by doing most of the work in advance, so the data was almost entirely ready before the user needed it. Our users thought the system had broken because it finished so quickly!

I’m sure there are formal studies about this phenomenon, but it was so obvious once I’d experienced it, and our focus on UI latency made a huge difference to both the quantity and quality of the work we and our customers could get work done in a given time period.

Re: Performance Matters (2019)

#64
post #42

Earlier quoted context omitted.

Unfortunately Firefox is guilty of that Unpardonable Sin. Often I will open a new window to search for something and start typing my request right away, since the address/search bar should be focused on new windows. If the window takes a little bit of time to appear for some reason, the first few characters will be dropped. Frustrating. Chrome on the other hand does not exhibit this defect, even if I start typing bef…

Firefox has too many abstraction layers. The other day I've managed to break the multi-account containers, because I pressed Enter (to confirm opening a site in a different container) faster than the confirmation page finished loading, which yielded a) an empty tab with no site, and b) a confirmation page with no URL in it, that did nothing. Software should never break because flesh-and-bone human user is "too fast"…

I used to work on drivers and firmware for consumer electronics remote controls, and the empirical threshold we used at the time, was that an average human cannot press a button two times in a row much faster than with a 200 ms delay. (So, if the driver was getting same key presses spaced by less than that, it could safely assume those come from auto-repeat in the RC.)

Re: Performance Matters (2019)

#65

Earlier quoted context omitted.

Firefox has too many abstraction layers. The other day I've managed to break the multi-account containers, because I pressed Enter (to confirm opening a site in a different container) faster than the confirmation page finished loading, which yielded a) an empty tab with no site, and b) a confirmation page with no URL in it, that did nothing. Software should never break because flesh-and-bone human user is "too fast"…

I used to work on drivers and firmware for consumer electronics remote controls, and the empirical threshold we used at the time, was that an average human cannot press a button two times in a row much faster than with a 200 ms delay. (So, if the driver was getting same key presses spaced by less than that, it could safely assume those come from auto-repeat in the RC.)

200ms sounds surprisingly high. I can imagine it being hard to press a button two times in a row in My guess is, whoever came up with that threshold has never played any console game.

Re: Performance Matters (2019)

#66

What would happen if you replace "performance" in this article with "not contrast enough UI" or "bad autocorrect" or "annoying background music"? Should this article have been "Good autocorrect matters"? The problem here isn't performance. The problem here is that the company which is building this software are so remote from end-user that they don't hear feedback. If they knew that performance is the problem and mul…

It certainly is frustrating when there is no way to get your message to the devs. There's a game I play. Sometime in late July it started exhibiting a game breaking bug. AFAIK there is no way to contact the devs. I went through the "proper channels" and silence. I remember back when FogBugz was a thing and Joel claimed that the correct way to provide customer service was track bugs, have one owner, and only allow the…

> Want to report a bug on Windows? Photoshop? Almost any game ever? Good luck finding out if a dev ever saw your report and that it didn't just get dropped by some underpaid customer service center rep.

The current industry standard is directing such reports to official "support forums", where users try to help each other and nobody with any relevant expertise is present. After all, why would the crew of a modern and enlightened software project stoop so low as to talk with actual users, where extensive telemetry provides all the information they need?

s/, but only slightly.

Re: Performance Matters (2019)

#67

What would happen if you replace "performance" in this article with "not contrast enough UI" or "bad autocorrect" or "annoying background music"? Should this article have been "Good autocorrect matters"? The problem here isn't performance. The problem here is that the company which is building this software are so remote from end-user that they don't hear feedback. If they knew that performance is the problem and mul…

end users don't know how to give this feedback

in the case of EMS, it sounds like they could recognize it, but probably didn't report it back to the company. Why bother? They have used their product; they see it as "good enough".

But very often, end users get frustrated by things like input latency, and can't express what is making them frustrated in specific terms. So they tell their IT department that "it's slow", and IT goes back and starts hammering on the __ team (networking, server farm, whatever).

It's remarkably powerful if you can help you users develop vocabulary to recognize and report what they experience. (it's also flipping hard)

Re: Performance Matters (2019)

#68

This matters more than one would think. I've once worked on a system that was objectively slow. Some actions would take seconds to complete. It's not like people would refuse the use the system, it was the only way to do their jobs. The public had no choice, either. Initially, I didn't think it was such a big deal. Yes it was a bit slow, but nothing _terrible_ and why did it matter, since there were so many other pro…

I had a similar experience using my own web app over a satellite link (750ms+ latency) many years ago. What took minutes at the office literally took hours over the air, which I found really surprising. I knew it would take longer but it was much more than 10x longer. This was when I first realised that UI delays have a non linear effect on productivity. The productivity loss from 10x latency increase is more than 10…

Indeed, this non-linear effect of UI latency on productivity is real, and has been studied/known for decades.

I think the "The Economic Value of Rapid Response Time" from 1982 is rather illuminating:

https://jlelliotton.blogspot.com/p/the-economic-value-of-rap...

Re: Performance Matters (2019)

#69

This matters more than one would think. I've once worked on a system that was objectively slow. Some actions would take seconds to complete. It's not like people would refuse the use the system, it was the only way to do their jobs. The public had no choice, either. Initially, I didn't think it was such a big deal. Yes it was a bit slow, but nothing _terrible_ and why did it matter, since there were so many other pro…

The UI should be the last thing thats slow, relatively speaking. Database could be slow, network could have some issues, the backend code could be inefficient and so on. But if the UI is objectively slow, discounting above things, then that should be addressed asap. Because if that continues to be the issue, it doesn't matter how much quick the backend/database is - user just won't see the performance behind the scenes.
Post reply on HN