154. 你知道锤子科技门票捐给的OpenBSD是一家什么公司么?

欢迎收听软件那些事儿第154期,今天是520,都这个点了,也没找到可以表白的人,我说一句我心里藏了很久的话:我爱你,祖国!这期蹭锤子科技公司罗永浩先生一个热点,好像也过去快一周了,热点其实有点凉了。锤子科技的支持者,把门票捐献给了两个组织,一个是OpenSSL,另一个是OpenBSD。这个是新闻上讲的,总共有接近500万人民币,几年前,OpenSSL曾经出现了一个很厉害的漏洞,叫心脏流血漏洞,可能那次事件以后,大家对OpenSSL有了很多的了解。

OpenSSL和OpenBSD有很多的渊源,这一期节目,我想讲一下OpenBSD的故事,目前来看,中文网上对这个项目和这个项目的创始人几乎没有介绍,因为我这个电台总是关注这种故纸堆里的事情,希望能蹭一点锤子科技一周后的余温,讲一下这个OpenBSD还有他的创始人。

OpenBSD的创始人名字叫西奧·德·若特,是一个非常有个性的人,一句词:特立独行。可以这么说吧,我们可能大部分人都没有用过OpenBSD,但是,作为程序员,或者仅仅作为互联网用户,我们可能直接用过OpenBSD的软件或者代码,比如说,只要大家在Linux上用过SSH登录,那么这个SSH软件就是OpenBSD操作系统的副产品之一。更广泛的是,在一些运营商的路由器上,也用到了OpenBSD写的IPSec协议栈,这个号称是最第一款最安全的协议栈,有点违反广告法了。

和现在火热的造特斯拉电动车的钢铁侠一样,这个西奧·德·若特(TheoDe Raadt)也是出生在南非,也是跟着父母移民到了加拿大。在加拿大的时候,他上了大学,上的大学和Java的创始人是一样的,叫卡尔加里大学,然后也和Java创始人一样,在学生时代软件就写的非常好,可以说是当时西半球写操作系统写的最好的人之一了。他在上大学期间,和三个哥们写了一个叫NetBSD的操作系统,我在上大学期间,不但不会写操作系统,我连装操作系统都不会,他成了影响世界的人,我成了夜总会的钢管舞演员。有些听众会问我,我为什么去夜总会跳舞,那是因为我小时候,喜欢看王子和公主的故事,在故事里,公主都住在城堡里,作为一个从小就吃小王子山楂片,还梦想当王子的人,当然想长大后能找到自己的公主,后来,我长大了,才发现公主不是住在城堡里,而是住在夜总会里,所以,我就在夜总会里找了个工作,为了能接近公主。童话里都是骗人的,并不是你吻她一下她会醒来感谢你,而是你给她几千块,她才会让你吻。

再说这个主人公,他的脾气非常大,当时NetBSD发布了1.0以后,他们团队发生了矛盾,其它人不合群,只有他自己比较合群,因此,他被踢出了核心的团队,我这里有这封信的图片,是1994年的邮件,我截了个图,有兴趣的可以看看。

然后被人踢出去怎么办呢?一气之下,他自己打算单干了,就从NetBSD1.0的基础之上,开发了OpenBSD。后来,有一个斯坦福大学的,觉得这么做不好,就写了一封Email道歉,说当时是我错了,希望能原谅我。我们设想一下,如果有个人误解了我,并且公开道歉,这封信我也截个图放这里。据我所知,这个世界上,只有两个人不肯接受这么诚恳的公开道歉,其中一个就是这个大哥,他公开写了一封更长的信怼了回去,把别人奚落了一番,一点面子都不给。这个世界上,另一个不肯接受这么诚恳公开道歉的人是我的前前女友,多大点事啊,不就是我犯了一个全天下下男人都会犯的小错误,甚至成龙大哥也会犯的错误,就公开羞辱了我,不接受我的公开道歉,还扇了我几个耳光,离我而去,一点淑女风度都没有。

OpenBSD这个操作系统非常注重的是安全,如果大家登录上这个操作系统的官方网站,可以看到有这样一行字,采用默认安装方式,很长时间只发现了两个漏洞。大家可能觉得,那是因为BSD用的人少。这也是事实,相比于Windows和Linux,BSD用的确实少,也相对来说不好用,但是BSD还是非常优秀的操作系统。Linux之所以能迅速的超越BSD发展起来,我觉得有一个很重要的原因是:Linux在写代码的时候,BSD在打官司。等到官司打完,Linux已经超车成功,就失去了领先的机会。

但是,我想说的是,Linux用户量虽然远远超过BSD,但是,BSD仍然是一个非常重要的系统,Linux的协议对商业不是特别友好,如果你想用Linux的源码,你一定要公开,这个世界上存在很多不想公开的系统,比如说Sony的PlayStation系统,比如最近任天堂出的Switch这个游戏机的系统,还有很多路由器的操作系统,都是基于BSD开发的,因为BSD的协议非常宽松,就是你想公开代码也行,不想公开代码也行,Linux相对来说,你用了就得公开。前些年Cisco公司,开发了一款路由器的操作系统,就是用了Linux,结果他们又不想公开,给人挖出来,强迫Cisco把这个操作系统公开了,这也就是很多人用的OpenWRT这个系统的由来。所以,像任天堂也好,Sony也好,都不太可能用Linux来开发自己的系统。当然了,这里的任天堂和Sony的BSD说的是FreeBSD,并不是本文说的OpenBSD。BSD主要有三种,最多用的是FreeBSD,其次是OpenBSD,再次是NetBSD。后两种BSD都是由这次电台的主角西奧·德·若特开发的,非常的厉害。

现在这个西奧·德·若特已经是50岁的人了,出生在1968年,现在还活跃在代码第一线,依然是经常搞点事出来,如果仅仅从经济上来看,他不是一个成功者,相对来说,他还是比较穷的,当然这个穷和我这种穷是不一样的,我是穷的吃土,他是穷的没有成为大富翁。从他的兴趣来看,不是我这种穷,他热爱爬山,养猫,探险。在50岁的年龄,还全世界到处爬山,找那种没有人进去过的地洞,岩洞里面探险,然后,还在写代码。然后,也经常喷喷这个喷喷那个。

这个OpenBSD开创了很多先进的东西,比如在NetBSD时候,虽然都叫开源,但是,那个时候的开源,你想拿到源码是比较困难的,这个哥就首创了在互联网上公开源码,任何人都可以下载,而不像以前一样,只有核心人员才能方便的查看。这个后来被所有的开源软件所采用。还有就是他对自由的理解非同常人,他认为自由就是完全自由,任何人都可以用他写的代码做任何事情,所以他不统计谁在用他的软件,到底有谁在用,用来做什么,一概不管。就这一套软件的哲学,也是得罪了不少公司和个人。

不像一些Linux,可以有二进制的代码,主要是一些硬件厂商不想公开自己的核心技术,就不想把源码公开,像Ubuntu这种Linux,是可以的,而且欢迎提供这种二进制的代码,但是这个哥就不行。所以移除了一些硬件驱动,像IBM这种公司,自己有一些商业上的硬件,就没法支持。这样的政策,导致OpenBSD对硬件支持不行。

OpenBSD的创始人还是个理想主义者,他觉得不爽的,都是直接怼,当然了,都是选最牛逼的怼。因为OpenBSD的安全性是得到验证的,因此,最大的用户之一是美国政府,美国政府一年大概要给100来万美元支持这个项目,因为这个操作系统是非常安全的操作系统,按理说,拿了美国政府的钱,就算不肉麻的天天说爱国,但是你不能谁给钱怼谁吧。但是,美国政府发动了战争,这个哥就忘记了谁是金主,对着美国政府猛喷,搞的美国政府不给他钱了,他也不在乎,没有停下喷人的脚步。如果连美国政府都敢喷了,可能就没有什么不敢喷的了,毕竟他没有中国国籍,对真正的力量一无所知。所以,他就像开了挂一样,走了喷人不归路。

没有钱他不在乎,他的理论是钱在软件上并不是特别重要,如果有钱就能买来安全,那微软就是世界上最安全的操作系统,显然不是。

他只选了80个人左右来开发内核,因为他觉得如果项目一大,代码变多,那么就自然会出现bug,因此,他一定要保持代码量非常小。最核心的团队只有15个人,用了几年时间一行一行的检查了OpenBSD所有代码,不像Linux内核里,有一些类似这样的注释:这行代码正确么?所以,他对Linux也是非常的不客气,他说Linux就是另一个微软,当记者不怀好意的让他评价Linux的作者Linus时,这个哥就像鱼咬钩一样,他说Linus这个人吧,也不清楚他整天在做什么,但是,肯定不是让Linux更安全。这句话肯定100%传到Linus的耳朵里,Linus这么回应:”OpenBSD社区就是一群自慰的猴子”。我当时想,猴子这么聪明,也会自慰么?

当OpenSSL那个心脏流血的事件发生以后,不用想,这个人肯定不会说一些好话,他猛烈的抨击了OpenSSL,然后马上接手了OpenSSL的工作,用了一周就把代码简化了9万行,改了个名字叫LibreSSL。现在已经可以用了。

如果把这个人的名字放在Google上,可以看到还是有不少他的事情的,有一些是采访,有一些是视频,其中有个采访问了这个一个问题,如果想学编程,应该看什么书,他的回答很有意思,他说只看书是学不会编程的,就和学骑自行车一样,主要的是你得上车去骑。这个观点我还是非常认同的,就和很多小处男,看书看视频不能说没用,但是,还是得实战才管用,否则床下视频十年功,床上实战一分钟。

其中一个记者问他,你觉得现在和以前编程环境有什么不同么?他的回答是,现在比以前更难了,现在的厂商,都是在口头上支持开源,但是,行动上并不支持开源,越来越多的硬件厂商选择不再开放自己硬件,他们只是口头上表达自己的支持,实际上并不支持。这让我想起了孙中山的一句话:“共和国是博爱之国,人人为我,我为人人。可民国六年来我们看到的是什么?是只有人民对当权者恐惧的‘爱’,当权者对人民口头上的虚伪的‘爱’,那种真诚的真挚的博爱我们看不到。”

这说的好像也是软件行业,硬件行业的事。希望有一天厂商也好,政府也好,能有真诚的爱,而不是虚假的爱。我非常尊重锤子的用户每年去捐款这事,毕竟,OpenBSD这个项目,在2004年的时候,都曾经穷的交不起电费了。好,这一期就到这里,下期再见。

刘延栋 wechat
欢迎扫一下关注我的公众号:软件那些事儿
欢迎收听我的电台,你的支持将鼓励我继续前进