Live data from Hacker News

Should error messages apologize? (2013)

ux.stackexchange.com

111–120 of 262 posts

Re: Should error messages apologize? (2013)

#111
post #66

I don't even like "We" in UI messages. "We couldn't find that site." "We're just updating your computer." Perhaps I'm just an old fogey, but passive voice feels like the only right choice: "The site could not be found." "Your computer is being updated." The insertion of "We" feels like an imposition; the company who wrote the code reaching in and enacting their will with your equipment, using your screen as their soa…

My preference is to get the raw details I need. I'd rather see a stack trace than, "We are sorry but there seems to have been some type of error."

However, I can also see a case for the other point of view. In working on large enterprise systems that are being used by users who are not technical, the "we" helps reinforce the idea that things aren't outside of the users locus of control. There is an whole group of people employed by the organization behind the scenes that are part of the way the overall system works. So the "we" emphasizes that the system, the error, the people who write the system, the person trying to use the system, are all part of whatever they are trying to do together.

Re: Should error messages apologize? (2013)

#112
post #66

I don't even like "We" in UI messages. "We couldn't find that site." "We're just updating your computer." Perhaps I'm just an old fogey, but passive voice feels like the only right choice: "The site could not be found." "Your computer is being updated." The insertion of "We" feels like an imposition; the company who wrote the code reaching in and enacting their will with your equipment, using your screen as their soa…

“We” is a Microsoft-ism they started with Windows 10. Yes, it is horrible, because it puts the user into a minority position against an anonymous “we” that apparently controls the system. It has a belittling and patronizing tone that emphasizes the user being powerless and non-autonomous, who instead has to be taken care of by, and is at the mercy of, the anonymous “we”.

Re: Should error messages apologize? (2013)

#113

I actually find these to be irritating if not kind of offensive. (Like the "we are experiencing larger than normal call volume" that literally always plays.) Who exactly is sorry here? The computer? It doesn't (yet?) have feelings. The engineers? They're not telepathic, they have no idea anything just happened to you, let alone feel sorry for it. It seems to be at best a random guess as to how some group of people is…

It’s pretty safe to assume that people find being on hold a neutral to negative experience. Not a whole lot of guesswork there.

I'm talking about the authors' feelings (who are purportedly feeling sorry), not the users'.

Do I feel sorry that my user didn't have access to some file? Not really? Maybe it was the right thing? If they were malicious I would feel glad. If not, I have no idea what to feel, it depends on the context.

Re: Should error messages apologize? (2013)

#114
post #66

I don't even like "We" in UI messages. "We couldn't find that site." "We're just updating your computer." Perhaps I'm just an old fogey, but passive voice feels like the only right choice: "The site could not be found." "Your computer is being updated." The insertion of "We" feels like an imposition; the company who wrote the code reaching in and enacting their will with your equipment, using your screen as their soa…

"File could not be found; apologies have hereby been made"

Re: Should error messages apologize? (2013)

#115
Completely tangent here but back in 2005 one of the early programs me and my cofounder wrote included a try catch which spitted out something like variable not found. We were just out of college and didn’t really pay much heed to the possibility of our code ever getting into the catch. And one of us had the variable christened as “baby”. Code went into production and one of user got the error message “baby not found”. Well thankfully our end user who found the error message found it funny and cheered him up.

So we go either helpful or quirky on error messages most often and apologetic if the situation demands it.

Re: Should error messages apologize? (2013)

#116
post #107
post #66

I don't even like "We" in UI messages. "We couldn't find that site." "We're just updating your computer." Perhaps I'm just an old fogey, but passive voice feels like the only right choice: "The site could not be found." "Your computer is being updated." The insertion of "We" feels like an imposition; the company who wrote the code reaching in and enacting their will with your equipment, using your screen as their soa…

It gets even worse when error messages try to be cute or clever. It's childish and slightly patronizing. "Whoops, sorry! This wasn't what you were looking for!" "Oops! You broke the internet. We are trying to fix it." "Are you lost? Let us help you home (link to home page)" https://www.callbruno.com/en/404 Just treat me like an adult and tell me what's wrong. Preferably with a googleable error code.

This went viral a couple years ago: https://twitter.com/cherrikissu/status/972524442600558594

Related discussion: https://news.ycombinator.com/item?id=34812857

Re: Should error messages apologize? (2013)

#118

I suspect there are cultural preferences here, there's no reason to believe there's one correct answer for all of humanity. I'm from the US but I've traveled to places where it's considered rude to say "no" directly and apologies aren't common. Like when trying to order an unavailable item from a menu: - I'd like the beef burger - The chicken burger is very good - That's OK, can I have the beef burger? - Our hot dogs…

Out of interest what places are those?

One time in Japan I met with the local bike repairman. He was an ojiisan and I had a friend to translate.

Instead of him saying something like "fixing your bent spokes on a $120 bike isn't worth my time or your money" he just said "there is no problem" over and over again

Re: Should error messages apologize? (2013)

#119
Anecdotally, I’ve never seen an apology in the error messages telling you that your new password doesn’t include the right number or kinds of characters.

Edit: And actually I think this is a case that illustrates why error messages shouldn’t apologize. It would only make them less concise and beside the point.

Re: Should error messages apologize? (2013)

#120
post #79

No, error messages should tell the user what they need to do to accomplish their goal as concisely as possible.

Actionable error messages are a lot more work and are not always feasible. A library discovering a mismatch between a configuration setting and a value it received by API isn't in a position to make a decision on which is wrong: is it misconfigured, or is the value it received via API under the control of the user? The caller of the API isn't necessarily in a better place to make a decision. The higher up the stack y…

It's true that providing good actionable errors with useful context is hard and sometimes requires global knowledge. It still should be attempted. I see that if a project doesn't aim for that objective, then errors are the first thing to degrade and stay bad indefinitely. If even a modicum of effort is put to improve them, the project attracts users and contributors that appreciate them and try to improve them or at least hold the bar where it is.

So, yes, it's an uphil battle, but one that needs to be fought. I keep looking around at well established projects that don't even try, and as a user they are incredibly frustrating, because improving the status quo wouldn't require introducing global analysis, it might be as simple as adding an extra sentence with some internal state, a description with a few keywords to Google for, or a link to the docs.

I'm well aware of the effort needed to have great error messages. I'd be happy if the average error message was passable, instead of terrible.

Part of the problem (in open source) is that developers write tools for themselves first, so they are intimately knowledgeable about the internal state of the application, so they provide enough context for themselves. So little more is given unless enough people complain and the original developer agrees to change. In that ecosystem we constantly interact with tools written like that, so that's "the bar" we're used to. All our tools end up taking the approach of "The user did something stupid, I don't know", so that's what we do in our tools. And I completely reject that framing. I take the approach of "The user did something that didn't met the applications, sometimes implicit, preconditions." and take if from there. Maybe what they did was wrong due to a misunderstanding caused by bad docs, maybe the user did something wrong because we're missing a feature implied by the rest of the features, maybe the user hasn't done a necessary configuration step. All of those things can be checked for!

I can't think of any tool that isn't necessarily an error reporting tool. But few projects takes that into consideration and approaches it as "this is an error reporting tool first, and the actual thing it does is secondary". If the user cannot accomplish their task, it doesn't matter if it is the fastest tool in the West.

"Syntax error on line 1" is very different to "missing WHERE condition after AND on line 1 column 45".

A lot of the examples you have have alternative courses of action. Great, enumerate them in order of likelihood. Don't even claim to be right, just throw your users a bone. If you're right with any of them, you just saved them time and anguish. If you're wrong in all cases you mention, then you have a bug in your output. You can even get away with "these two things might be happening, but there might be other problems, can't help you more if so". "IO error", "couldn't to disk", "couldn't write to file", "couldn't write to file '/tmp/foo-bar'", "couldn't write to document metadata file '/tmp/foo-bar' because the file already exists and their permissions dont permit this user to write to it; you can change the path with '--metadata-path=/path/to/file" are all the same error, but I'd much rather get the last one, over the first one.

Post reply on HN