1 信息时代的谜语
【电脑是好的,但是它通常操作复杂令人沮丧,并没有真正的为人类便利服务,原因最直接来自程序员】
我们把电脑放进任何东西 得到的还是电脑 有很多让人模糊和不快的交互
我们让精神病人管理精神病院了
程序员有自己的主张 程序开发的快捷 vs 软件要好用 之间有条鸿沟
"程序员不是恶魔,他们努力工作以使他们的软件好用。不幸的是,他们的参照物是他们自己,所以他们做出的东西让其他的软件工程师觉得好用,而不是普通人"
解决之道是:在编程之前进行交互设计
2 认知摩擦
【这个电脑使用频繁的时代,人为的造成了强大了认知摩擦,然而却在电脑文化的认知下,那些辩护者和幸存者让这种现象成为一种正常】
人类智力遭遇复杂系统交互的阻力
程序员习惯程序设计,并套上一个界面 这和交互设计不能等同
交互设计首先要考虑什么才是对用户有价值的
程序员习惯盲目添加功能 用户并不需要的功能……
辩护者和幸存者:克服认知摩擦的喜不自胜的人,失败而沮丧自卑,但他们都一直看着熊跳舞,并没有离开寻找更漂亮的舞蹈
"电脑文化一词成为社会和经济隔离的委婉说法。电脑文化是强行割裂我们社会的关键语"
"作为一个行业,我们很大程序上否定了可用性交互产品的问题。太多的辩护者冲着跳舞的熊叫好"
[接下来对问题的范围和严重性达成共识]
3 浪费金钱
【软件开发为何如此烧钱,并且交付的产品还是不尽人意?】
PM太注重交付时间的管理,不想背负拖延工期的恶名
需求规格说明书其实就是一份产品功能列表,和列有蛋糕材料的食谱没有什么两样
我们对功能列表经常讨价还价,这个过程实际上被程序员操控着
功能描述其实很差,不如目标描述来得清楚
我们也不能因为赶时间,而编写环软件,因为它比不写软件还要糟糕:程序员很难舍弃他们付出辛苦劳动的程序。如同诗人沉溺于诗作
原型法看似能快速解决一些问题,但是原型是拿来抛弃的,而不是拿来重用的。如同快速叠起砖块,牺牲了安全和质量。
so 原型的价值不在于代码本身,而是从中获得教益。
我们应该根据质量和用户的满意度来定义项目,而不仅仅是盯着日程表,这样才能做人们期望的软件。
"我们只检测我们期待的东西,如果我们反复指点日历,那么项目会按时完成,但是你忽视了用户的满意度,忽略了软件的基本质量,那么最终按时交付的产品也是不成功的。"
4 跳舞的熊
【具体的例子,看看电脑软件是如何在交互的易用性上失败的】
消费电子类产品的复杂交互比比皆是
电子邮件没有关联功能(目前gmail做到了,并且在wave中发扬广大)
日程软件也失败:没有将time project resource 关联起来,并反馈项目的进展
日历软件如何失败:只关注开始时间,而没有关注截止时间和过程。
www的页面交互历史遗留下来的问题导致交互仍然很差
软件往往体现出以下缺点:
健忘、懒惰(按程序员的喜好提供东西)、吝于提供信息、不灵活(看不到人们处理事务的灵活性)、责备用户、不负责任(撤销功能)
5 客户叛离
【客户的忠诚度是企业的无价之宝,好好设计你的软件,给用户他们期望的东西】
设计就是减少认知摩擦,设计就是满足人们的期望
三品质概念模型:可能性(程序员)、可行性(商务)、期望性(设计)
苹果、微软等很多企业都在证明公司在三品质不同的追求从而导致不同的结果。
6 精神病人管理精神病院
【程序员从后座驾驶着软件行业】
不要浪费用户的时间,同时也不能浪费程序员的时间,让他们花那么长的时间,开发没人用的东西。
软件两方面:内在和外表,前者需要程序员考虑电脑的需求,后者需要设计师,考虑人的需求
"设计必须先于编程,否则如同混凝土工对木工说:等我倒完了混凝土你们就可以设计外观形状了"
程序员做不了设计,因为他们的思维已经和常人不同。
设计和编程是一条直线的两个方向,不可能同时做好两者。
不能用工程的方法解决设计问题"让工程师解决这个问题,就像请狐狸帮忙解决鸡窝的安全问题一样。"
7逻辑人
【我们来看看程序员是如何异于常人的】
登机通道测试:区分两类人
程序员心理学:
牺牲简单获取控制权:希望或者更多的控制权,不管复杂
牺牲成功来获取对事物的理解:希望深入内部细节去了解东西
只关心可能性而不考虑概率:对边缘事件的担忧,关心所有可能性(其实人类关心的东西的数目有时候真的不大)
像体育生:态度野蛮而简单:要么和我一样,要么一无是处
8 过时的文化
【编程文化如何影响软件的创建】
价值观不同,导致人们思维选择的不同
代码重用导致程序中有很多无关的代码,并影响了设计
程序员文化:对技术的无限执着和热爱,而缺乏控制。
由于长期以来软件的创建过程是无比相同的,而产品的成败缺很难评估,于是人们简单的认为结果是随机的,因而更放弃了设计的改良。
文化的隔离,和用户的距离导致技术人员永远不清楚真正的用户是怎么想的
如何和程序员有效的沟通,不仅仅是要求和请求,要从厉害关系来陈述。
"对芯片友好,对用户残忍"
是过程让产品失去人性,而不是技术
"在编程之前完成的设计交互,将设计责任交给经过训练的交互设计师"
9 为快乐而设计