昨天夜里十一点四十分,老陈端着两碗泡面推门进来,说他要下载一部 4.7G 的老电影,让我帮他盯着进度条。我答应了,结果这一盯,就盯到了凌晨两点十七分。
进度条卡在 63%,像一个人走到半山腰,忽然忘了为什么上山。
老陈把面汤喝干净,抹了抹嘴说:“这玩意儿是流下载,边下边播,卡一下正常。”我问他:“那字节码下载呢?”他愣了三秒,说:“你是说整包下完再跑的那种?”
我们就这么聊起来了。两碗泡面,一台旧笔记本,一个下载,两种逻辑。
字节码下载像搬家,先把所有箱子搬进新房子,再坐下来拆;流下载像喝茶,水一边烧,杯子一边摆,先喝一口再说。
一、老陈的 4.7G 和他的 63%
老陈是程序员,在一家做在线教育的小公司待了六年。他给我演示的时候,手指在触控板上划得飞快。
“你看,流下载是分块的。”他说,“服务器切成一块一块,浏览器拿一块、播一块,边拿边扔。”他顿了顿,“像吃回转寿司,来一盘吃一盘。”
我问他字节码下载是不是就落后了。他摇头:“不是落后,是另一条路。”
那一刻我忽然觉得,我们聊的其实不是技术,是我们怎么对待“等待”这件事。
我承认,我偏向后者。我下载电影从来不开边下边播,哪怕要等四十分钟,我也想看到那个 100%。
二、公司里叫“阿七”的前端姑娘
上个月在望京 SOHO 的 B1 咖啡角,我碰到过一个叫阿七的前端姑娘。她说她们团队为了一个播放器吵了整整三天。
“产品经理要秒开,”她搅着冰美式,“工程师要稳定,最后折中,首帧走流,正片走整包。”她伸出三根手指,“三层缓存,折腾了 41 天。”
我问她值不值。她笑:“值啊,用户可不管你怎么下的,他只管卡不卡。”
这话我记到现在。就像我后来在 腾讯 workbuddy 官网 上看到的那句“边用边加载”,轻飘飘五个字,背后是四十一天。
三、我为什么还在用老办法
说到底,我是个固执的人。
我电脑里有个文件夹叫“下完再看”,里面躺着 213 个文件。它们全都下载完了,一个没播。我朋友笑我囤积癖,我不反驳。
可我就是觉得,一个东西没有完整地落到我硬盘里,它就不算我的。
这大概就是字节码下载和流下载在我这里最真实的区别——前者是一份占有,后者是一次借用。
当然,这话不严谨,工程师会摇头。但写文章的人有权把技术写成心情。
四、一些没想通的问题
那天夜里我们聊到三点,老陈困得趴在桌上。我却越想越乱。
如果流下载永远只在需要时才拿,那我们到底“拥有”过什么?如果字节码下载坚持整包落地,那份完整会不会也是一种浪费?
我想起去年在潘家园旧书摊翻到的那本《流媒体时代》,1998 年的书,纸都黄了。摊主说三块,我给了五块。
书里有一句话:技术总是在解决旧问题的同时,制造新的等待。
我把这句话抄在便签上,贴在了显示器边框。旁边还贴着一张——是 1-49个十二生肖图 的打印页,我侄子画的,歪歪扭扭。
五、写给和我一样困惑的人
如果你也曾在凌晨盯着一个不动的小数点,你大概懂我在说什么。
字节码下载和流下载的区别,说穿了不复杂:一个要整,一个要快。可人的困惑从来不在定义里,在选择的瞬间。
我还记得阿七最后那句话,她说她们上线那天,首帧 0.8 秒,团队在会议室里鼓了掌。“那一刻我觉得,所有的等待都值了。”
我没告诉她,我回家把那个播放器的整包下载也打开了。
也许有一天我会想明白。也许不会。但至少,那个 63% 的夜晚,有人陪我一起等过。
下载这件事,终究是我们在和时间的商量。
有人愿意等,有人等不了。