别让我打开话匣子

含糊其词

David Platt

我的电子邮件服务在上个月关闭了一整天。当它最终恢复正常运行时,我收到来自其管理员的道歉,其内容为:“用户遇到电子邮件连接问题。”管理员 Bullhockey。我没有遇到“问题”,而是由于服务器停机收不到电子邮件。这浪费了我的时间,导致项目被延迟,并使我蒙受经济损失。我对贵公司感到很生气,它承诺过可靠性,但并未提供。更让我感到生气的是,贵公司试图使用最含糊的词语“问题”将失职推卸得一干二净。

别让我打开话匣子谈论“问题”这个词。我知道它有作为分发的意思,如“将食物和毯子发放给水灾灾民”;我也知道它有其作为后代的意思,如“我有两个女儿,她们是我一生中最重要的人”;我还知道它可用于指定特定月份的杂志,如“9 月刊的《MSDN 杂志》”,也就是您正在阅读的杂志。但我在这里要鄙视那些使用这个词语来表示“软件故障”的狡猾的人。这些人会说:“哎,我们知道由于我们搞砸了而使您无法收到电子邮件,并且我们了解当这种事情发生在自己身上时是多么的恼怒,对此我们深表歉意。我们将为您提供一个月的免费服务来表示我们的歉意。如果您确实觉得不满,我们还可能给您提供两个月的免费服务”。他们希望受到故障影响的用户籍此会少迁怒于他们。

道歉者在四段话中五次使用了“问题”这个词语,包括令人难忘的惯用语:“在解决配置问题并且所有服务器都联机后,我们发现某些用户仍遇到问题……”谁能帮帮忙救救此人。

含糊其词并非没有危害。他们试图隐藏需要解决的问题 - Johnny 有“酗酒问题”。不,他没有。Johnny 是一个酒鬼。正如每个戒酒的人将告诉你的一样,戒酒的第一步要使用的第一个词语是“承认”。Johnny 的情况将不会好转,除非他停止使用含糊的词语来隐藏真相,并站在公众面前说:“我叫 Johnny,我是一个酒鬼,但我不想再做酒鬼。”他的亲人希望在他毁灭自己或其他人之前能够做到这一点。使用词语“问题”只会延迟真相公布于众的那一天。

开发人员不要使用含糊之词进行交谈,我们也不希望听到这些词语。我们是工程师,解决问题是我们的本职工作。在解决问题之前,我们需要认识到问题的存在,并给它冠以正确的称呼。您总是可以识别出受到经理青睐以谋求高升的开发人员。他离开参加培训计划,回来时打着领带并患上记忆丧失症,并且开始将错误称之为问题。接下来,就像任何僵尸一样,他试图吞噬您的大脑,让您也成为一具僵尸:“Bob,星期五之前能把你的问题清单交给我吗?”

几年前在 Tech•Ed 上,我劝告过我的听众:“这不是一个问题,而是一个错误。请说这个词语。请大声地说:Bug(错误)。B 是 Bad(坏的)中的 B。U 是 Ugly(丑陋)中的 U。G 是 Gol-dangit(该死)中的 G, 我犯了一个错误。”我的这番话赢得了听众长时间起立鼓掌。

如果您要发放供应品,阅读一期杂志,或者甚至不认同我这篇文章中的观点,这些都可以。但请不要使用词语“问题”来表示“软件故障”。这会让您的用户觉得您不愿分担他们的忧虑,您实际上并未针对其忧虑给出解决措施,并且您认为他们愚蠢到会相信您的废话。对于给您支付薪水,为您的小孩提供衣食住行的人来说,这是一种公然的无礼行为。关于这一点,我有一个严肃的难题,而不是问题。

敦请读者:您是否有任何偏爱的含糊其词的示例?请通过 rollthunder.com 发送给我,我将会在以后的专栏中使用其中的最佳含糊其词。

David S. Platt 在哈佛大学拓展学院以及世界各地的公司讲授 .NET 编程。他著有 11 本编程书籍,包括“Why Software Sucks”(Addison-Wesley Professional,2006)和“Introducing Microsoft .NET”(Microsoft Press,2002)。Microsoft 在 2002 年授予他“软件传奇人物”称号。他想知道是不是应该绑住女儿的两根手指,以便她学习八进制算法。您可以通过 rollthunder.com 与他联系。