Zilliz 顾钧:“精英程序员”与“程序员精英”

1

前两天看到开源中国发了两篇很有意思的文章:《FreeBSD大败局》[1]和《Linux败局已定——FreeBSD大败局》[2]。也许很多人只当这是两个操作系统互喷的八卦,但在我看来,这场争论带出了一个很重要的问题:自由软件与开源软件究竟哪里不同?FreeBSD 所继承的BSD 某种程度上是自由软件精神的发端。而 Linux 则是开源软件的最佳代表。

我们会在很多文章里面看到诸如以下的表述:

  • 自由软件强调软件自由,用户有权利得到所运行的程序的源代码;

  • 开源软件继承了自由软件代码开放的理念;

  • 自由软件开源软件被并称 Free and Open Source Software (FOSS)

这些讲法都没有错,但他们却往往给人造成一种困惑:开源软件自由软件是一样的,那么为什么要有两个概念呢?

我的回答是自由软件开源软件是两回事,他们的主力参与者是两种人。从宏观上看,不同人群都会有共同点。(比如,上帝和安拉都禁止人们盗窃。)但人与人的差异往往在细微之处。

2

自由软件的土壤是小型机 (minicomputer)  UNIX 操作系统。DEC[3] 公司发明的小型机成功把计算机从大公司普及到了大学与研究机构,使得更多人有机会接触到计算机。但前提是你得能进入顶尖的大学或研究机构,这便是标题中所指的精英程序员”——来自精英阶层的程序员。

开源软件则源于 X86 个人电脑 (personal computer),互联网与 Linux 操作系统。个人电脑进一步把计算机从大学、研究机构普及到了普通人家。你不再需要先进入精英阶层才能接触编程了。这样的草根程序员很多没有计算机理论基础,也没有学习过什么高等数学知识,他们有的是浓厚的兴趣。其中佼佼者会成长为程序员精英,比如 Linus

但你可以想象精英程序员是如何看待这些草根的,我引用一下《还有人记得Linux之前,那个理想又骄傲的BSD吗?》[4] 中的的内容:

不仅是 Bill Joy,整个 BSD 的傲气都十分外漏。Marshall Kirk McKusick 后来深度参与了 FreeBSD,他就曾表示,90%  committers 所贡献的代码都不能用,还剩下的一小部分则需要“were peed upon to make them smell like Berkeley”(不翻译了,大家自行体会。)而这也是FreeBSD 保存有整个等级制度的原因。

lola,《还有人记得Linux之前,那个理想又骄傲的BSD吗?

除了阶层上的优越感,设备上的鄙视链也是个重要的因素。DEC 开发的小型机当年一度把 IBM 的大型机 (mainframe) 打得找不着北。IBM 如何应对 DEC 的强势崛起?除了不断完善大型机,真正的杀手锏就是做出了 PC 个人电脑。当然任何产品初期的时候都是比较稚嫩的。因此不难想象,那些用过小型机的精英程序员是如何看待用着玩具般的 PC 的计算机草根们。

回顾过去的历程,显然精英程序员输给了程序员精英。有趣的是今天中国互联网大厂们的校招风格依然是精英程序员的思路,特别重视本科学历。在业务上似乎也取得了不错的成果。但在技术上呢?

大厂内部精英程序员们也很难展开合作。比如数据库,一个大厂没几个互相 PK 的数据库团队,都不好意思说自己投入了基础软件的研发。


现在我们正处于又一个计算环境变革的时代,程序员精英与开源模式能不能继续发扬光大呢?

附录

[1]: FreeBSD大败局

[2]: Linux败局已定——FreeBSD大败局

[3]: Digital Equipment Corporation 

[4]: 还有人记得Linux之前,那个理想又骄傲的BSD吗?


本文转载自“燃烬1400”公众号,作者:顾钧Jun,原文链接:https://mp.weixin.qq.com/s/oaupH57sxH6eGQ0Ilk7e1A

 

Guess you like

Origin www.oschina.net/news/187574