Hacker News new | ask | show | jobs
by marcosdumay 1938 days ago
Progres bars have several goals, but making yours users happy secure that they know how long they'll spend and not feeling like they waited too long is certainly one of them.

Why do you classify that as a dark pattern? It's not harming people in any way, but the opposite.

2 comments

Why do you classify that as a dark pattern? It's not harming people in any way, but the opposite.

It's lying. Lying is inherently harmful. Just because a computer is doing it doesn't make it unethical. Especially since people trust computers to be precise and correct.

It's only lying if your users are completely rational aliens that have linear perception of the passage of time.

By the way, people do really not expect progress bars to be correct. They may with they were, but not expect.

Back in 90s the progress bar was so bad it was more entertainment.

5 minutes left, 4 minutes, 23 days, 1 minute, 4000 years left.

The last 1% Taking longer the first 99%

If you installed the same software repeatedly get an idea of how long each section of the bar would take.

Windows 3.1 I’m looking at you.

Yeah, this used to be a real pain point.

Page 311 of the .NET Framework Design Guidelines has this quote from Chris Sells (then a program manager for .NET, I think):

> Please make progress reporting move forward, if for no other reason than my family makes fun of me when they see a progress report going backwards, as if it's my fault. Personally, I've implemented several progress percentage algorithms and while I often can't get the timing to be smooth through all stages of an operation, at least they always move forward. In fact, I think you'd have to work extra hard to make them move backwards.

Oh I had forgotten about the going backwards ones! It was like the machine was personally taunting you.
I've seen that on the Windows 10 file copy dialog just yesterday... but yeah, they existed back in the 90's too.
> It's not harming people in any way, but the opposite.

Please explain how lying to your users is good for them.