您当前的位置:首页 > 电脑百科 > 程序开发 > 程序员

那些神一样的程序员

时间:2020-03-01 13:54:42  来源:  作者:

作者 | 刘欣

责编 | 夕颜

来源 | 码农翻身(ID: coderising)

在MIT的BBS上曾有一个帖子,其中问道:

“你觉得谁是最厉害的程序员, 为什么?”

虽然大家在回复的帖子中声明最厉害的程序员排名不分先后,然而大多数人仍把Bill Joy列在第一位。

Bill Joy?

年轻的程序员也许已经不知道他是谁了,但是他留在这个世界上的作品你一定知道,今天来讲一讲Bill Joy这位神一样的程序员。

Ken Thompson

1975的秋天,Unix光环加身的大神Ken Thompson休了一个长假,他回到了自己的母校,加州大学伯克利分校,他将在这里以访问学者的身份待一学年。

(Unix,Go语言发明人Ken Thompson,左,图源 | 维基百科)

在伯克利分校,Ken Thompson把Unix v6 安装到了最新的机器PDP 11/70上面,并且开设了一门Unix的课程。

(PDP-11/70,图源 | 维基百科)

他不仅讲解理论,还在晚上带着大家阅读一行行的Unix内核代码,向大家解释为什么这么做。

每个晚上,学生们都围绕在Ken Thomphson周围,瞪着一双双求知的大眼睛,聆听Unix作者的教诲,实在是太幸福了!

这些学生当中有一个研究生,Bill Joy, 也是我们故事的主人公。

做一个黑客

Ken Thompson通过Unix在伯克利大学激发了黑客精神。

有一天Ken Thompson在PDP 11/70 机房“闲逛”的时候,在Unix上随手写了一个不太完善的Pascal编译器,这令Bill Joy大开眼界,原来黑客就是这么玩的啊!

Bill Joy在用Pascal写项目作业的时候,很快他发现了编译器的缺陷,他也决定做一个黑客,把这个编译器改好。

那时候没有IDE,他们使用一个叫ed的文本编辑器来程序,ed也是大神Ken Thompson写的,但是它实在是不好用,后来有人写出了em,Bill Joy和Chuck又改进了em, 把它变成了en ,然后是eo, ep...... ex。

必须要提一下,那时候并没有显示器,大家用的都是teleprinter :

ed,en,ex们和我们现在用的文本编辑器不同,是所谓的“行编辑器”, 它们有什么特点呢?

你想在文档中任意移动光标,选取要编辑的文本段落?对不起,不行!你只能以行为单位进行上下移动!

你好不容易定位到了一行,想改这一行的某个词,对不起,不行,你得删除这一行,然后重新输入!

当时的程序员过的都是什么日子啊!

Bill Joy 使用ex这个“趁手”的工具,很快就把Thompson留下的“烂摊子”Pascal编译器给收拾好了,新的Pascal编译速度很快,运行起来也很快,深受学生们的喜爱。

后来,伯克利大学购买了一批叫做ADM-3A的终端,在屏幕上终于支持可以随意移动的光标了!

Bill Joy 欣喜异常,他重新设计了ex, 增加了“可视化模式”,ex变成了大名鼎鼎的vi。

(使用vi 编辑hello world)

vi这个编辑器让无数程序员爱不释手,更让无数程序员从入门到放弃。还和另外一个神器Emacs开启了长达几十年的论战:到底谁是最好的编辑器?

有个笑话说:如果让计算机生成随机数呢?

答:让新手退出vi。

BSD诞生!

1976年夏天,“休假”满一年的大神Ken Thompson返回了贝尔实验室, 他虽然走了,但是他撒播下的黑客的种子开始生根发芽。

Bill Joy和其他同学此时对Unix内核越来越感兴趣,他们发挥真正的黑客精神,不断地对Unix进行改进和增强,比如Bill 觉得Unix自带的Shell不爽,自己开发了一个C Shell (csh)。

与此同时,他的Pascal编译器有着良好的声望,很多人都想要一个Copy。

Bill Joy突发奇想,为什么不把Pascal编译器,ex编辑器(还有后来的vi编辑器),以及其他对Unix的增强一起打成一个新的包,重新分发呢?

于是在1977年早些时候,著名的Berkeley Software Distribution,即BSD 诞生了!

(BSD 的logo 小恶魔)

BSD发布之后大受欢迎,各个学校和公司都在使用,后来相继发展出了3BSD、4.0BSD、4.1BSD、4.2BSD、4.3BSD,还有些后继产品如FreeBSD,NetBSD,OpenBSD,NeXTSTEP等, 其中NeXTSTEP最终演化成了苹果公司名扬天下的MacOS。

BSD不断增长的影响力引起了AT&T(贝尔实验室的母公司, Unix版权所有者)的不爽,AT&T和伯克利大学打了一场旷日持久的官司,我们按下不表。

关于TCP/IP的传奇故事

接下来就是一个传奇的故事,关于TCP/IP。

当时,国防高级研究计划局(DARPA)主导了计算机网络的发展,由于BSD的良好表现,伯克利获得了DARPA的合同,希望能增强BSD,可以支持DARPA的网络。

当时有一家叫BBN的公司,曾经参加过ARPANET的建设,获得了实现TCP/IP协议栈的合同。

TCP/IP协议是互联网的基石, 读过的人都知道,光是理解这些协议就非常不容易,更不用说准确地、高性能地实现它们了。

BBN把TCP/IP协议栈实现以后,DARPA要求Bill Joy集成进BSD,但是被Bill拒绝了,他理由很简单:BBN写的TCP/IP性能太差了!还不如我自己写一个!

Bill Joy说到做到,很快就手写了一个高性能的版本,集成进了BSD。当被问道是怎么实现TCP/IP的时候, Bill Joy说: 这非常简单,你只要读一下协议,然后写代码就行了。

一个人打败了一个公司,这让BBN非常难堪!

联合创立Sun公司

1979年, Bill Joy 获得了伯克利大学的电气工程与计算机科学硕士学位,1982年他作为联合创始人创立了Sun 公司,作为首席科学家一直到2003年。

在这期间,他的成就依然无与伦比:

Network File System(NFS)的主要设计人。

微处理器 SPARC 的主要设计者(软硬通吃啊!),SPARC是Sun工作站的核心,每年给Sun带来几十亿美元的收入。

很多重要技术的灵感来源:JAVA, Jini , JXTA。

Bill Joy定律“封神”

vi编辑器, c shell , BSD Unix, TCP/IP协议的实现, NFS, SPARC处理器,一个人能搞定任意一样,足以在计算机的历史上刻下自己的姓名。

可是Bill Joy居然以一己之力创造了这么多的东西,让我们叹为观止。可是他想要“封神”, 还差一样东西:以他的名字命名的定律,或者法则。

这难不住Bill Joy, 以他的名字命名的有两个定律:

Bill Joy 定律1 :

从1984年起,计算机的峰值计算速度,每年翻一倍。

Bill Joy 定律2 :

不管你是谁,大多数绝顶聪明的人总是在为另外一个人或者组织工作。



Tags:程序员   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
一般电脑图标都是默认的,但有没有发现有些电脑图标左下角会带有小箭头,看起来有点碍眼,而且这个小箭头并没有什么特别作用,那么如果你电脑出现这些小箭头想不想去除呢?很多网友会...【详细内容】
2021-09-06  Tags: 程序员  点击:(68)  评论:(0)  加入收藏
▌简易百科推荐
我 2010 年开始在 Github 上开源自己的代码。在 push 代码之前我根本没想过为什么。只是因为我当时学了 git,而且我又觉得 Github 很方便,可以用来备份自己的代码。而后我就参...【详细内容】
2021-12-28  程序员的喵    Tags:Github   点击:(2)  评论:(0)  加入收藏
JAVA开发工程师(北京)本科 3-5年经验 面议 (招1人)岗位职责:1.负责我行应用系统的设计,完成软件编码工作,负责管理代码设计规范等工作;2.根据应用需求分析说明书,评估需求研发的可行...【详细内容】
2021-12-27  just do丶IT公众号    Tags:国企   点击:(2)  评论:(0)  加入收藏
今天聊聊编程的本质。程序就是数据结构+控制+逻辑,程序员编程工作的本质是翻译,翻译机要来了,程序员怎么办?黑客帝国中的程序黑客帝国4就要上映了,不知道前三部你看懂了么?值得多...【详细内容】
2021-12-17  博士聊IT    Tags:程序员   点击:(9)  评论:(0)  加入收藏
梦醒之后,每个人对于这份职业的未来、互联网行业的未来,以及更重要的,自己的未来都有了更现实的判断 文 | 祝颖丽编辑 | 黄俊杰一个生于 1986 年的人,他所走过的前半生:从出生起,...【详细内容】
2021-12-03    财经杂志  Tags:程序员   点击:(16)  评论:(0)  加入收藏
前些天在头条看到一个八二年的哥们,述说自己找工作屡次被拒的问题,在网上引起了广泛的讨论,这件事给我留下了很深的印象,因为这哥们和我同是程序员,都人到中年,上有老下有小。唯一...【详细内容】
2021-12-01  云南贤哥在深圳    Tags:程序员   点击:(20)  评论:(0)  加入收藏
很多读者都问过一个问题:程序员如何实现高速成长?之前也写过相关的文章,强调的主要是夯实计算机体系基础知识。 再说另一个诀窍:多看经典开源项目,这些项目大多是众多顶尖程序员...【详细内容】
2021-11-30  findyi    Tags:程序员   点击:(15)  评论:(0)  加入收藏
近日,一位45岁的网民在中国政府网留言求职,引发关注。该网民自称是一名软件开发人员,今年45岁,精通各种技术体系,“而我辞职回家半年后再回来寻找工作机会的时候,却发现连个面试...【详细内容】
2021-11-17  郭主任    Tags:程序员   点击:(42)  评论:(0)  加入收藏
即使在安全技术取得进步之后,网络犯罪仍在不断增加。据统计,网络犯罪每分钟给企业造成约 290 万美元的损失。主要是因为新技术不断涌现,难以维护安全。随着网络威胁的增加,网络...【详细内容】
2021-11-04  章大千    Tags:编程语言   点击:(40)  评论:(0)  加入收藏
北漂小伙李强(化名),在北京互联网大厂工作7年,月薪3万,离职回老家开摄影店,亏了200万。李强出生于山西一座名不经传的小城市,互联网专业大学毕业的他,没有听父母的劝言回到家乡考公...【详细内容】
2021-10-29  霸王课  今日头条  Tags:程序员   点击:(53)  评论:(0)  加入收藏
程序员是青春饭,这在国内似乎是公认的。所以很多公司不愿招大龄程序员,很多程序员也“知趣”地及早转型。有的做管理,有的做架构,我还见过改行卖保险的。总之,年龄大了不想敲代码...【详细内容】
2021-10-27  编程的艺术    Tags:   点击:(30)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条