Hacker News new | ask | show | jobs
by khendron 747 days ago
You don't. Explaining what happened is not going to help the user at all. You can only explain what options are available to the user. Something like the following

"Sorry, this message can no longer be saved. Copy this message before discarding it if you will need access to it later."

2 comments

Sorry but hard disagree on this one. This increasingly popular assumption that users are clueless cavemen is very condescending. Help the user self diagnose instead.

WHY can’t it be saved?

Is the internet not connected? Check your WiFi.

Is the server full? Talk to admin.

Is the message deleted by another user? Talk to your team about ways of working?

Is it an internal application error? Tough luck, maybe the error code can be googled at least.

This does not mean you need to dump a stack trace in the users face, the examples above can still be presented briefly. If that’s too much effort to implement, consider an expandable details section.

The amount of applications lately where I had to open the verbose developer logs only to find silly user fixable errors is astonishing. Last one was simply credentials that had expired.

To anyone who thinks you are giving the users a magical experience, free from technicalities, by hiding root causes behind a facade of abstract, please think again. You are just frustrating the users even more, by making errors unpredictable.

> This increasingly popular assumption that users are clueless cavemen is very condescending.

Sorry, but no. And this idea that everyone else is condescending is offensive nonsense.

I understand where you're coming from, but the people who understand how actual users behave and what actual users want, in the real world, are not condescending - they're empathic. They recognize that the majority of people in the world are not like us, in terms of technical abilities, yes, but more importantly, in terms of desires.

The average user doesn't care. They don't have time to do things like "talk to admin", nor do they even know what "check your wifi" means. "Talk to your team about ways of working"? I'm sure most employees would just love to go and have awkward conversations with others, that's exactly what they want to do this minute.

This is even on the off-chance that the user has even read the message, which is incredibly unlikely. I can't count the number of times I've had developers tell me they had an error message and don't know what to do, and my solution was "let's read it, it says this is the error" and that being revelatory for them.

> This is even on the off-chance that the user has even read the message, which is incredibly unlikely. I can't count the number of times I've had developers tell me they had an error message and don't know what to do, and my solution was "let's read it, it says this is the error" and that being revelatory for them.

I agree that the problem with technical and non-technical users alike is one of motivation. Like you say, someone who is not technically minded won't care that the server is out of pace or their wifi is disconnected and developers who just want to get their code to compile don't care about learning how some new framework works.

But in all these cases, the users do care about doing whatever they were trying to do when they got the error. And the best way to help them is to give them all the relevant information they or someone else needs to fix it. Giving some generic error like "sorry your file could not be saved" neither helps those who are motivated to fix it, nor those who aren't motivated.

"Copy it to where?"

Or, "Can't i just restore it out of the trash?"