Pulpcode

捕获,搅碎,拼接,吞咽

0%

产品设计不要过度的替用户思考

前段时间,公司内部的聊天工具,不知不觉的上线了一个新功能,就是你在word中粘贴一段文字到聊天工具,它会自动给你转成图片让你发送。我很难理解为什么会有这样的设计,之后我发现在公司内部论坛中有很多人都有这样的吐槽,有人回复说,“虽然会转成图片,但是在旁边有按钮能帮你再选择转成文字。”但即使是这样,还是有很多人不买账,明明简单的复制粘贴,非要多一个步骤。很多同学都吐槽说原来好好的工作习惯被打乱,如果我想发图片,我自己不会截屏么,为啥要你来替我做决策。这让我想到一个问题,我们在提到产品设计的时候。老说别让用户思考“dont make me think”,但另一个问题同样重要,不要过度的替用户思考。可能是有人有这样的文字转图片的诉求,但是大部分人还是希望我贴文字的时候贴文字,我截屏的时候就给我截屏,为什么这个产品设计,要替我做思考。而且还是我不想要的功能。

这让我想到了我人生中的第一台相机,索尼的黑卡3,这是一个性价比很高的卡片机,虽然不是单反,但是画质细腻,而且小巧,我出门玩经常带着它拍照。但这个相机有一个令人不爽的地方,它有一个可以弹出的取景器,但是你在关闭取景器的时候,它会自动关机。应该是设计师想到,一些人不用相机了就会关上取景器,再按开关关机多一个步骤很麻烦,所以采取了这种设计。这同样是一个蠢设计,你怎么就那么清楚的认为,我关取景器,就是想关相机。我看到网上有很多人也吐槽过这种设计,貌似在后续的产品设计中,取消了这个操作。

heika-3

你不要想当然的认为,我肯定会做这个操作,你这么设计是为了方便我。但如果就是有人想怎么做呢,那你应该提供可配置的入口让我选择,我用还是不用。需要的人打开,不需要的人关闭,我上面吐槽的几个设计。没有地方让我选择可以关闭的地方。

在编码的过程中,也有类似的诟病,比如说常被开发者吐槽的OOP里面的继承,虽然能带来代码的复用,但是不想要的父类属性和方法也被继承过来。再比如引包的时候,莫名其妙的东西被引入了进来,污染了空间作用域,一方面是引包人的责任,比如动不动import *,另一方面是打包人的责任,比如给别人打的接口包,乱七八糟的东西都打到里面,也许打包人猜测我会用到?正常交互性的功能,原则上都是你不要我不主动给你才对。

总结一下,产品设计的时候,有哪些令人讨厌的过度替用户思考的操作?

  1. 我本来想做A,结果做了B。仅仅是因为有部分人想做B。
  2. 我本来想做A,结果你顺便帮我做了B,C,D。

多说一句,另外还有两点,同样也要注意。

  1. 我确定我要做A,你还要我不停确认是不是要做。(没有“不再询问”的选项)
  2. 我不确定要不要做,结果我做了就真做了,不能撤回。(没有提示,没有回收站,没有撤回)