国外软件最让我让我厌恶的一个设计之一是,当你想查看一个帖子的发布时间、或是一个 Release 的 Publish 日期时,它只给显示了 1 year ago. 然而到底是 365 天前呢,还是 730 天(毕竟还得考虑闰年不是)前呢,那非得让你好好上下求索一番方能找到设计师到底把它藏在了何处。更有甚者,则是索性不给你提供查看原始日期的选项,如此一来其谜底究竟如何你便不得而知了——或者当然,你也可以选择再在原地等待365天来验证,前提是你愿意的话。
今日我便深受其害,在一个历史传下来的前端项目中,同时出现了 pacakge-lock.json
和 yarn.lock
,双份包管理器,或许开发者也能双倍快乐?正所谓:
天无二日,只能有阁下一个太阳。
我是只能容忍一个包管理器的存在的。于是我开始查看他们最后的 commit 日期,想以此删掉更旧的那个。我一直有在用一个 VSCode 的 Git 插件,它可以直接利用 GUI 显示许多 Git 的相关信息。可以看到,它所显示的两个文件的 commit SHA 明显不同,然而,当我想进一步确认其提交日期时,却发现两个显示的都是 1 year ago. 这下可好,到底是哪个在前,哪个在后呢?无奈,最后还是通过手动输入 git blame
查看它们的最后编辑日期来解决了此问题。但如此一来,我还要你这个插件干什么呢?一个本应提供给用户直观有效的信息,提高用户工作体验和效率的插件,结果却成了血压增高神器,可谓是成事不足,败事有余。
我极其讨厌这种设计师自以为是的人性化设计,据我观察,似乎国外的软件特别喜欢这种愚蠢的设计(这句话并不代表国内的软件对其不喜欢,因为它们只是纯粹的烂)。同样的例子还有诸如操作系统不显示当前时间的秒数,在我目前所使用的系统中:Windows 11、Gnome 43、Android 12 可谓是无一例外。在我看来,一个优秀,或者说是本应只算是正常的设计,应当是在任务栏或是状态栏的时候,只显示时分,而当被点开后,则渐进式地展示给用户更多的信息,比如将这里时间精确到秒。然而它们别说是点开悬浮窗后展示了,哪怕你调出对应的 App 来,作为一个 Clock 应用,它也不会提供给你哪怕“一秒”的信息。不过我也并不是只是针对国外,譬如国内的某些下载类软件,也存在类似的不允许用户“查看详情”,只给一个黑盒,让用户丈八和尚摸不着头脑的问题。比如说一个 2 GB 的文件,显示下载进度是则是只能精确到 1.1 GB。我寻思这也都 2022 年了,提供给用户的精度却只有 1/20,还不如命令行给人的感觉爽快。求求还是赶快学学隔壁的 IDM 吧。
论到“自以为是的人性化设计”,其中的佼佼者或者可以说是登峰造极的则必然是微软 Word 了。除此一款软件,我几乎从未使用任何比它要更反直觉的软件了。若不是学校的要求,别说是 Markdown 了,哪怕 HTML 乃至 TXT 都比它强。你打个“abc”它给你纠正成“Abc”,复制时自以为是地给你多选上回车,自以为是地给你增删缩进,字体颜色总是跟随一处不是你所想要的段落。插入个图片和文字相互遮挡,大图一页只能显示一个留下一大段空白,找个恰当的放置图片的位置要找半天…诸如此类不胜枚举。毕竟,一个死板的、你说什么它就做什么而绝不多做的应用,和一个总是替你多想一步的人工智障,我还是给偏好前者的。后者在某些情况下,或许会为你提供或多或少的方便,但是也会因为在某一刻突然做出的脑残操作而令你气到骂街。前者虽机械,但最重要的是,它也不会令你的血压忽高忽低,而且当你适应了它的操作后,你双手的机械记忆说不定也会使你的效率大幅提高呢(或许类似拼音输入和语音输入之于普通话不好的用户?我基本不用语音输入,不知晓其现在的智能程度,所以不太确定此例子是否恰当)。
除去这些“自以为是的人性化设计”类型的设计问题,还有一些其他我甚至都无法理解当时开发者的脑回路的设计。譬如 Gnome 的默认视频播放器,当你前进或是后退时,按键盘右键是前进 10 s,而按键盘左键则是后退 5 s,这简直…我都没法描述我的心情了。它所造成的用户体验上的强烈的割裂感,最终还是迫使我迁移到了 MPV Player。
记得网上有一个专门设计的“反人类登录网站”,上面收集了各种奇葩登录设计(外国人看来还是见得少了,真登录反人类还是得看张小龙)。但登录毕竟还是算用得少的,真正的反人类设计,那必然是要耦合到你的生活里,不断地恶心你的。