嵌入式系统与单片机|技术阅读
登录|注册

您现在的位置是:嵌入式系统与单片机 > 技术阅读 > 「万恶的」进度条坑了多少人?

「万恶的」进度条坑了多少人?


领取嵌入式学习路线,

请加良许微信:coderliangxu-6

昨天逛热搜的看到一个词条,说是有小学生在开学前一天狂补 40 篇日记,好家伙,又一位假期勇士。

不知道在座的各位有没有这样开学前一天奋笔疾书的经历,我是忘不了没做好时间规划,埋头到深夜,第二天顶着黑眼圈的不堪回忆。

如今我就在那想,如果假期要是有个可视化的进度条,写一篇作业涨个百分比,高低不能熬那些个难忘的夜。

当然,如果它要是个自转菊花,那家里的鸡毛掸子估计少不了和我屁股多接触几下。

同样是用来等待加载的进度条,差别能有这么大?

如果让我再举个不恰当的栗子,下片时你是希望下载器能清楚的告诉你下载进度,还是希望下载器啥也不说只在那转圈圈?

虽然这都 21 世纪第 22 个年头了,进度条的小秘密都被大家扒拉的差不多了,但身为老司机的我仍会毫不犹豫的选择前者,哪怕这是一个蓄谋已久的「骗局」。

1

进度条这玩意虽然现在很常见,不过咱没法说到底是谁发明的,就像古人用结绳记事一样,记录进度这个概念,四舍五入自古就有。

那如果真要给进度条找个嫡系老祖宗,故事可能还要从 1896 年开始讲。

那一年波兰的卡罗尔,依据自己在波兰和俄国轧钢厂当工程师的经验,提出了「和谐理论」用于生产时的计划和控制,可别问我这个理论说得是啥,反正听着就很高端。

而根据这个理论设计出来的图,大家不会陌生,就是「初代」进度条。

为啥这么说,因为一个柱状图代表着一个项目,工程进展到哪,就涂到哪,以此来复盘进度,而这个图表当时也有正经的名字,叫「Harmonogram」,译为波兰语中的「日程」。

但是呢,正所谓闻道有先后,晚说就落后,卡罗尔虽然发过一些文章, 但只出现在波兰杂志。

说真的,一个波兰人,在波兰杂志,用波兰语发表文章,这很科学,唯一的问题是,那会儿世界的中心并不在波兰。

而在 1910 年到 1915 年前后,美国的机械工程师甘特所设计出的类似图表,早就在西方多国成功推广。

一步差,步步差,一来二去,这个进度条的老祖宗就被命名成了「甘特图」。

2

「甘特图」本是用于项目调度管理的,那是怎么跟计算机勾搭上的呢?毫无疑问,是因为需要。

虽然现在的电脑中的进度条无处不在,但啥玩意都要讲基本法的——在电脑初兴,进度条尚未出现的那个年代,像这台 1982 年的 Commodore 64 电脑,等待界面还是下图中的彩条。

第一个提出把图形进度条应用在计算领域的,是 1979 年一位工程师的博士论文,说可以在电脑中使用这种图表,实现在复杂计算环境中监视系统行为的目的。

那个时候电脑发展很快,运行却很慢,总有需要用户等待的时候,你看程序卡住了,却不知道到底是程序正在跑,还是已经撂挑子崩溃了。

换言之,黑匣子一般的电脑,总归是需要一个有反馈的界面。

自此,进度条开始和电脑眉来眼去:

有人设计图形化的倒计时钟来显示进度:

有人则在屏幕上靠着从左至右显示的一排星号符:

至于这样设计的效果嘛,来看布拉德 1985 年在一个关于「人机交互」会议上提出的研究——他找了 48 名学生,分成两组,同时跑一段搜索程序,一组有进度条,一组没有进度条。

结果显而易见,有进度条的那组幸福指数急剧拉升,于是得出结论,为了人类的幸福,进度条必须安排!(当然,这是我说的)

一年后,界面设计师鲍伯也专门发文称,「人们每天要等待各种事情,有时愉悦,有时却不,问题在于,用户对等待的感受」,电脑需要进度条来缓解等待的失落。

文初说的「骗局」,自此拉开序幕。

3

为啥说是骗局呢?不知道大家发现没有,进度条和电脑勾搭上后,研究来研究去,说的都是用户的感受,换言之是为了照顾情绪而生。

就好比堵车时的路怒症,本来我就堵的心烦意乱,关键我还不知道这样的心烦意乱要持续多久,相比有目的的等待,未知的不确定性才是最可怕的。

所以深谙人性的进度条普及速度很快,再加上微软和苹果的操作系统大战终了,图形化界面最终占据了主流,而直观易懂的进度条被微软纳入系统之中。

文件复制粘贴、软件安装卸载、系统升级更新,进度条无处不在。

额,不对,当时应该是这样的:

但事实上,对我们很重要的进度条,它反馈的进度并不是匀速线性的,换句话说,它并不准确,有时快,有时慢,往往卡在 99%,对我们进行最后的审判。

这其实是没有办法的事,虽然一个操作所需的资源可能是定量的,但当你电脑上的其他程序来要资源的时候,恒定分配资源则显得太傻了些。

为此,设计师们玩了招偷梁换柱,比如做一个假的进度条,先快,后匀速,最后慢下来。

这里的设计颇有门道,先快是为了给你一点甜头,后匀速给你一种皆在掌握的安全感,至于最后慢下来?

我 TM 都 99%了,裤子都脱了,你还要撕破脸皮下车,就算后悔了,沉没成本压着,你必须给我吃下去。

其实只要抓住了人性,设计起来就是这么简单粗暴。

4

如今,进度条的设计早已出现在了方方面面,是注册时一步一步的引导:

是某宝养鸡种树的游戏:

是 App 启动时的开屏广告:

至于前面说先快,后匀速,最后慢这样的传统艺能,在手机上简直不要太多,最简单的,你把手机断网,再重新打开公众号的文章,标标准准的进度条就出现了。

总结来说,它有一个明确的目标,只要你耐心走流程,就能达到目的,前提是,你得有耐心,不能掀桌子。

始于管理,兴于人性的进度条固然不会消失,因为人永远不会失去对确定性的追求,战胜不了时间,至少我们能让它看着更好。

但是,我相信最早把进度条引入计算机交互的大佬们肯定没有想到,服务于人性的进度条,是一个开了箱的潘多拉魔盒。

之所以我们信任进度条,有眼见为实的安全感,有百分比的准确性,所以它才能成为人性的安慰剂。

可当它被用于人性,或者不点名地说:

当它被某平台当成是攻城略地的助力神器,

某抢票助手应用到拉新促活、组团抢票......

信任感的破灭,信任体系的崩塌,进度条反而成了罪魁祸首,说好的中国人不骗中国人呢?


良许花了一个半月的时间研发了一门 Linux 命令课程,欢迎购买学习!

课程特色:

  • 详细总结 150 个高频使用命令,学完可应对工作中 95% 命令需求;
  • 答疑群提供无限次答疑服务,答疑群氛围很好;
  • 总时长超 10 小时,媲美大课时长。
  • 长按下方卡片购买



    强烈推荐一位腾讯大佬录制的 Shell 实战案例课程(已获授权):

  • 大佬在腾讯工作 6 年,在大厂工作十几年,经验丰富;
  • 大佬根据自己在大厂工作经验总结了 100 个案例,超级实用!
  • 学完这 100 个案例,肯定对自己的 Shell 编程有很大的提升;
  • 答疑群提供无限次答疑服务,答疑群氛围很好。
  • 长按下方卡片购买