Transcription
大家晚上好,这里是老范讲故事YouTube频道。我旁边呢,是我的朋友庄表伟,他是开源圈的。所以这两天有一件开源圈的大事,正好要跟大家讲一讲。就是呃,Linux把所有的俄罗斯籍的贡献者,直接都清场了。这到底是一个什么样的事情?呃,先讲事实吧。
嗯,对吧,我们不能撇开事实不谈。对,先谈事实。事实呢,是这么一件事情。首先,我们讲个背景啊,就是在Linux社区,他们的代码的贡献,还是通过邮件列表的方式的。
啊,这么古老吗?对,非常古老。而且邮件列表里面呢,通常就是我发一封邮件,这封邮件里面呢,前面是文字,就是我要干嘛。嗯,然后最下面呢,附了一个叫补丁的东西。嗯,这个补丁呢,就代表着我会对代码干嘛。嗯,就两段。第一段是文字,给人看的。嗯,第二段呢,这个补丁呢,也是先给人看。看完了之后呢,如果没问题,这个补丁就会合入到代码里面去。嗯,它就会变成真正的Linux的代码了。嗯。
那么为什么发邮件列表呢?其实这其实是一个非常古老的风俗。嗯,叫做code review。就是我先把邮件发出来,然后呢,所有能够看到这封邮件的人,都可以在下面回复。嗯,回复啥呢?啊,我喜欢这个代码,我不喜欢这个代码,我觉得这里有问题,等等。反正就是讨论。嗯,讨论完了以后呢,最后有一个人叫做维护者。嗯,这个维护者他就说啊,我觉得没问题了。有很多人会在下面回复,叫做looks good to me。嗯,就是在我看来不错。looks good to me。有时候还简写成为LGTM。啊,就是looks good to me的意思。然后接下来有很多人都回复了。嗯,那么这代码就会合入。
嗯,但是呢,前段时间呢,就发生了一件很有意思的一个补丁。嗯,这个补丁呢,就写的非常含含糊糊的。就是说,基于某种合规的理由啊,我们呃,会删掉这些人。嗯,但是如果将来有更多的证据,嗯,我们会把他们再加回来的。嗯。然后接下来就有一个diff。这个diff就是一个补丁吗?这个补丁里面就可以看得出来,他哪些文件中的哪些行被删掉了,嗯,哪些行被加上去了。就这样的一个补丁。嗯,就发现了,里面全是删除的。删除是什么呢?你一看就看明白了。就是那因为里面都是人名,括号邮箱。每一个人民背后的邮箱,如果有点RU的,这个人就被删掉了。嗯,就删了好多。就是凡是凡是俄罗斯的,但这个邮箱的开发者。
你讲的,它是一个补丁,它是这些代码是在Linux里面的,还是说它就是直接把邮件列表里的这些人就删掉?对,是这样的。就说我们我们去看Linux内核的代码,你会发现它不仅仅有这些就是C语言文件啊,点h文件啊这些原代码。嗯,它还有一些文档类的文件,它也是放在那个里面的。OK。其中有一个文档名字就叫maintenance。啊,就意味着对维护者。维护者,其实他还比不是一般的贡献者。嗯,维护者代表的是他有维护权限的。嗯,就说如果你在一个社区里持续贡献,持续贡献,贡献了很长一段时间,人家信任你了。嗯,然后会把你提升为maintainer。嗯,这其实是一个很大的荣誉,以及很重要的权限。嗯,它代表着你有能力去看护这个系统的某一部分。嗯,因为在Linux内核里面,它是分很多个子系统的,每个子系统有一个或者多个maintainer。嗯。好,然后呢,它就删掉了这些maintainer的名字。嗯。
那么它事实上是什么呢?我们首先要去了解这个maintainer的列表,它实际上是啥。嗯,它代表的是两个东西。嗯,第一个是官方承认你有maintainer权限。嗯,第二,这是一个荣誉。它意味它代表着,你在这个社区的贡献足够高,高到你是这个社区的某个子系统的maintainer。嗯,所以他被删掉,就意味着这些人被革职了,而且他们的贡献,或者他们在社区的荣誉地位没了。嗯,所以我会用一个词叫做抹杀这些俄罗斯程序员的贡献。嗯,好,这是第一。
第二,就是这样的一个文档,在社区里,就是在这个邮件列表里,因为非常含混嘛,很多人就没看。嗯,没看就过去了,默默的过了三天还是几天,然后就被另外一个大佬,叫什么急什么什么的,一个大佬就把他合入了。没说二话,没有讨论,没有评论,没有没有反驳,没有质疑,也没有人说,这个事情我看着很好。对,没有对,就就被合入了。好,等到被合入了以后,大家发现了。发现了以后,当然非常非常的震惊。为什么呢?就是说,我,我们说在开源社区里面,很多时候,之所以大家会愿意免费的义务的为你打白工。嗯,我凭什么为你打白工?是因为这是一个很重要的荣誉。嗯,我仅仅因为获得了荣誉,我就愿意义务的做贡献。嗯,这是一个荣誉交换体系。嗯,就是我获得了荣誉,所以我不收钱的。不要紧,这个无所谓。对吧?嗯,但是你把我的荣誉都剥夺了,那我还剩啥?嗯,这就非常非常的过分。其实在有一本书叫《大教堂与集市》,里面其实专门讲到了一种最最重要的,当时还叫黑客圈,其实就是开源程序员的一种重要的文化,就是荣誉体系。嗯,这个荣誉体系代表的是我之所以付出,我要有个证明啊,我否则我不白干了吗?但这件事情被他们剥夺了。嗯,当然就会有很多人去咨询,说为什么这么干什么的。
但是更震惊的就是我,我知道这件事情,就是他刚到这一步。嗯,就是刚刚知道的。第一,这些人的名字被删掉了。第二,代码已经被合入了。嗯,就进已经进入主干了。嗯,第三,有人在咨询我。我看到是这一步。我们当时还在等消息呢,说哎呀,接下来会发生什么事情呢?嗯,我们当时在等两个消息。一个消息是Linus本人会怎么说。嗯,另外一个消息是Linux基金会会怎么说。嗯,为什么呢?两个原因。Linus是这个Linux内核社区的总负责,总负责就意味着他最终会说了算。嗯,然后Linux基金会为什么要出来说话呢?因为Linux基金会持有这个Linux内核项目,而且这个合入的那个GH的那个什么大佬和Linus本人都是从Linux基金会拿薪水的。嗯,他们其实是Linux基金会的雇员。嗯,所以理论上这个基金会该说话。
嗯,但是过了两天还是三天,Linus回了封邮件。他回邮件的语气非常非常的粗暴,甚至可以说是粗鄙。嗯,他把所有的批评者都称之为俄罗斯的水军。嗯,叫troll。嗯,就意思就是说,你们这帮巨,其实troll的英文原意是巨魔的意思。嗯,就是你们这群在网上乱喷的喷子。嗯,而且他为什么会说,你们是这些俄罗斯喷子呢?因为他不管你是哪个国籍,他认为只要你在帮那些俄罗斯程序员说话,那么你一定是俄罗斯人伪装的喷子。嗯,哪怕那些人本来不是。这是第一段。
第二段就是,改是不可能改了。因为很多人其实在劝他,说你干脆把这个退回去。嗯,就相当于你没删除过,这事情就算过了。其实大家在给他台阶下,因为这件事情是可以可以回去的。嗯,但是他没有。嗯,他没有,他说不可能的,回退是绝不可能回退的。你们就不用想了。嗯,你们跟我说再多也没用,我不会听你们的。嗯,当然这是一个典型的暴君的态度。
好,最后一段是,你们这些人,好好的去看看历史。你们要记得,我是一个芬兰人。嗯,那个潜台词就是,你们好好想想,在历史上俄罗斯对芬兰干了啥。嗯,但凡是个芬兰人,就不会允许这种事情。那我不可能退回去的。嗯,那这其实就已经越过了所有的底线。嗯,越过了所有社区里面所能容忍的底线,他已经完完全全超过了。所以就就舆论就一片哗然,以至于有一些非常重要的社区内核的长年的贡献者,就后面就写了一封公开信,意思就是说,拜拜了。嗯,我以后不来了。这封信也被翻译成中文在社区里流传。嗯,就大家就会非常的非常的震惊,同时也会有某种幻灭感。
就是我们的朋友,我们俩都认识的霍剧,嗯,就在就在聊到就是说有一种幻灭感。为什么会幻灭?嗯,因为Linus,他几乎是所有做开源人都认识,甚至都崇拜的某种偶像。嗯,为什么崇拜呢?因为他一手一脚创立了Linux这个操作系统。嗯,现在也是全世界最大,也是最著名,甚至是参与人数最多的开源社区。
好,这样的一个开源社区的最重要的一个创始人,他公然违反了开源社区所有的底线。嗯,而且还在宣扬某种这种历史旧账。其实我当时就在群里面吐槽,就是说就说Linus这个人,他扯的这个理由。嗯,如果他在1991年创建Linux这个操作系统的时候,在第一天他就说,我是俄罗斯代码,我是一个芬兰人,我不我不允许任何俄罗斯代码。那算你牛。嗯,这个项目到现在已经33年了,你来现在开始说,我要拒绝俄罗斯代码,因为你是芬兰人。拜托,你现在已经是美国人了。嗯,这这已经是,哎,怎么说呢?我认为完全就是扯。
还有一点呢,其实大家还在问,就是说那么什么叫做合规理由呢?嗯,对吧?合规到底是什么呢?嗯,那其实啊,又有人在就隐隐约约的在那邮件列表里面说嘛。嗯,说因为他们是俄罗斯的公司雇员,而他们所在的公司是在那个名单上的。被制裁了?对,是制裁名单的。嗯,且不说啊,这些制裁是不是合理,我们假设制裁是合理。嗯,但是其实我们去看那个名单,有一些.ru是公司名,.ru。但是还有一些就是mail.ru。嗯,就就有点像类似于我们的163.com。我知道这样的邮箱。就是他那个烟袋子下面的那个东西。对,对,就这样的邮箱,你也认为他是某公司吗?你们有没有查证过?你们的查证的记录,有没有在社区公开的展示过?嗯,就比如说我,我假设我要做所有的行为,我可以公开做。就说基于美国法律要求,我们现在要要清理掉俄罗斯的开发者。那么经过查证,以下这些公司在清单上。那我们也知道这些人的员工,是啊,这个公司的员工。我至少要公示啊。嗯,我公示完,我所有的证据是充足的,所以我才把这人清掉。嗯,这也就算了。
嗯,还有一点也是非常恶劣的。就是呃,我们说,如果我们怀疑一个俄罗斯的程序员,嗯,我们想要禁止他在今后提交代码。嗯,还还算合理。嗯,对吧?因为因为他们有可能出于某种国家利益,他们会往这个Linux内核里面去去下毒嘛。嗯,我们假设是这样。我们禁止他以后提交代码,这个我觉得都合理。嗯,但是你把他过去的贡献给抹杀掉了。嗯,你说他过去是maintainer的,现在删掉了。嗯,没有任何理由。嗯,这个就,哎,好吧。大概大概是个事件的来龙去脉就这些。了解。
我觉得呢,从这个事件本身来说呢,也算是现在世界的一个缩影。是是吧?就是大家其实都有一些脱离原来这种就是全球化呀,或者说大家天下一家亲的感觉。现在都是你的是你的,我的是我的。嗯,对吧?你以前又怎么怎么样我了?我以前又怎么怎么样你?嗯,然后大家现在在翻旧账,在做这个事情。但是,咱们从社区治理的这个角度上来说。嗯,呃,首先社区本身应该有规则。哈哈,是吧?嗯,理论上说是应该的。对,那么这种规则上呢,其实应该还是有一些底线。嗯,因为我刚才也在讲的说,我最近在看这个《智人之上》,正好看到第五章,对,民主与专制。嗯,然后这个里面讲的说,呃,民主并不是投票。嗯,民主而是你要遵守一些底线。比如说50%一人投票,这个选出来政府不能把剩下49%人干掉。对,对吧?这个其实是他的一个基础。你只有要这样的话,他才有再恢复回来,或者说叫揪片的这个能力。嗯,他现在等于是说,通过这样的一个,他有Linus,有Linus自己这这样的一个权利。对,他的行使,他的权利以后去获得了,说我就直接把这些人的投票权,或者发声的权利,maintainer的这个,maintainer的这个权利全都给干掉了。对,了,对,对。这个呢,等于就是这个系统就没有在揪片的这个能力了。整个社区等于揪片能力失去了。嗯,对,这个呢,确实是一个比较让人沮丧的事情。因为其实很多国内,我觉得咱们做开源也好,做很多这种社区的人也好,其实都是希望使用开源社区的这种治理方式,能够去促成更多人的协作,然后可以去做一些更伟大的事情。对,对,这个呢,确实是让人很失望。
但我觉得另外一个方向来讲,嗯,就是这种失望呢,其实不能怪Linus,应该怪我们自己。就是我们最终其实是把他这个人神化了。就是我们不应该对他一个个人,嗯,抱有超过一个人的道德水平,或者什么这样的这种超越,个人这种诉求。说你今天就是一个神了,嗯,你不应该再犯人的错误了。嗯,对吧?他是一个人,他是一个芬兰人,他今天可以去感觉愤怒。嗯,哎,先不说神不神话吧。嗯,我觉得,先先回到你前面那个问题,就是社区应该有规则。是对吧?但事实上呢,我我们真的在社区里泡久了以后,嗯,就发现社区的规则之下还有潜规则。这是肯定的。那么潜规则有一条是什么呢?就是贡献越大的人越不受规则约束。是的,就是就是,我如果是一个小小卡拉米,嗯,这样的一个小角色,嗯,那这些规则对我来说都是适用的。是,但是如果我是大佬,嗯,这些规则对我来说就不重要。嗯,如果我是这些规则的创建者,嗯,就是这些规则当初都是我写的,嗯,那么我随便就改,因为根本无所谓。是,越是在规则之上的人,就是在这个社区里,真的总总会有一些在规则之上的人。是,他们会无视规则。这是这是社区最重要的潜规则。
而另外一方面呢,就是呃,在《大教堂与集市》里面也会谈到礼物文化。嗯,其实就是说,你为这个社区贡献的礼物越多,你的地位就越高。嗯,那我们我们不得不承认,Linus是在Linux内核社区贡献最大,最无可替代的一个人。嗯,那因为他的无可替代性,嗯,我们就会给他以某种不受规则约束的权利。就比如说,你在社区里骂人,那你就被删掉,嗯,你就会被踢走。嗯,他在社区里骂人,他就是有个性。好吧,有个性,对。是是是。那个那个,Linus竖中指的那张,那张照片已经传播了多少年了啊?而且没有任何人觉得,Linus那次竖中指是有问题的。都会觉得这个,这个太有个性了啊,对,该骂那个,那个Nvidia就该骂。是吧?那那为啥呢?因为他那个完全不是一个很礼貌的行为,完全是一个很粗鲁的行为。其实我们再去回顾,Linus整个的内核社区,嗯,其实他因为粗暴的去骂人,因为粗暴的去批评别人,其实有很多次反对的事情。嗯,嗯,有些人也因为之前的事情退出过社区。甚至还有过,呃,Linus,他自己还反省过。嗯,因为批评的声音太多了之后,他还反省过一段时间。嗯,他说啊,这段时间我先暂时呃,不在社区里出现了。嗯,我回去反省一下,我暂时不写邮件,我等我的脾气好点了,我再回来。嗯,他也有过。但是这都是所谓的他的自我约束。就是一个暴君,他可以下罪己诏。是,对吧?但是你拿他是没有办法的。是,就是就是这样。
对,但是但是你刚才在说到的我们的错误,其实你只出了一个开源社区,不是Linus内核社区,而是所有开源社区都会有的通病,就是权利越大越不受约束。是,虽然有程序,所有所有的社区都会有程序,但是这些程序都不是为了最高的那些人设子。是,其实我们看更大一层次的这种社区,比如说像呃,美国政府这样的地方,他们呢,呃,这种规则,肯定不可能说事无巨细都规定。嗯,一定会有一些空子,或者是一些可以做潜规则的地方。这是一定有的。嗯,然后呢,他们也会去修正这些规则。嗯,呃,因为你一旦是说,这个规社区规则设立以后,就不可修正的话,那那肯定马上僵化的,或者说你就没有办法继续往前发展了吧。所以他一定会有一个修正的过程。你像美国这么多的议员在那立法,实际上就在不停的修,修来修去嘛。嗯,但是呢,他们的最上面的那个人,他们呢,也会有一定的规则去约束他的。这就三权分立了。对,就是就是说,像绝大多数的开源社区,都是单一金字塔结构。是,就只有一个单金字塔,最上面就一个人。就还是太简单太小。对,他不可能,或者说他也没有必要去设计出三权分立的结构。嗯,去互相制衡。说实话,互相制衡如果在开源社区出现,那么最常见的一个结果就是分裂。嗯,可以分成三个社区。是,是,自己玩,而不是说哎呀,我们吵得要死,但是我们还在一个社区里,然后三权分裂,互相制衡。累不累啊?我自己写代码去了。不,其实是这样,你所说的那种分裂方式了。嗯,它并不是三权分立,而是说呢,里头比如说,有两三个公司在同时维持一个项目。嗯,这个里头最典型的一个案例,是谷歌跟苹果当时维护那个Webview。嗯,然后呢,谷歌就是上去删苹果代码,然后苹果上去删谷歌代码。然后最后说,算了,咱各搞各的吧,甭费劲。对吧?谷歌你去做那个Chromium。然后那个Webview,Webview这个代码后来好像基本上不动了。然后那个就是苹果自己去搞一些新的东西,就完事了。对吧?这个,其实所谓的三权分立,还是说,你要专门有一群这种律师行政人员,只做规则。这是这是另外一个更难的地方。对,这是在开源社区里面最常见的一种文化。嗯,就是只有写代码的程序员才能说话,才是真正有贡献的程序员。是,虽然我们在不那么严苛的时候,嗯,我们会笑嘻嘻的说,你的文档贡献也很重要啊,你的社区贡献也很重要啊,你的其他贡献也很重要。是,但是一旦说到说,你对还是我对的时候,嗯,你的贡献大还是我的贡献大的时候,是,只会讨论代码贡献。嗯,这可能其他的都不重要。这可能就是这个叫什么呢?也是开源社区的一个局限性。没办法,因为他就是从程序员的这个群体里长出来的。是,是的。而程序员,程序员最重要的叫talk is cheap, show me your code。就说你说那么多干嘛?瞎逼逼干嘛?赶快拿代码出来,凭你的代码说话。如果你连代码都写不了,你懂懂法律有毛用?是,你懂懂民族懂政治有毛用?是,你代码都不会写,你就别来了。是,就这样。
所以那这样看来的话,就是所有的开源社区实际上都是逃不过这个问题的。是,这就是一个所有开源项目的,一个必然的,或者说长大了以后的一个必然情况。倒也不是。其实我为什么说,我们还在期待Linux基金会的发言呢?因为基金会,倒还不是一言堂。基金会,它有比如说五个理事,七个理事,九个理事。这个理事它本身是由,比如说像Linux基金会,它是由多家企业各自赞助。对,然后一人一票,或者说我的赞助金额达到了金牌会员,我就有一个理事在里面。嗯,是这么来的一个理事会。这个理事会,他们互相之间是能制衡的。是,而且如果不到万不得已,他们也不至于分裂。嗯,那么我们期待的某种理想的状况是,这种理事会能够通过某种制衡和修正的机制,来发出一些更加理性的声音。嗯,但是我们现在悲观的看到,估计他们不会说话。嗯,估计他们不会。对,这件事情,他们默默的就把这事情就放过去了。
还有是,是,因为前一段时间出现过一个问题,是呃,某一个也是很大的开源社区,老大离世了。嗯,好像是是哪个编辑器好像是?哦,这个我还不知。哦,不是不是,是VM吧?VM啊,对,对,对。对,VM的一个创始人,创始人离世了。嗯,那比如说像这种大的这种社区,嗯,这个前面这个这个不可替代的神,他们走了。嗯,怎么办?好一点的做法,嗯,是他在还在神志清醒的时候,找到一个替代者。嗯,如果他做不到神志清醒的时候,找到接班人,那这个社区就完了。就完了,对。而且事实上,所谓的接班人是理论上啊。嗯,就是他作为创始人,嗯,他要能够把后继的这个继任者扶上马再送一程,帮他把威信树立起来,然后再走。OK,否则如果他做不到这一点,也不行。就哪怕他说指定一个谁,你负责,然后那个人搞不定,因为他不能服众。是,是,这个没办法。对,其实我们刚才也在讨论一个问题,就是在这种开源社区里面的这种信任传递过程。嗯,其实这个,我觉得是一个也是挺有价值的一个事情。虽然这一次这个Linus干这个事情,算是伤害了这种信任。对,但是这个呃,这种信任其实并不是代码跟代码之间,而是人跟人之间的这种信任。嗯,对吧?因为我们今天也有一位同事在上面在在讲说,他出去跑步。嗯,对吧?去跟这个开源项目的某大佬,某大佬去跑步。跑完步以后呢,以前他提交代码,需要很久才可以合并进去。嗯,现在呢,等于这个人就见过他了,也认识他了。说我知道你是谁。嗯,不,是一个他妈的不知道是人是狗的东西。嗯,然后你提交了代码,就可以很快被合并进去。对,所以这个实际上就是一个信任传递,或者是信任增长的一个过程。还是人跟人要真诚的见面。嗯,这个其实我觉得是非常可贵,而且特别是在AI当下的时候,是非常可贵的事情。对,就是说的确认过眼神吗?对,就是一定得是面对面,见过聊过吃过喝过,然后确认过眼神才知道是自己。是,而且其实嗯,我觉得他有一种合理性啊。就是说,因为我们两个人,比如说一块去跑步,但是我们会聊天。嗯,会聊到兴趣爱好,聊到其他的东西。嗯,然后我对你有一个更完整的了解。嗯,我不再把你当成是一个代码提交的机器。嗯,所以我对你会有更多的信任。这是第一点。第二点是,因为我们有直接的联系方式,我随时随地可以直接找到你。对,所以呢,我会倾向于相信你代码的提交是友善的和靠谱的。嗯,就说如果莫名其妙来了一个ID号,一个账号,从来没见过的,写了一堆代码,然后我也有可能怀疑,他是不是恶意代码呀?嗯,就是我需要花更多的时间对建立这个信任。对,我会更加认真的看你的代码,然后再来判断你这个代码是不是合适。这个嗯,最坏的情况。嗯,就最坏的情况,就是因为他已经提交了太多太多次了。嗯,每次提交我看过了都没问题。嗯,那从人会偷懒的角度来说,我越到后面我看的时间会越短。是,就说你100行代码提交上来,我一开始要看半小时,我最多只看3分钟。嗯,甚至我只看一个标题,一看哎,是你写的。哎,好,没问题。那,就合入吧。嗯,好。
这件事情在社区里发生过。对啊,我现在只要看到Copilot写的代码,我就说好吧,不。我跟你说发生过什么事情?就是之前前面那个那个朋友,他还说过嘛,就是有一个人,在社区里潜伏了很长时间。是,然后已经混成了这个社区的maintainer。嗯,而且他是筹准了这个社区的创始人要去休假。是一个月还是三个月。嗯,在这段时间,那个人是休假期间不用上网。然后他就在这段时间获得了权利。然后往里面注入了病毒。处心积虑啊。是,处心积虑啊。因为别人信任他了。是,是,所以所以我觉得,也不能够,就是我们,我们知道在人跟人之间的交流当中,嗯,就是会越熟悉越信任。嗯,越交流越愿意听你的。嗯,嗯,但是在开源社区,这种事情就是怕做过了。做过了以后就会变成这种认人为亲。对吧?然后远近亲疏。这个其实很正常。像我们中国人讲的话叫帮亲不帮理。哎,对,对,对。因为我以前有一次是碰到罗振宇。嗯,然后呢,罗振宇就跟我们讲说,你看这个,咱们今天在一个屋里吃饭聊天。嗯,对吧?然后呢,如果有人问我说,这个这个事谁对谁错?那个人我不认识,我认识你。嗯,那我就肯定站你这边,我根本不会去理,了解这个事情到底是怎么回事。嗯,罗振宇说这话呢,我其实很不喜欢。嗯,我觉得很不喜欢。人性如此。我就说,一方面我承认人性如此。对,但是作为一个理性的人,嗯,我还是要保留一定的判断力。嗯,为什么呢?因为我也有可能是被忽悠了。是,我跟你吃饭吃的次数多了,然后你说的话我都信了。嗯,到时候我被你忽悠了,别人不会说啊。对啊,他就是太信任人了。他会说,这个人被人忽悠了呀,好蠢啊。嗯,那那自己也会变成一个蠢货。嗯,也会成为一个被人嘲笑的一个事情啊。嗯,不是不是什么很光荣的事情。
不是一般处理这种问题的方式,就是叫分层社交。嗯,嗯,就是你不要跟那种太不靠谱的人在一起。啊,对,哈哈,这个还是要有鉴别力。还是要有鉴别力。就是我,我跟这个人在一起的时候,我先跟他鉴别一下,说这个人好像跟我差不多在一个层次上,我们就这样了。嗯,对吧?然后那个再往上层。所以有的时候我们就要讲,要阶级跃迁,往上走。嗯,对吧?每一层都不容易。每一层都不容易。是,是的。哈哈,对,他们也是这样。像像我以前有的时候去一些基金,他们有时候说,我们大家都很忙,对吧?你就向我推荐项目就好了。嗯,或者我向你推荐项目。嗯,然后呢,咱们其他的就不要去拉家常了。嗯,然后呢,我们就看你推荐的项目是不是靠谱。啊,一次,两次,如果你推荐项目靠谱呢,那你就算我们靠谱的合作伙伴。嗯,啊,你以后再推荐项目,回来呢,我们会很认真的看。嗯,啊,如果你推荐项目都不靠谱呢,嗯,你下次也别来找我喝咖啡,我也很忙。对,就这样的。
好,再回到回到我们这个开源社区的话题。啊,其实我在之前在推特上发了一条信息。嗯,在说到一个事情,就是说,呃,开源社区,如果造成这样的一个后果之后,他会有可能会分裂。嗯,而分裂其实是所有人都会受到损失。会吗?会。我我们这样解释。嗯,就是说,嗯,整个开源社区是一个大的池子。嗯,这个池子里面有无数的开源项目。是,这些开源项目,大家都能用。嗯,然后呢,大家都能够往这个池子里面再贡献很多的开源项目。这是一个公共基础设施也好,叫做公共资源也好,或者叫做数字公共产品也好,反正都是公共的。嗯,每个人都能用。这是一个大家共建的事情。嗯,那么现在,如果这个共建的人是100万人。嗯,来共建一个东西。嗯,现在我把这个池子分成两个。嗯,然后每个池子只有50万人共建。嗯,那么他一定会出现无数的重复劳动。嗯,就是有些是在A池子里面贡献,有些是在B池子里面贡献。嗯,而且互相之间还看不到。嗯,我也不看你的,你也不看我的。反正也看不见。嗯,那么这一定存在人类智力的巨大浪费。这是第一个。
第二个就是,之所以我们,如果能互相看到对方的工作,甚至我都不用再做了,我就直接用某个县城的开源的组件,或者开源的项目了。那么我就可以接着做后面的事情。嗯,那么整个人类的创新的速率会加快。嗯,因为我不用重复劳动。嗯,这么说吧,就是这一次呢,比如说就算是造成分裂。嗯,也就是Linux分裂。不是我就担心的不是Linux的分裂。嗯,而是整个开源社区的分裂。因为这个很难。不是为什么?嗯,就是,就是如果说Linux基金会,嗯,不出来说话,嗯,默认这样的行为。嗯,那么Linux基金下面有多少开源项目?那个是基金会下面还有多少子基金会?每个子基金会还有不同的开源项目。是,他们有可能都会迫于,或者受到美国的合规性的压力,去删掉里面的跟俄罗斯程序员相关的事情。对,这是第一步。
第二步就是,整个的这种贡献和信任度的机制就崩塌了。嗯,就是原来你是来贡献。嗯,贡献完,贡献完了以后,我就会把,你这个我我我我这么理解这个问题啊。嗯,就是这一次的事情呢,其实真正造成比如说分裂,可能也就是嗯,但是真正造成整个开源社区分裂的,或者整个开源这个分裂的,其实是国家地缘政治。啊,对,对。比如说中国说,我们不允许大家上GitHub。嗯,你们必须在中国重新搞一遍。嗯,然后呢,这个你必须要接受我的审核以后,才可以上线。啊,然后或者是美国说,所有我制裁的公司,不可以使用美国的这些开源项目。或者你也不可以往美国的开源项目里头去贡献代码。嗯,那么这个呢,实际上是属于地缘政治。对,去涉及到了原来的这种开源的,整个完整一体的开源社区。嗯,那这是这其实是两个问题。
呃,第一个问题呢,呃,我们先来讨论一下,就比如说Linux社区可分裂了。嗯,那么现在有没有可能,比如说出现一些新的这种替代方案,或者来替代Linux。这样的方式太难了。这个实在是有难度。这个我也知道了。嗯,因为现在很多人在想鸿蒙。鸿蒙又不是Linux。鸿蒙底下说不定还是Linux呢。鸿蒙现在说底下不是。好,好吧,就算你不是。现在他说底下已经是自己的微内核了,已经不是Linux内核了啊。好吧,那最好是这样。嗯,但是这个怎么说呢?其实从我的角度上来说啊,就这种分裂一方面,其实有个好处。嗯,就是Linux,其实现在已经有一点点伟大不掉了。就是特别是对于各种移动应用和这种嵌入式设备来说呢,它的内核太大。嗯,太笨。然后呢,它为了保持过往的传统也好,或者是兼容性也好,或者是这个呃,一些其他的一些约束和规范也好吧,他这个东西他扔不掉。他的他的内核太大。嗯,所以现在谷歌也好,包括鸿蒙都是在做微内核,就是要把Linux内核扔掉。嗯,然后这样的话,就比如说到手表里面呀,到什么各种的这种设备,裁剪就可以裁剪的很小。嗯,对吧?那么在这种过程中呢,其实是有可能说,我们找到一个新的方式来去呃,替代原来这个这么大的内核。对吧?虽然他可能在很多的这种兼容性,比如说我要去兼容显卡呀,兼容什么设备上,需要做很多新的工作。嗯,但是呢,也有机会可以比如说把一些包袱扔掉。对,然后还有一种方式呢,就是干脆分家。就是就像当年的这个谷歌跟苹果做那个Webview。是我干脆自己出来整一套新的。嗯,那么这套新的呢,我们也开源,然后大家继续在这上面搞。对,然后这个,因为现在的Linux,特别是在云计算这一块,嗯,跟原来已经不太一样了。嗯,不一样在哪呢?就是以前的Linux呢,是这个大家必须要保持一个统一的内核。然后呢,在这个内核上,比如说再加变成什么呃,Ubuntu啊,或者变成什么这些东西。然后大家按照这个标准来做。嗯,但现在呢,这个你比如说Oracle云。嗯,它上面就是Oracle Linux。嗯,对,对,吧?然后呢,这个他们现在其实各个云计算厂商完全可以自己来裁剪这些东西。嗯,自己来做。那么既然这样的话,干脆就把这些云计算厂商凑凑在一起,说算了,咱们做整套新的,甭跟他们玩了。或者说比如说一些最大的,比如说亚马逊。嗯,啊,Oracle,谷歌,呃,微软这几个最大的,包括国内的什么华为啊,阿里啊。嗯,啊,咱们搞一个自己的。然后呢,咱们就就不跟他玩了。
呃,这个就更难了啊。就是说,呃,我们,我相信你,想让欧美厂商不在不在Linux基金下岗。嗯,然后自己单搞一个。嗯,甚至都还有可能是。但是再加上中国的厂商是,甚至再加上俄罗斯的厂商是。绝不可能。嗯,对,这就是又是地缘政治的问题。对,这还是地缘政治。对,对,对。然后呢,我觉得这分裂,就是刚才你说的一种分裂,倒是有可能。嗯,就是从一个通用操作系统,嗯,分裂成多个不同场景下的操作系统。对,比如说嵌入式的,小型的操作系统。嗯,再比如说面向AI的操作系统。嗯,面向数据中心的操作系统。嗯,面向什么什么的操作系统。是,然后呢,图形界面的,终端的操作系统。单算。嗯,那个才涉及到显卡的很多什么。现在AI也要显卡啊。对,对,对。但是AI的显卡,你就只需要支持新的那些驱动了呀。前面的那些驱动你就不需要支持了呀。或者所有的老的你都可以扔掉了呀。这个不是这么简单。因为我原来认识一些这个做硬件创业的人。嗯,他们呢,就是做了一些新的版卡之后。嗯,就需要到各个的Linux版本里面去提交驱动。对,然后呢,去通过认证。嗯,然后呢,当时,我们去投资一些这种硬件厂商的时候,看的就是你的这个新的版卡,在多少个Linux这个版本里面。嗯,啊,被认证通过了。嗯,啊,如果说你都没有,那那相当于是你没有这个社区能力,也没有准生证。对,没有准生证。对,就跟那个咱们C919没有得到欧美那个对,那个准飞证,是一样的过程。所以所以,这个呃,这个事情,就是最后可能你如果分的特别散了以后的话,就会让各种硬件的诞生呢,变得非常痛苦。你比如说我今天做了一个新的硬件,那我想想到亚马逊去推,那你就必须到亚马逊去参加认证。对,对吧?你想到华为去推。这就是这就是我说的呀,就是如果社区分裂了,哪怕只是Linux的内核社区分裂。嗯,他就至少要认证两次吧。也会让整个世界的所有的厂商,所有的是后来者吧。嗯,都会受到损害。是,是,是。而且这个损害肯定是存在的。而且我们就说一个是损害,一个是再往下说。嗯,就是这些损害都会带来的是研发功能的研发工作量的投入。对,对,对。那么这些人本来可以不用干这活的。是,他们本来可以干点别的活的。是,这机会成本也上升。是,是,这就是损失。
好,这是这是第一个问题啊,就是Linux社区本身的分裂。嗯,呃,现在我们其实没有看到谁能够替代它。其实是非常难的。我觉得不难,是很难很难。对,然后呢,第二个问题呢,就是其实我们现在看到的,整个的开源社区,在最近的几年里头,特别是在俄乌冲突,或者我们叫俄罗斯入侵乌克兰的这几年里头吧。嗯,一直在跟这种分裂在作斗争。一直是很辛苦,在作斗争。就是在俄罗斯入侵乌克兰的第一天,嗯,因为大量的开源社区的代码,其实都是,就是都有俄罗斯程序员和乌克兰程序员的贡献。对,而且他们特别像GitHub,还有几个大的开源的这种组织里面,或者是这种代码仓库的,这种贡献者里面,都是里面其实很多人是乌克兰人。嗯,然后也有蛮多俄罗斯人的。对,都有。所以这个在第一天他们就在斗争,说我们不能去分裂。嗯,但是现在呢,等于看到的就是斗争的结果,好像就要被Linus直接付之一炬了。嗯,是的,嗯,是的。这是一个非常悲哀的事情。如果真的是说,最后我们按照阵营,把开源社区分裂了。比如说中国自己关起门来,我整一套。嗯,然后俄罗斯说,那我也整一套。对吧?然后欧美整了一套。嗯,那这个事情的话,其实是非常,就真的是对整个社会是非常有危害的。是,是的。就是身份政治终于还是进入了开源社区。就是我们一直希望的是,身份政治不要进到社区里来。嗯,我要你的代码和不要你的代码,只是因为你这个人。对,还是不对?不是因为你的国籍,不是因为你的年龄,不是因为你的性别,不是因为你的其他身份,而仅仅是因为你这个人的代码好不好。对,这是我觉得这是开源最重要,或者最宝贵的一些一些底线。是,但是现在身份政治是进来了。是,而且这个事情可能是危害非常巨大,因为真的是神一样的人物,然后给大家做出了一个这个错误的表率。对,是,这就是我们现在面临的一大挑战吧。
而且我觉得,我们坐坐在中国来讲这个故事呢,也也挺也很可笑。也不能这样说吧,你应该这样理解。就是说,呃,在中国有非常非常多的程序员。是,也为Linux内核做出了非常多的贡献。那如果你哪一天啊,所以这最近有一个很搞笑的事情。嗯,就是有一个朋友,嗯,叫奎克王。嗯,他发了一个补丁。嗯,到内核社区里面去,就是去移除掉所有的华为的啊,maintainer的名字啊。但是这个补丁估计还没有被收。如果被收的话,又是这地震级的事情。但是,那华为肯定也是被制裁厂商啊。不是,但是现在还没有被合入。现在至少这个代码没有被合入。嗯,但是伤害到了谁呢?嗯,就是因为我跟我跟那那个华为的贡献者,也是同事嘛。对,就知道那个朋友,就那个华为的同事,他就发了一条朋友圈。嗯,大意就是说,我很郁闷。嗯,我我给Linux内核做了这么多贡献,我也是一个maintainer。为什么我的名字有可能会被删掉?他,我我招谁惹谁了?
这个我倒是可以理解。对,因为我们毕竟是这个要受国安法管理的。嗯,啊,我们是需要的时候,需要向相应的有关部门坦白,而且还不能告知他人。我们是有这样法律的。嗯,然后呢,所以我觉得这样的,跟不是跟Linux内核有啥关系?当然有关系了。不是,一个人在Linux内核所做的任何的代码贡献都是公开的。发的patch,发的补丁,这个就是被国安问起来,也就是这些代码呀。对啊,这有什么好多说的?有什么好担心的?但但是,如果国安要求你去写一些其他东西,你也要去写。而且你还不能去。不不不,这两回事。这是两回事。你看你刚才说的是,如果国安询问你,你应该向国安坦白。坦白,这个我觉得本来就是可以坦白的,因为我做的事情都是公开的。对,如果但是国安法并没有说,我要求你往开源社区里投毒,你必须投。没有说过这种话吧?但是他要求你的东西你又不用公开啊。不不不,这是两回事。这是两回事。你做这种恶意拆毒的话,是非常非常糟糕的。恶劣恶意拆毒。因为曾经有明尼苏达大学的研究者,试图向另一个是内核社区投毒。嗯,然后整个大学的账号被封掉了。嗯,因为你哪怕只干过一次,你们大学我就不能信了。嗯,这是有先例的。是,而且在一个这,么大的社区。嗯,就说这一次,想要移除掉几个俄罗斯程序员的事情,他们本来想偷偷干的。嗯,后来也被大家看出来了。嗯,所以如果你真的想在内核社区投毒的话。嗯,不被发现的可能性极小极小。对,所以这个人极有可能就是派他去做炮灰吧。假设我们假设说真的派他去投毒,他真的投了,然后被发现了,就是炮灰结束了。嗯,能真的能够往里放后门的,我相信几乎不可能。我觉得内核不太可能。但是周边不好说。不不不,这个这个太远了。这个太远了。对,咱不讨论技术问题。
所以所以,我们在说到的是,呃,所有的程序员,如果他有一个荣誉,嗯,这个荣誉是他自己在职业生涯当中为之自豪的。我为某某开源项目做了贡献。有的时候,比如说跟一些国家法律,或者是一些民族荣誉冲突了怎么办?不不不,这又是另外一个问题了。就是说,你在考虑地缘政治的时候,大家就在思考这个问题。对,我接着说嘛。嗯,就是呃,有一个事情是我一直主张的。嗯,就是开源代码,一旦是放出来,说是全人类可获得。嗯,全人类可使用,可修改。嗯,可再分发。如果是不限制,任何人都能用的。嗯,那么它就是一个全人类的财富。嗯,没问题。所以当我去望这个全人类的,这个公共的,这个财富词里面贡献的时候,嗯,不会违背我们的民族的利益。不会违反我们的民族利益。因为我并不是贡献到美国去,而是贡献到一个公共的,所有人都能够获得的一个地方去。那这个,我觉得,我们没法要求所有人这么去思考问题。不,我们再再简单例子,就是说呃,我们跟国企的朋友聊天。嗯,然后呢,国企的说,哎呀,我们没办法把开源项目捐赠到基金会去。嗯,因为这涉及到国有资产流失。嗯,对吧?其实背后的逻辑是一样的。嗯,背后的逻辑是一样。你听我说OK。为什么呢?因为他觉得这个代码是我们公司的资产。嗯,我我也评估了他,他也代表的是国有资产。对,那么我捐出去,是不是意味着我失去了这个资产?嗯,我说你不能这样想这个问题。嗯,你应该想的是,你把这个代码公开出去之后,嗯,你没有任何损失。嗯,而你会免费的,获得更多的人来为这个代码做贡献。嗯,而你的国有资产,有可能不但是没有损失,还能增值啊。你应该这样来想问题。嗯,否则的话,否则的话,资产还是两个概念。不不不,一样的呀。你刚才以国家概念一样的。就算我我是中国的程序员,应该讲荣誉嘛。你现在在讲资产。不不不,我们先回来嘛。就是说,这个人为什么会获得一个社区的荣誉?嗯,是因为他贡献了好东西嘛。嗯,他,他,他把一些非常有价值的代码贡献出来。嗯,所以他才获得了荣誉。嗯,那你现在在说,你这个荣誉之所以获得,是因为你把你的这个代码贡献到那边去了。嗯,是,但其实不是。他贡献到的是一个国际的社区。是所有人都能够用到的。嗯,嗯,嗯,你不能够说啊,反过来说啊,你这样不对。如果真的这样来,嗯,来来批判我们的开发者的话,那真的就叫做关起门来搞开源了。如果真的这样关起门来搞开源的话,这真的一点前途都没有。是,这太糟糕了。是,就我们,也任何人,都不希望看到,整个属于全球的开源社区分裂。对,这个是肯定,对于整个人类,都是很悲催的一件事情。对,是,是的。所以这一次的事情呢,我觉得呃,我总结一下啊。呃,第一个事情已经发生了。然后呢,这是现在地缘政治,以及呃,每一个人,现在个人情绪的一个宣泄与表达的一个结果。嗯,这个事情呢,呃,对整个的开源文化与开源社区来说,有无可估量的损害。对,对,然后呢,呃,也,这个事情可能不会有任何好的结果。也不会有人说我去,因为旧的不去,新的不来,把这个NIX干掉,我上鸿蒙或者什么。这个事情也不可能发生。对,这是也没有任何的好处的一个事情。嗯,然后,在未来呢,可能呃,如果我们希望继续全球化,继续快速的往前走的话,可能大家还是要去很好的维护,开源社区的一些基本规则。嗯,那么开源社区呢,可能在现有的,这种代码说了算的,这种规则的基础上,也许还是需要一些进化的可能。比如到到一定程度以后,由基金会去制定一些新的规则,说不定去管理这些程序员会好一些。对,是这样的。
好,这就是我们今天跟大家贡献的Linux基金,呃,Linux内核社,内核社区删除俄罗斯程序员的一个始末,以及我们两个的一些感想。好,感谢大家收听,再见,拜拜。