把活儿省下来 · 集 03:现成的办法,摆上货架
把活儿省下来 · 第一部第 3 篇(零代码)
你做酸菜鱼。从零开始,得泡酸菜、熬鱼汤、调比例,试错十次八次。但你去超市,花五块钱买一包酸菜鱼调料包——别人把功夫都下好了,你撕开倒进锅里,二十分钟出锅。
你不会觉得"用调料包不算本事"吧?没人这么想。所有人都在用调料包,所有人的酸菜鱼都因此更快更好。
函数库,就是软件界的调料包货架:一群久经考验的好办法,被人打包成一个整体,你拿过来,按说明用,不用管里面怎么做的。 这一集咱讲讲这货架是怎么搭起来的,再看管理那边对应的东西——你可能天天在用,但从没把它当"复用品货架"看过。
一、软件那边:从"翻译官随身带的调料包"说起
上世纪五十年代,写程序还是苦役:程序员用机器才懂的"原始密码电报"一条条写,写个程序动辄几个月,换台机器全部重写。
1950 年代中期,IBM 有一批人(领头的是约翰·巴科斯)琢磨了件当时很叛逆的事:能不能让机器自己把"人话"翻译成"密码电报"? 程序员只管写接近数学公式的句子,翻译的苦差事交给机器。这个项目叫 FORTRAN("公式翻译"),1957 年第一个版本交付使用——这个年份是软件史上钉得死死的大事,可以放心记。
但对本书最要命的,是项目里一个不太起眼的细节:为了让翻译出来的程序跑得不比手写的慢(当时所有人都质疑机器翻译又慢又笨),团队把大量精力花在预先打磨好的计算办法上——算正弦、余弦、开方这些数学函数,个个精心打磨,随翻译官一起出厂交付。
这意味着什么?从这件划时代产品诞生的那一刻起,它随身携带的就是一整包现成的函数。 你写下第一行程序时,就已经在复用别人的劳动了——你从没打算自己研究"正弦怎么算"。这就是软件史上最早的大规模复用品:别人调好的料包,人手一包。
补一段同期背景:那个年代计算机是天价,用得起的机构成立了用户互助组织,最有名的叫 SHARE——大家聚在一起互通有无,你写了个好用的程序,我拷走接着用。这大概是最早的"程序当公共财产流通"的形态。年代细节存疑标注,但精神是真的:"库"这个字,从一开始就带着"大家凑、大家用"的公共食堂味道。
到了七十年代,C 语言和 Unix 系统起来,随它出厂的那包料(行话叫 libc)装的是更底层的活儿:读文件、写文件、在屏幕上打字、分内存……全是几乎任何程序都要干的基础活。你见过的每个"在屏幕上打出 Hello"的程序,那声"打印"都是喊的现成名字——每个写过 Hello world 的人,都早已是复用的受益者,只是没人点破。
这一集还得钉两个词,后面全书都要用:
- 接口 = 调料包上的用法说明。 "撕开、倒入、煮沸"——你只管照说明用,包装里的配方随时可以换:今天在 A 公司的机器上跑,明天换台机器,说明没变,你一个字不用改。接口不变、内部随便换——这七个字是整个复用大厦的第一块承重墙。
- 供应链的连带责任。 天下没有免费的调料包:你用了某包料,半年后厂商被发现配方有问题、召回——你做的是酸菜鱼,问题出在料包上,但砸的是你的招牌。软件里一模一样:你调的库爆出安全漏洞,用户看到的是你的软件被黑,新闻标题写的是你的名字。这叫供应链安全——你的餐馆,对供货商的食材负连带责任。管理那边马上会看到同一笔账。
二、管理那边:把"怎么干"印成手册,发到每个人手上
现在切到管理这边。泰勒在集 02 把"标准动作"发明出来了——但请注意,单有标准动作还不够。一个工厂几十道工序、几百个工人,每道工序都有标准动作,这些动作存在哪?存在泰勒一个人的脑子里?那跟老师傅口传心授有什么区别,不就是换了个更累的老师傅?
真正的关键一步是:把标准动作印成手册、排成培训课,发到每个人手上。 新人入职,不发他一句"跟着老张学",而是发他一本操作手册、一套培训流程:第一步做什么、第二步做什么、做到什么程度算合格,白纸黑字。老把式的手艺,第一次脱离了人的脑子,变成了组织的货架。
这件事做到极致的,是连锁餐饮。一家快餐品牌能在全球开几千家店、炸出味道一致的薯条,靠的不是几千个炸薯条高手,而是一本手册:油温多少度、炸多少秒、沥油几下,全世界统一。新店员照手册干,第一天的出品就接近老店员——手册,就是那包调料;培训,就是教你读说明。
顺手把软件那边那两个词的管理对应钉上:
- 接口 ↔ 手册上的操作规范。 炸薯条的操作规范一旦印出来,就是全店对顾客的承诺;后厨换人、换设备,规范不变,出品不变——接口不变、内部随便换,七个字原样成立。
- 供应链连带 ↔ 外包的质量连带。 你的门店把清洁外包了,清洁公司用的清洁剂出了问题,顾客投诉的是你的品牌。外包出去的是活儿,连带不掉的是责任——和"库的 bug 是你的 bug"同一笔账。
而且货架一出,好处立刻显现:好东西不只让高手更强,它让更多普通人用上了高手的手艺。 FORTRAN 的调料包让一大批从没学过机器指令的科学家自己写起了程序;操作手册让第一天上班的新人干出了接近老手的活。这个"普惠"逻辑,后面在标准库、开源、云平台上还会一遍遍重演。
三、两张图叠在一起:有了仓库,东西才称得上"资产"
| 软件:函数库(1957 起) | 管理:手册 / 培训体系 | 两边其实是同一件事 |
|---|---|---|
| FORTRAN 数学库随翻译官出厂 | 操作手册随岗位发放 | 复用品开始"成批"存在 |
| SHARE 互助组,程序当公共财产流通 | 内部知识库、经验交流会 | 复用品从个人资产变组织资产 |
| 接口 = 用法说明("撕开倒入煮沸") | 操作规范 = 岗位承诺 | 接口不变、内部随便换 |
| 库的 bug 砸你的招牌 | 外包的错砸你的品牌 | 供应链连带责任 |
| 会用库的程序员一天顶一周 | 按手册干的新人第一天接近老手 | 普惠:普通人用上高手的手艺 |
结论先拍这儿:函数库和手册,是同一台机器的又一批同款产品。 相比上一集的"单个标准件",它们的关键升级是有了仓库和索引——复用品被成批地存放、编目、流通,谁要谁取。从这一刻起,复用不再是个人英雄的小打小闹,而是组织层面的资产运营。
同时也记下这一级的新账单:仓库要有人维护,版本要有人管。 库会升级、手册会改版——改版通知没送到,一半人按新规一半人按旧规,比没有手册还乱。这笔"维护成本",是复用品从单件变批发之后的必然代价,后面讲零件、讲平台时它会以更大的块头回来。
四、这一集的账:函数库(和手册)到底省了什么
省下来的:成批的好办法——从"一个有名字的盒子",升级为"一整包别人打磨好的盒子"。
怎么个省法:逛货架、按说明取。你不再自己包盒子,而是先逛:"这个功能是不是早有现成的?"——十次里往往六七次,答案是有。老手的高效,常常不是手快,是先逛过了货架。
省的代价:说明书要读、供应链要担责、仓库要维护。每包料各有一本说明书,风格还互不相同;料包出事砸你的锅;货架本身需要专人打理。
下一集说:货架上有些东西比"炸薯条"还要通用——排序、排期、复盘,跨行业、跨项目都在反复出现,它们也摆上了货架。
五、今天带走一句话
函数库,是把一批好办法打包上架、按说明取用;手册与培训,是把一批标准动作印发上岗、照章执行。两边都让复用品有了仓库和索引——复用从个人手艺,升级为组织资产。
顺便送你一句软件圈的老手艺,管理同样适用:动手之前,先搜一圈"这事是不是早有现成的做法"。 十次里六七次有现成的——从报销模板到排期方法,前人的货架几乎覆盖了你能想到的基础活。老手的"不折腾",常常不是懒,是他先逛过了货架。
但货架上的东西再全,你有没有发现:排序、排期、复盘这些活儿,跨行业、跨项目都在反复出现——它们比"炸薯条"还要通用。这些"通用解法"被收编上架,就是下一集的主角。

浙公网安备 33010602011771号