9月1日至9月30日参加就可以赢得一本免费的这本书。看看作者大卫·普拉特的博客在微软的子网。
“这个永远卖不出去,”我在书店里嘲笑这本书的书名。“谁会公开买一本向全世界宣告自己是个笨蛋的书呢?”这就像购买标有“特小”的避孕套。’”
我们都知道那是怎么回事,不是吗?DOS的假人和它的同伴,Windows的假人,成为有史以来最畅销的电脑书籍。这个概念已经扩展到远远超出计算的领域假人用酒,假人用盐水水族馆,和假人乳癌。根据《为傻瓜出版你的书》(get Your Book Published for Dummies)提供的数据,这个系列的销量已经超过1亿册。我买这本书是为了帮你找到你现在读的那本书的出版商。1
电脑会让用户感觉愚蠢的。有文化,受过教育的人不能作出这样的真气米色盒子做他们想要做什么,而不是微软行军用火把和干草叉和肖像挂比尔·盖茨,他们责备自己,说:“哎呀,我一定是愚蠢的“。在一个社会里没有什么事情做的人,那里的人起诉一家餐厅时,他们洒自己的咖啡,让用户责怪自己任何的故障是一个宏伟的成就,尽管可能不是主要的一个软件供应商的预期。程序员为什么要设计出让人有这种感觉,为什么人们温顺地接受他们的计算机上这种滥用的应用程序?
当我们来自
最早的计算机程序的设计者并不关心他们的产品是否易于使用。解决手边的计算问题——例如,使用打印机使文字在纸上正确打印出来——是如此困难,以至于没有人会有时间或金钱来让用户的生活更轻松。计算机的思考时间非常昂贵,比用户的思考时间要贵得多。迫使人类用户记住复杂的命令,而不是使用计算机能力提供列出这些命令的菜单,这在经济上是有意义的。相对成本现在已经逆转,但在这个行业中,几乎所有年龄在30岁以上的人都是在那种环境中长大的。无论我们多么努力地想把它抛在脑后,它都只能影响我们今天的思维。想想那些在20世纪30年代大萧条时期长大的长辈们吧,即使到了今天,他们也不忍心扔掉一只只有一个洞的袜子。
就像早年在二十世纪的开着车,早期用户期望的电脑是在一个痛苦的对接,我们很少感到失望。几乎所有的用户都是程序员自己。他们中很少有人认为有必要,甚至常常渴望,使事情变得更加简单。我们接受的困难,在配给计算机时,神秘的命令,可怕的文档,作为公认的手摇发动机和恒轮胎穿孔的电动先锋。这是最好的人了。我们很高兴能得到我们的重要计算任务(制表普查,破解敌人代码)都做了,因为他们很高兴停止每天铲马粪走出谷仓。我们喜欢我们的节目摆弄,在方式他们的设计师从未打算使用它们,因为早期的驾驶者喜欢与他们的引擎修修补补。如果有人告诉亨利·福特,他的T型车需要一个杯架,他会在人的脸上都笑了起来。
有在那些日子里使程序易于使用是完全错误的感觉。如果程序是很难写,它应该很难使用,只有那些通过智力斗争证明自己有价值的人才能从程序员的努力中获益。以惊人的喜爱我记得,即使在今天,我感到的骄傲发现命令打印一个文档在我用过的第一个主要计算机系统(1975年,在大学一年级)没有打印或P,而是,信中问,因为你将文档打印队列。我学会了一个神奇的单词。我成为了选民中的一员。我很聪明!
但随着硬件变得越来越便宜,电脑从由高级神职人员管理的装有空调的玻璃房间,转移到极客爱好者的工作台上,然后又转移到个人员工的桌面和普通人的家中,它们必须变得更容易使用。因此,应用程序的开发者必须开始投入时间和金钱来设计一个用户能够真正使用的程序。为什么没起作用?
为什么它仍然吮吸今天
处理人类用户的计算机程序的一部分——从用户那里获取命令和输入数据,向用户显示消息和输出数据——被称为用户界面。与计算的许多领域,用户界面设计是一个高度专业化的技能,其中大部分程序员一无所知。他们成了程序员,因为他们在与微处理器,在机器的心脏硅芯片通信是很好的。但是用户界面,根据定义,存在具有一个完全不同的片的硬件和软件进行通信:活的人。它不应该惊讶任何人与逻辑,没有错误的,愚蠢的芯片交谈的技巧是从与非理性,容易出错的,有理智的人说话的技巧完全不同。但是,谁在前者是很好的家伙被自动认为善于后者。他通常不,他几乎从来没有意识到,他不是。这是什么原因导致程序员的用户界面设计,吸,从穷人蠢货的角度来看这是使用一块垃圾停留至少。
这是怎么发生的呢?程序员必须有一定的智能才能编程。他们中的大多数都很擅长处理硅芯片;否则,他们很快就会被解雇,并被鼓励从事另一种可能对社会有益的职业,比如屋顶修葺。在设计用户界面时,他们怎么会变成脑白质切除的白痴呢?有一个简单的原因,和世界上所有通信失败的原因一样:他们不了解自己的用户。
每个程序员都认为自己知道用户想要什么。毕竟,他整天、每天都在使用电脑,所以他应该知道。他对自己说,“如果我设计了一个我喜欢的用户界面,用户会喜欢的。”错了!除非他编写的程序是为那些精疲力尽的计算机极客使用的,否则他的用户不是他自己。我告诉我的编程学生们,把普拉特的第一个、最后一个、也是唯一的用户界面设计法则,以及“无用的输入,无用的输出”和“总是切牌”刻在心里:
认识使用你的人,因为他不是你
举个最简单的例子,考虑一个个人理财程序,比如Quicken或Microsoft Money。每隔几周就会使用几个小时。用户不能——也不能——记住前一次会话中程序的操作,就像她记住每天使用的应用程序一样。因此,她将需要更多的提示和指导,而整日使用这些提示和指导的用户(比如程序员)会觉得这些提示和指导很烦人。程序员不可能设身处地为这样的用户着想。这个程序员对程序了解得太多了,他无法想象还有谁不了解这个程序。
因为他们错误地认为他们的用户都喜欢他们在劳动中,程序员做两个主要的错误,当他们设计的用户界面。他们看重的控制超过易用性,集中精力使复杂的事情有可能不是做简单的事情变得简单。他们希望用户学习和了解他们计划的内部工作,而不是周围的其他方法。我已经做了他们两个,我现在后悔的我年轻愚蠢的方式错误。
控制与易用性
每当我在一家公司授课,我问他有多少学生驾驶汽车行驶手动,棒换挡变速器(像我一样)。通常大约一半的学生都举起了手。然后我问多少将如果他们的妻子允许的话,或者他们开着他们需要开的小货车来,因为他们正在变成像我这样的老混蛋。通常剩下的学生中有一半会举手。2“现在,你不同意,”我问,“那手排挡需要更多的工作来学习,比自动使用,但如果你这样做的权利给了稍好的控制和性能?”他们知道他们正在带领他们不想去的地方,但在这一点上,他们通常不能扭动了,所以他们同意可疑。“现在,有多大比例的汽车,你认为在美国棒位移出售?”他们不舒服的蠕动和这样说,“我敢打赌,这是低的; 30%的”他们的愿望。销售估计各不相同,从约10%至14%。让我们把它叫做12.5%,或八个一分出来,以便于比较。
这意味着,8个极客中有6个非常重视在控制和性能方面的轻微提高,以至于当他们花25,000美元或更多在汽车城钢铁上时,他们愿意在产品的生命周期中继续做更多的工作来获得它。但是只有八分之一的人在面对同样的选择时做出了同样的决定。实际上比这个数字要低得多,因为这六个极客都是八分之一。普通人愿意忍受额外努力的比例几乎为零。程序员的价值控制。用户看重易用性。你的用户不是你。
这里有一个错误的例子。AT&T的目录协助曾经是简单和容易的。你要某人的电话号码,自动语音会说:“你要的号码是555-1212。”请把它记下来。”如果你一直在线,它就会重复数字,这样你就可以确定你写对了。简单。一件容易的事。不可能搞砸。好。然后AT&T增加了为你自动拨号的功能。 They'd say, "The number you requested, 555-1212, can be automatically dialed for an extra charge of 50 cents. Press 1 to accept and 2 to decline." The simple thing was as easy as ever, and the newer, more powerful feature was available to those who wanted it enough to pay for it. Anyone who didn't like the new feature could simply hang up. Then some idoit [原文如此,请注意3.有一个非常糟糕的想法。上次我打AT&T的电话号码查询服务时,它说:“你所要求的号码可以自动拨打,但需额外支付50美分。”按1接受,按2拒绝。”直到我输入我选择的号码,它才会给我号码。我不得不采取电话离开我的耳朵,视觉上重拾那些键盘(45岁左右)后变得困难,放下铅笔我另一只手拿着写下号码,按正确的按钮,再次拿起铅笔,把电话回我的耳朵。直到那时它才告诉我电话号码是555-1212。复杂、强大的操作是可能的,但简单的操作不再简单。这个系统的设计者显然重视控制而不是易用性,但我保证他的用户不会。不管是谁给世界造成了这样的伤害,都应该强迫他每天做500次。他会在一周后自杀。
另一方面,我的手机运营商Verizon则把使用便捷性提高到了一个新的高度。威瑞森公司意识到,几乎每个人都会打电话给目录助理,因为她想立即给别人打电话,所以为什么不这么做呢?当我用手机拨打电话查号台时,自动语音提示:“号码是555-1212。”我现在就给你接通。”它是自动发生的,我没有任何动作,甚至没有任何想法。这个新号码保留在我的电话最近拨打的列表中,这样如果我想的话,我就可以把它添加到我的联系人薄中。少数只想记下电话号码的人可以简单地挂断电话,不管怎样他们都会这么做的。简单的事总是简单的。复杂而强大的东西也很简单。这个设计很好,就像AT&T的坏一样。4
我不关心如何使你的程序运行
第二个错误程序员做时,他们设计的用户界面是强迫用户了解程序的内部工作。相反,程序员调整自己的用户界面,用户的思维过程,她强迫用户去适应她。此外,她通常会看到什么不妥的做法。“那怎么我的程序工作,”她会说,不解,怎么会有人甚至问,为什么她的用户界面的工作方式是这样。
这里有一个例子来说明我的意思。打开Windows记事本或任何其他类型的编辑器程序,并键入任意文本。现在选择File,从主菜单退出,或者单击标题栏右上角的X框。中显示的消息框图1 - 1。
记事本询问用户是否保存更改
这个盒子到底在问我们什么?好像是说有些文件变了,但我还没看到任何文件。"保存更改"到底是什么意思?