交互的意义
从电饭煲预约煮粥这件小事出发,讨论好交互为什么不是功能更多,而是把用户需要理解的变量变少,让人用目标语言操作机器。
有些道理,读书时看见一百遍,也不如生活里摔一跤。
交互就是这样。
好的交互常常没有存在感。它不喊口号,不摆姿态,也不让人觉得产品经理很努力。用户只会觉得事情本该如此,手指点下去,东西就发生了。只有遇到糟糕的交互,人才突然意识到:原来一个按钮、一行文案、一种顺序,也能把人逼到墙角。
我对这件事印象最深的一次,是电饭煲预约煮粥。
一口粥里的变量
有天晚上,我妈打电话问我,电饭煲怎么预约煮粥。
为什么问我?因为我之前预约过,早上起来直接喝粥,看起来很熟练。
可我一下子愣住了。
我确实会预约,但我是在手机上操作的。打开米家,选煮粥,选预约,页面直接问我:想几点开饭?填一个时间,确认,就结束了。
这不是我会用电饭煲,这是米家把问题翻译成了人话。
我妈面对的不是这个界面。她面对的是一个传统电饭煲:按钮很多,模式很多,屏幕很小,说明书不知道塞到哪里去了。她不知道粥要煮多久,不知道预约时间是开始煮的时间,还是煮好的时间,也不知道设好时间后还要不要再按一次开始。
于是一个很简单的目标,“明天早上喝粥”,被拆成了一堆机器变量:
- 选择什么模式?
- 煮粥需要多长时间?
- 预约的是开始时间还是结束时间?
- 现在离明早还有几个小时?
- 设置完成后机器是否已经进入工作状态?
- 如果设置错了,如何取消重来?
这些变量对机器来说很自然,对人来说很荒唐。
人想要的是粥,不是和电饭煲讨论调度算法。
好交互不是功能更多
很多产品谈“智能”,最后变成加联网、加 App、加按钮、加模式。东西确实多了,但人并不一定轻松。
真正好的交互,不是把功能摆满,而是把用户需要理解的变量变少。
传统电饭煲把“预约”交给用户自己计算。用户要知道现在几点、目标几点、煮多久、提前多久启动。米家那种方式则把问题倒过来:用户只说目标时间,机器自己算。
这就是交互的价值。
它不是把复杂性消灭了。复杂性还在,煮粥还是要时间,机器还是要执行步骤,传感器和程序还是要工作。只是复杂性被收回到了系统里,没有摊到用户脸上。
好产品经常做的就是这件事:把机器语言翻译成人话。
导航不问你“向东北方向行驶 1.7 公里后进入匝道编号 X”,它说前方右转;打车软件不让你研究司机调度,它问你从哪里到哪里;日历不要求你背时区规则,它只问几点开会。
坏交互则相反。它把系统实现方式原封不动地交给用户,然后指望用户有耐心、有知识、有说明书、有空慢慢试。用户错了,它还会露出一种无辜的表情:功能都给你了,是你不会用。
这很像某些早期后台系统。数据库里怎么存,页面就怎么展示;业务流程里有哪些状态,筛选项就堆多少个;接口需要什么字段,表单就让人填什么字段。开发者觉得忠实,用户觉得受刑。
互联网品牌的“降维打击”
互联网公司喜欢说“降维打击”。这个词被用烂了,但在一些硬件产品上,确实能看到类似现象。
大量互联网品牌没有自己的工厂,只是出设计方案,找传统厂商生产,甚至直接套公模,贴自己的牌子。按制造能力看,它们未必更强。
但我还是经常买这些所谓贴牌产品。
一方面是外观设计通常在线,能和家里装修搭一点边。另一方面是软件体验常常更顺。联网本身不稀奇,加一个 Wi-Fi 模块不是什么天书;真正拉开差距的,是联网之后,用户到底是在控制设备,还是在继续伺候设备。
家里以前主要有小米和美的两套智能家居。小米手机曾经辜负过我的信任,这笔账另算。但小米智能家居的交互,至少在我用过的那些设备里,确实经常比传统厂商顺。
它不是每个功能都更强,而是更少让人背参数。
对普通人来说,这比多几个模式重要得多。
少让用户证明自己聪明
很多糟糕交互有一个共同特点:它默认用户应该理解系统。
用户应该知道预约是什么意思,应该知道粥多久煮好,应该知道按钮长按和短按的区别,应该知道图标代表什么,应该知道设置完还要确认。
可用户为什么应该知道?
人买电饭煲,是为了吃饭;买洗衣机,是为了衣服干净;买空调,是为了屋子舒服。用户不是来参加设备能力考试的。
好的交互不是讨好用户,而是尊重现实:人的注意力有限,记忆有限,耐心有限,愿意花在设备上的理解成本更有限。
所以很多设计问题,最后都可以落到一个朴素标准上:
用户为了完成目标,需要理解多少不该由他理解的东西?
需要理解得越多,交互越差。
一个人如果只是想明早喝粥,却必须搞懂“预约是倒计时还是定时启动”,那就是系统把自己的麻烦推给了人。
回到那口粥
那天晚上,最后的结果很普通:我也没能在电话里把传统电饭煲的预约讲明白。
不是我不会讲,而是这事不该这么讲。
电话那头的人想听的是:“按这里,明早七点就能吃。”可机器给出的却是另一套话:“选择功能,设置小时,设置分钟,确认状态,注意指示灯。”
两种语言之间隔着一条河。
交互设计的意义,就是架桥。
它不一定宏大,也不一定光鲜。很多时候只是把“开始煮”改成“几点吃”,把“模式参数”改成“我要做什么”,把一堆按钮变成一条清楚的路径。
这事看起来小。可一个社会里的机器越来越多,App 越来越多,系统越来越多,小小的理解成本乘以无数次使用,就会变成很重的负担。
好交互不是让人觉得机器聪明。
好交互是让人不必证明自己聪明。