所以,我想知道您能推荐哪些好的做法,以帮助用户实际阅读您的错误消息,而不是简单地将其搁置。我能想到的想法可能是:
- 当然,格式化有所帮助;也许是一个简单、简短的消息,带有一个“了解更多”的按钮,该按钮会导向更长、更详细的错误消息
- 所有错误消息都链接到用户指南的某个部分(有点难实现)
- 不要发布错误消息,只需拒绝执行任务(这是一种有点“苹果”式处理用户输入的方式)
通常我会把错误信息显示为红色(在设计允许的情况下)。
红色代表“警告”等,因此更容易引起注意。
我想补充一件事。
在关闭错误消息时,使用动词作为您的操作按钮,而不是感叹号,例如不要使用“好的!”、“关闭”等。
我们告诉用户他们的经理已经被联系了(这是一个谎言)。它起作用的效果有点太好了,所以必须将其删除。
好的,直接回答你的问题:不要让你的程序员编写错误信息。如果你遵循这个建议,你可以累计节省数千小时用户痛苦和生产力以及数百万美元的技术支持成本。
然而,真正的目标应该是设计您的应用程序,使用户无法犯错。不要让他们采取导致错误消息的行动并要求他们回退。作为一个简单的例子,在需要填写所有字段的 Web 表单中,不要在用户点击发送按钮时弹出错误消息,而是在所有字段都包含有效内容之前不启用发送按钮。这意味着在后台需要更多的工作,但它会带来更好的用户体验。
当然,那是一个有点理想化的世界。有时,程序错误是不可避免的。当它们发生时,您需要提供清晰、完整和有用的信息,最重要的是,不要让系统暴露给用户,也不要责怪用户的行为。
一个好的错误消息应该包含:
你绝不能简单地将系统错误消息传递给用户,这是最糟糕的事情之一。例如,当你的Java程序抛出异常时,不要简单地将程序员术语传递到UI并暴露给用户。捕获它,并由您的用户辅助开发人员创建清晰的消息,以便向用户呈现。
在我的上一份工作中,我很幸运能够与一组程序员合作,他们从不考虑编写自己的错误消息。每当他们发现自己处于需要错误消息的情况下,而程序无法避免它(通常是因为资源有限),他们总是来找我,解释他们需要什么,并让我创建一个清晰且符合公司风格的错误消息。如果每个程序员都有这种默认思维方式,计算机世界将会更加美好。
减少错误
如果一个应用程序经常向您抛出错误,您会对此变得免疫,错误会成为令人恼火的背景音乐。如果错误是罕见事件,它将引起更多关注。
排除任何不重要的问题,删除所有这些警告,找到理解用户意图的方法,尽可能减少决策。我有一些应用程序,我继续以这种方式简化它们。开发人员认为每个错误都很重要,但从用户的角度来看,这并不是真的。寻找用户对问题的常见反应,并捕获它,将其部署为您的响应。
如果您确实需要引发错误:简短、简洁、低恐怖因素,不要使用感叹号。段落是失败的。
没有万能药,但您需要进行社交工程,使错误变得重要。