照例,放公众号震楼。

如果你是从其他APP跳过来的,点击右上角三个点,选择浏览器打开,长按此图片,选择分享图片。可以分享给文件传输助手。
然后进入微信,在文件传输助手中,点击图片,长按,就可以加公众号了。
本公众号精彩内容多多。不只有深度的技术,还有视角独特的故事。
书接前文。
上回说到,在1970年,科德终于发表那篇划时代的论文:《A Relational Model of Data for Large Shared Data banks》,正式宣告关系模型诞生。
这篇论文后来也被ACM评为最有影响力的论文之一。但这都是后来的视角啊,在当年,这篇论文在IBM并没受到重视。因为它超出大部分人的认知边界吗。你现在把爱因斯坦相对论的公式摆到我面前,我也不知道这玩意是干嘛的。因为超出了我的认知边界。同理,我是大厂领导,你拿一篇“基于三维存储技术的数据库实现”,这什么玩意,发发论文是可以,让我投钱给你开发这东东,是我脑袋被驴踢了吗。不过,虽然在IBM公司内部,科德混的不咋样,并不受重视。但在技术界,科德相当于经常写公众号、发文章,加上本身又是牛津大学数学专业、常青藤名校硕博,又经常混迹于各种数据库大会,还是有影响力的。这影响力传导到了部分客户那里,客户于是向IBM提要求,“金主爸爸想尝试一下科德那个关系型”。1970年代初,经不住客户的要求,IBM终于成立System R项目组,尝试关系型数据库。数据库的图灵奖共有4位,三位都和这个System R相关,或出自这个System R。System R真是拿了一手王炸开局。但System R并不是太成功,这是后话。无论System R日后是否成功,但在科德的努力下,IBM终于迈出了这一步,这是IBM的一小步,是数据库的一大步,但不是科德的一步。如果你是IMS掌教,你已经确定了要使用层次模型,你团队中有个刺头反复说,你决定的层次型不好,他有更好的idea。被你否了之后,他不思悔改,反而变本加厉,满世界宣传你的决定不好,他的更好……所以,在科德的努力下,虽然IBM决定尝试一下关系型,但科德只是以顾问的头衔,在外围参于项目。他被排除在System R核心层之外。每每读到此,我就很好奇,为什么科德没被降本增效掉啊。说实话,我团队里有个这样的刺头,我一分钟都忍不下的。是否那些年IBM不流行裁员啊,这个我也没去确认啊。之后,科德不断发论文,参加各种沙龙,阐述自己的理念:关系模型才是将来。如果说关系模型才是将来,那更早出现的网状、层次数据库,是不是就是落后的啊。科德还真这么说了,技术讨论,互相比来比去,说我的这种数据库技术,比之前的数据库技术更好,也是难免的。但要知道,之前的数据库技术,是此时已经封神的巴赫曼提出的,已经广泛得到业内认可。这时IBM一名小小的高级研究员,要单挑以巴赫曼为首的整个数据库界,这的确是有点大胆的。这场面就如下图:
1974年,ACM组织了一场级别颇高的技术研讨会。数据库之父、网状模型提出者、数据库四绝之一(四位图灵奖获得者之一),也是科德博士的一生之敌,巴赫曼,也出席了会议。科德博士位列四绝之一,还要等到1981年。1974年的科德,Title是IBM高级研究员。阿里也有一个类似高级研究员的职级,叫“资深研究员“,P11。(为什么我老是用阿里P序列,不用腾讯、菊厂的职级打比方?因为十来年前,我是阿里的P8啊,我对阿里的P序列更熟悉。)在继续我们的故事之前,有必要正式介绍下本文的二号主角、科德的一生之敌、数据库之父、图灵奖获得者:查尔斯·巴赫曼(CharlesW.Bachman)。巴赫曼刚在1973年,因开发了网状数据库的成就,被授予图灵奖。他是1974论战中最大的腕。科德博士是IBM的高级研究员,不过坐了多年冷板凳。他的数据库理论,和巴赫曼是对立的。巴赫曼比科德还要小一岁。我不流水帐式的介绍巴赫曼的早年经历了,网上都有。我们和科德对比着看一下,感受下不同的选择,对职场、对人生的影响。巴赫曼出生在美国,也于1944年前后参加了二战。他是美国陆军,这一点,没有科德牛。科德是大英帝国皇家空军。(当然,空军比陆军牛,这个是我的浅见啊,如果有不同意见,以你为准就好。)巴赫曼最高学历是硕士,1950年在宾夕法尼亚大学获取硕士学位。同年,他在沃顿商学院完成了三个季度的学习,获取MBA学位。从学术上,科德是博士,巴赫曼是硕士。科德还是稳胜一筹的。两个人最大的区别,是在1950年代。这十年间,科德在IBM没啥成就,就是一名普通技术人员。巴赫曼于1950年进入陶氏化工,也是玩打孔卡,在IBM较老型号计算机上,开发投资回报率的计算程序。这东西听名字,好像能和数据库扯上点关系啊。第7年,1957年,因为一个项目,巴赫曼早早就完成了自己的蝶变,从这个时候,巴赫曼的职业发展,开始明显强于科德。1957年,巴赫曼升职为陶氏化工中央数据处理部门的第一负责人。这个职位,要隔现在,稳稳的Director了吧。世界第二大化工集团部门总监。从此,巴赫曼超越科德,并在之后的十几年时间里,一直保持对科德的碾压式领先。你能说科德不优秀吗、不努力吗,人家40岁了还从头学硬件(体系结构)。在IBM IMS项目组坐冷板凳时,科德四处演讲、又写论文,提升自己的影响力。这怎么看,科德也不是那种埋头技术,不问世事、性格孤僻的怪才型技术人员啊。但巴赫曼7年坐到了总监,科德在IBM公司内,十几年一直没有建立自己的影响力。这就是奇妙的命运,人各有其命,没有什么原因。可能上苍要让科德建立更大的功业,因此给了他更多的经历,让他变的更强吧。然后,陶氏化工为了“数字化转型”,准备筹建一台计算机。做为数据部门的总监,巴赫曼理所当然的成为项目负责人。正是这个筹建计算机的过程,使巴赫曼也打通了任督二脉。开始龙场悟道。科德是读个博,扩展了知识边界,然后在IMS项目组坐冷板凳阶段,接触数据库思想,然后凭借十多年Coding积累的丰厚经验,和读博补足了知识短板,终于龙场悟道,形成了“基础软件思想”。巴赫曼就搞了个项目,就也龙场悟道,是不是有点简单了。有这种想法,主要是对巴赫曼想建个什么样子的计算机没有概念。 当时的条件,磁芯存储器(也就是磁盘的原型,1948年由王安博士发明)已经出现,到1956年,世界一第一台(不是块)硬盘(机械硬盘),问世了。大概就是下图的样子:这个大家伙的造价可是相当昂贵。但同样做为磁存储的磁带,却相对便宜很多。而且,磁带的信息存储密度、速度,比打孔卡,当然是不可同日而语的。
1957年,巴赫曼领导筹建陶氏化工的计算机项目时,就决定尝试一种全新的架构,使用新问世的硬盘当“内存”,而价格相对低廉的磁带,当存储,不再使用打孔卡。
(这里的硬盘当“内存”,更准确应该是当缓存,磁带的缓存)
但当时IBM主流的计算机还都是打孔卡,没有巴赫曼这种架构。所以,巴赫曼决定和IBM共建陶氏化工的计算机。
(当时IBM也有基于磁性材料的设备、和在其上的在线交易(OLTP)系统,但非常小众)
你看,巴赫曼并不是要从IBM采购一台 701、704等型号的计算机。而是要以大客户的身份,和IBM共建一种全新的计算机。硬件、软件自己攒,硬件有自己设计的部分,特别细节的部分交给IBM,生产制造部分也交给IBM。
而且,这个“共建”的过程,长达3年。直到1960年才结束。
这不是买台电脑,然后在其上开发软件。如果是这样,也用不了三年啊,对吧。
了解了这些细节,应该能想像出来为什么巴赫曼能通过这个“共建”计算机项目,打通任督二脉。
这三年中,作为项目负责人的巴赫曼,相当于系统的学习了计算机的体系结构。
3年时间,对于巴赫曼这种图灵奖级人材,足够读个博了。
所以到1960年项目结束,巴赫曼其实也相当于是读了个博的(只是相当于)。因此,在1960年这个时间点前,巴赫曼通过陶氏化工这个项目,打通了自己的任督二脉,是顺理成章的了。
非常可惜,巴赫曼倾注心血和IBM共建出的计算机,并没有真的被投入使用。
陶氏化工在项目进入交付阶段时,由于业务问题(原文为:“Business problems”)取消了订单。
什么样的业务问题,我们今天也不得而知了。
搞了三年,最好搞了个寂寞的巴赫曼十分沮丧。
此时巴赫曼已经打通任督二脉,实力已经超越全真七子水平,差不多应该是铁掌水上漂裘千仞级别。
除了四绝,此时天下已经罕有敌手。因此,虽然巴赫曼已经35岁了,虽说已经到了技术人的大限,凭着过人技术水平,找工作也易如翻掌,不至于流落到湾区开UBer。
伤心的巴赫曼也不想在陶氏待下去了,挂靴辞职走人。
科德是1960年准备百尺竿头更进一步时,觉得自己硬件知识不足,到密歇根大学学习体系结构(也就是硬件知识)。而后才打通任督二脉的。
而1960年的巴赫曼,职场上是陶氏化工部门总监,能力上,更是已经打通了任督二脉。
可见在这个时间点,巴赫曼无论是职场、还是能力,都是稳胜科德的。
在离开了陶氏化工后,当年,巴赫曼就加入通用电气。
巴赫曼在加入通用后,又有怎样的奇遇,且听下回分解。