Linus亲述:不写文档,如何用代码带出千万开发者
|
去年十二月那场开发者大会,Linus那句"文档是给弱者看的"一出来,我档口收音机正放着《锁麟囊》,隔壁剁骨头的案板震得秤盘上的泥直往下掉——你猜怎么着?满场鼓掌的倒有一半是连Git命令都记不全的新人。要我说啊,这老小子就是把"优胜劣汰"四个字刻在代码里了,跟当年我爹教我做生意一个路数:不教你怎么挑货,直接扔你到批发市场,三天卖不出去就烂手里。 我原以为搞开源的得像市场管理处那帮人似的,整天唠叨"标准流程",结果Linus那套玩法倒像二批收货——他只管核心代码够不够硬,外围功能烂成什么样?爱修不修。就跟我这档口卖山竹似的,外壳裂了照样摆最前面,反正顾客自己会挑。去年有个大学生照着Linux内核写驱动,文档全靠啃代码注释,结果三个月搞出个比官方还稳定的模块——要按某些公司的规范,这小子得先写三百页设计文档,等写完黄花菜都凉了。
文章配图,仅供参考 可别觉得这是啥高明手段,我见过太多人栽在这上面。前年有个做物联网的小伙子,非学Linus不写文档,结果团队散了三个月,新接手的连变量名是干啥的都猜不出来。这就像我隔壁摊老张,非要学我爹"放养式"带徒弟,结果徒弟把进货价当零售价卖,赔得他媳妇天天来档口哭。所以啊,Linus那套能成,前提是得有千万开发者当"试错池"——你个小公司十来号人,也敢这么玩?分分钟被竞争对手吃得渣都不剩。说到这我想起上周收档时的事。泡沫箱上写着"王记水产"的箱子,里头装的居然是电子元件——八成是哪个二道贩子偷摸换的。这跟开源社区多像?你贡献的代码可能被改得面目全非,最后连自己都认不出来。但Linus不管这个,他只认"能不能跑通"。就像我挑山竹,管你哪个产地进的,捏着软乎没坏点就行。这种玩法看似粗暴,实则把筛选成本全转嫁给开发者了——能熬过来的自然是真本事,熬不过的...反正开源社区最不缺的就是炮灰。 手上的裂口又开始渗血了,都是昨天搬货时被纸箱划的。这行当就这样,有些伤看着吓人,其实不影响干活。代码圈也一样,Linus允许核心代码有"硬伤",但必须得是那种"伤筋动骨"的大问题——小bug?爱修不修,反正有千万人帮你试错。我档口那盏灯晃了半年了,管理处说换要收两百块安装费,我直接自己买了个灯泡换上——有些事,就得让参与者自己承担成本,社区才能健康运转。 可别以为这是啥先进理念,我老家种茶的表叔三十年前就这么干。他让全村人随便嫁接他的茶树,但只收最好的那批芽尖。结果呢?现在整个县都种他的品种,他啥都不用干,每年坐着收茶青就行。Linus的套路更狠——他连茶青都不收,直接让你把成品茶摆他摊位上卖,卖出去他抽成,卖不出去算你自己的。这种玩法能成,全靠"规模效应"撑着,小打小闹的早被淘汰了。 秤盘上的泥干了,结成块抠都抠不下来。这让我想起那些非要给Linux内核加图形界面的开发者——Linus直接骂他们是"给坦克装翅膀"。他要的不是"完美",是"能跑就行"。就像我档口卖水果,烂一半的照样摆出来,反正顾客会自己挑好的。这种筛选机制看似残酷,实则高效——能留下的都是既懂代码又懂"生存法则"的老油条,比那些靠文档喂大的新手强多了。 但话说回来,这模式也有要命的地方。去年内核更新把某个驱动接口改了,结果全球至少三千个设备当场报废——换别的项目早被骂成狗了,可Linux社区呢?开发者们连夜改代码,三天后新驱动就出来了。这种"自愈能力"才是Linus真正的底气。就像我档口着火那次,隔壁老张二话不说帮我搬货,管理处来了反而先查消防证——关键时刻,还得靠自己人。 收音机里正唱到"休将往事存心上",我瞅了眼地上的水渍——管理处昨天来修水管,结果把隔壁摊淹了,到现在还在扯皮。这跟开源社区的"责任分散"多像?出了问题没人认账,但总有人会偷偷修好。Linus的聪明之处就在于,他把这种"无序"变成了"有序"——通过代码质量这个硬指标,把真正能解决问题的人筛出来。至于文档?那是给那些连代码都读不懂的人准备的,而Linux社区...从来就不缺能读代码的人。 我原以为这种"野蛮生长"模式撑不过十年,结果它越活越壮。现在连微软都学乖了,把.NET开源了还不敢多管。这说明啥?说明在技术领域,"优胜劣汰"比任何规范都管用。但我也得提醒那些想学Linus的小公司:人家那是站在千万开发者的肩膀上,你连十个核心贡献者都凑不齐,也敢不写文档?等着被自己人坑死吧。 最后说句实在的:Linus那套能成,是因为他赌对了"人性"。开发者都爱显摆自己能啃硬骨头,他正好给了这个机会。就像我档口那些爱挑刺的老客,明明知道山竹有坏的可能,但就是享受自己挑的过程——这种"参与感",才是Linux社区最值钱的东西。至于文档?等哪天开发者懒得显摆了,再说吧。 (编辑:航空爱好网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |


大数据架构师避而不谈的3个代码陷阱
PHP架构师私藏调试心法:3行代码秒定位90%线上故障
逻辑驱动:让代码自主推演答案
嵌入式开发:逻辑清晰代码助调试提效70%
无代码站长揭秘:PHP防SQL注入三层硬核防御
无代码站长亲授:MySQL慢查询毫秒级优化实战
鸿蒙电商新政落地:技术文档视角下的监管升级解析