一年前A & G trends的
第一篇谈论了作为黑客今天所面临的世界环境,A &G trends第二篇则侧重于讨论黑客的生命的问题。本文章已经在
DNFWAH Issue 2上发布。
sth0R@frolsak]$ MRJ
Requiescat in pace!
______________________________
|-----------------------------------|
|---Author: Shawn the R0ck----|
|---Date: Dec 31st, 2011---------|
|---Location: Chengdu,China--|
|----------------------------------|
|----------------------------------|
--[ Contents
0. Introduction
1. The 3rd Apple
1.1 The creator of *prison*
2. Trinity model of Hacker's life
2.1 The King of Simplicity
2.2 (* (*) (*) )
2.2 The evanglist of freedom
2.3 Witness of Hacker ethics
3. They are all great hackers
3.1 But we all going to die
4. Eternality VS Temporality
--[ 0. Intro
如果把1946年2月ENIAC的诞生算作计算机科学正式进入工程领域,整个计算机领域的发展至今也不到70年,对于一个影响人类的分支科学已经算是非常的年轻;如果把1958年Lisp语言的出现看作是Lambda演算正式以形式化的方式进入计算机语言领域,至今也不到60年;如果把1969年到1973年出现的C语言和UNIX操作系统的诞生算作大型软件开发工程化的开始,至今40年左右;如果把1977年的Apple II个人电脑算作个人计算机的开始,至今也就34年;如果把1983年GNU项目算作黑客伦理通过自由软件这个载体开始向非计算机领域的渗透,至今也才28年;如果把1992年的Wolfenstein 3D算作现代3D游戏的开始,至今不到20年.
通过上面的一些"如果"式的技术进化的时间表,或许我们只能感叹进化的速度是越来越快了,但在信息井喷的今天,彻底影响我们生活方式却是少数人的哲学观决定的,今天Shawn不会过多的谈关于业界进化的历史,今天让我们把精力注视在几位伟大的黑客的生命上,正因为他们"正常"的人生哲学才会有今天的这篇文章,今天有一些早期的黑客已经离开了物质世界,他们去了哪里并不重要,重要的是他们经历了作为完备黑客的生命,他们用自己的生命诠释了黑客伦理.
--[ 1. 第三个苹果
世界上有三个著名的苹果,魔鬼使用第一个苹果在伊甸园诱惑了夏娃,从那时起,人类就和罪性捆绑在一起.第二个苹果砸醒了17世纪伟大的科学家,神学家(不要忘记但以理书的注释)Issac Newton(牛顿),从此人类对知识的饥渴是显而易见的.第三个苹果被Steve Jobs啃了一口后改变了世界,Apple公司成为了这个时代性背景下的代表.
2011年10月5日,第三苹果的缔造者Steve Jobs离开了物质世界,作为hacker而言,他去哪里不重要,重要的是他走完了作为伟大黑客的完备人生.Jobs的离开让这个星球上无数的人都感到叹息,人们都因为他的离开默哀.今天APPLE的ipod, iMac,iPhone, iPad, iTunes, iCloud改变了很多人的生活甚至是生命,就连Shawn认识的一些以前从未认识Jobs的中老年人因为读了Jobs经历而开始尝试使用Apple的产品,可见Steve的个人魅力!世界的态度是悼念这一位离我们而去的伟人.
一位教会的牧师讲道中谈到"Steve Jobs是一个一生赶着去死的人!“以此来让信徒们思考永恒性,Shawn则认为"一个一生赶着去死的人"对世界的影响都如此之大那整天都谈"永生"的宗教份子大多都在打着上帝的旗帜干着完全违背圣经总原则之事,和笛卡尔同时代的数学家,哲学家---Blaise Pascal曾经讲过:"Men never do evil so completely and cheerfully as when they do it from religious conviction.(人们只有打着宗教的旗号才会做出如此彻底的邪恶之事而还感到愉快)".
----[ 1.1 "监狱"的缔造者 &^` Steve Jobs
世界对待Jobs的态度是时代性式考量,而教会则是永恒性式的辩驳.这都不是强两希社区的态度,当然他们也不可能傻到站出来讲出事实的真相,这也不是Shawn讨论的题目.Shawn只是想从Hacker的视角来看待Steve Jobs.
1976年,Steve Jobs和Steve Wozniak在车库里进行着他们认为有趣的hacking,这个有趣的hacking就是后来的APPLE系列个人电脑,这个阶段两位Steve进行着没日没夜的hacking,对技术狂热的追求和对未知世界的无限向往,这个阶段的Jobs是典型old school黑客的代表,当Apple发展壮大后由于诸多原因Jobs离开了公司,多年后又重回Apple这是大家都知道的,之后在Jobs的带领下创造了苹果奇迹,SteveJobs从一个old school黑客范式转移到了打包成new school风格的产品最终推向大众市场,在这个过程中不得不提的是BSD操作系统,后来苹果的产品的稳定性几乎是由BSD所带来的,但由于BSD许可证不注重公众自由的结果直接导致了APPLE在利益的诱导下开发出了完全封闭的工具链和应用软件,这个所导致的直接后过就是大
胡子所讲[]的"他建造了一个牢笼,用很酷的设计将傻瓜们与自由隔开".但不可否认凡是old school技术必须要转换成为new school的风格才会被大众所接受,Microsoft的Bill Gates也是这样的例子,即使世界上很难找出几个像Bill这样以程序设计语言起家的公司但他还是成功了,不是吗?这或许就是Martin Buber所
言的"在最世俗的世界中去实现那最神圣的远景.".但这里存在一个问题:如果你来自强两希的四大社区,无论你选择old or new都没有太大关系,因为你所在的社区有很多hacker同时具备old and new两种范式的能力,比如一个做android app的年轻人如果想要学习OS或者compiler等old school的哲学和技术会很快找到导师,而如果你成长于亚洲则没有那么幸运了.作为old school hacker,Shawn更欣赏在车库的那个Jobs而非今天的"乔帮主".
当大胡子讲出了对那段对Jobs的离开的评论[1]时很多人愤怒了,很多人不理解,需要注意的是我们所生活的这个星球以及一切在这个星球上的事物,包括人类,自然界,经济系统,etc...都是复杂系统,我们不可能以"非黑即白"的方式来评判周围发生的事情,但事实就是事实,Steve Jobs的确建造了一个看起来很酷的"监狱",这个监狱就是整个Apple公司的产品线,这个监狱让世界上绝大多数人在没有搞明白何
为"数字时代的自由"就已经让你变成了一个傻瓜,给自由的下定义是困难的,这里罗列一段6年前Shawn与哲学入门导师xXx的对话:
xXx: what is freedom?(什么是自由)
Shawn: It's able to do what you want to do.(自由就是相干什么就干什么)
xXx: No, freedom is able to do what you "should" to do.(不是,自由是你去做应该做的事情)
而"应该"的定义取决于您的哲学观,大胡子也强调"Your future is depend on your philosophy",这个"应该"的哲学是通过个体生命的hacking所产生的...&^*...Shawn没有能力让你改变你的想法,不管你所处在什么领域,你都应该尽可能的去思考这个领域的本质,这也是黑客伦理所认为是真理的方式,最近一位年轻的女性跟Shawn讲:"看了Food, Inc[2]让我更能理解RMS对Jobs的评论."
--[ 2. 伟大的黑客---(+ 哲学家,科学家,工程师) && (* 程序员 工程师 黑客)
何为伟大的黑客?非得精确的定义实在是很困难,但这并不代表我们不可以尝试从不同的方面来理解黑客.从<黑客伦理与信息时代精神>中Pekka给出的材料来看黑客应该属于对未知世界抱有强烈探索欲望的人类,所以黑客几乎涵盖了古代到今天的哲学家,科学家和工程师.轴心时代(Axial Era)开始了世界各地相继出现哲学思辩,犹太民族经历了痛苦的先知时代和怀疑的拉比时代;古希腊的哲学经历了早期的七圣时代,中期的苏格拉底,柏拉图,亚里士多德的全盛时期和后期的Epicurus(伊壁鸠鲁), Stoicism(斯多噶派)和怀疑论;中国先秦哲学出现了注重形而上的老子,中庸的孔子和"借术寻道"的墨子;古印度的原始佛教的佛陀.从广义上讲,他们都是黑客.随着哲学思辩的深入,特别是在希伯来的信仰和希腊的哲学产生了碰撞后,人们先是继续着神学和哲学的探讨,后来则逐渐经过了神哲学的研究和生命体验后进入了一个以建立数学模型进行科学研究的时代,这个时代是由伽利略和牛顿开创的,有了数学模型的哲学家和科学家就开始近一步的尝试把科学的研究成果工程化,他们很多人同时扮演着哲学家,科学家和工程师的多重角色,把
Why+What+How-to整合到了一起,从而实现了某种程度上的把"神圣的远景实现到世俗的世界中"的目的.
我们中的哲学家也谈到了关于黑客生命的三位一体模型:即Programmer(程序员),Engineer(工程师),Hacker(黑客).Programmer是只关注技术点,作为Programmer任何的新idea都打算自己来实现,性能+代码风格+美学则是Programmer最关注的统一;而Engineer则是更注重整体架构,Engineer会考虑哪些
技术点需要亲自实现(扮演Programmer的角色),而哪些模块是用自由软件或者使用自由软件的代码同时会进行优化,如果说Programmer是站在还原论(Reductionism)的视角,那Engineer则是站在整体论(Wholism)的视角来看待同一个事物;而在前两者的过程中都抱着一种黑客的态度去hacking,这里指的hacker attitude不仅仅是代表您读完了那本<黑客伦理与信息时代精神>[3]后而知道的知识,是
否对于你的生命和hacking领域的wired-in是更重要的方面.三者的合一就是完美hacker的生命!接下来我们会试着讨论几位比Steve Jobs更长久影响old school社区的黑客的生命.
----[ 2.1 KISS的胜利 =-= Dennis MacAlistair Ritchie
1941年9月9日,一位日后改变世界的黑客出生于美国纽约的撒克逊社区.DMR在哈佛大学学习物理学和应用数学毕业,1967年他进入贝尔实验室,生前是朗讯技术公司系统软件研究部门的领导人.1983年他与Ken Thompson一起获得了图灵奖,理由是他们"研究发展了通用的操作系统理论,尤其是实现了UNIX操作系统".1999年两人为发展C语言和Unix操作系统一起获得了美国国家技术奖章.C语言和UNIX操作系统
对世界的影响是很难估量的,从系统软件的层面上看几乎所有的现代操作系统都是用C语言实现的,比如BSD操作系统,GNU/Linux操作系统,Mac OSX系统,即使是Windows操作系统都是使用C语言实现的,最近10年嵌入式的发展突飞猛进,C语言则是嵌入式平台下使用频率最高的语言之一,在最核心和关键的模块必定是用C语言实现的,C语言对机器底层的抽象非常简洁,即使遇到汇编的使用场合old school黑客也可以通过诸如gcc内嵌GNU汇编的形式来实现,C语言是沿着Alan Turning的范式来看待了计算的本质,这和下面Shawn将介绍的Lisp语言刚好相反,Lisp是沿着Alozon Church的范式,从哲学上讲,本体都是一个,采用的方法论的不同导致知识论的差异化;UNIX则在设计哲学上影响了所有unix-like的OS的设计与实
现.KISS(Keep it simple, stupid)哲学影响了整个old school社区的黑客们,就正如DMR那句经典的描述:"UNIX is very simple, it just needs a genius to understand its simplicity."(UNIX是非常简单的,但需要天才来明白它的简洁性).
2011年10月12日,DMR离开了物质世界[4],Shawn应该会在未来见到他的!
----[ 2.2 (* (*) (*) ) John McCarthy
1927年9月4日,JMC出生于波士顿的一个东欧犹太移民家庭,他很早就表现出了数学方面的天赋,青少年时期开始自学加州理工的大学数学教科书,使他能在进入加州理工学习时跳过前两年的数学学习.他于1951年在普林斯顿大学获得数学博士学位,是John Nash的同学.1955年,他提出了人工智能概念.1956年JMC组织了10名当时的顶级黑客(包括AI大师Marvin Minsky,信息论的Claude Shannon,Herbert Simon,Allen Newell)在Dartmouth进行了为期2个月的研讨会,此次会议上“AI”这个名词诞生了,JMC也成为了早期犹太科技兄弟会的发起人之一.
JMC相信人工智能需要交互.1958年,他发明了最早的高级语言之一Lisp,Lisp也是世界上第二古老的计算机高级语言,Lisp自从诞生之日就成为了AI研究最流行的语言,一直持续到1980年代的符号主义浪潮后才有其他计算机语言可以在AI领域和它匹敌.JMC和他的学生也因为当时很多人批评Lisp的效率没有汇编语言高而开发了分时系统;1959年的那篇名为Programs with Common Sense[5]的文章则成为了历
史上第一篇以逻辑的方法来论述AI实现和程序设计的论文,JMC把Alonzo Church的lambda演算完美的带入了Lisp,这一引入导致了至今所有的计算机语言都是基于lambda演算的形式化系统,lambda演算是个很有趣的hack而且和可计算性理论有很大的关系,据说当年AC最早发明lambda的灵感来源于一个再简单不过的数学表达式如下:
A,y=x^2+2x+1 B,y=(x+1)^2 A=B
从存在性的角度看以上正确,即A=B,但从构造性的角度观察却会出现问题,如下:
A,y=x*x+2*x+1
B,y=(x+1)*(x+1)
那么现在A!=B,所以以上的公式是有问题的,进过了很长时间的研究最终Alonzo Church发明了lambda演算.scheme中的lambda可以接受4中表达式现在轮到lambda表达式出场了:
lambda-exp ::= {constant} 常量
|{varibale} 变量
|{lambda-exp1} {lambda-exp2} 把表达式计算后传给第二个表达式
|lambda {variable} . {lambda-exp}
非常简单的四种范式就涵盖了计算机语言所需要处理的所有问题,这或许就是形式化系统的威力!JMC的贡献不仅仅在于技术本身,在犹太科技兄弟会的建设上他的影响也是不可估算的,1950年代开始的AI研讨会造就了一代又一代从硬科幻爱好者到科学家再到工程师的黑客,2011年10月24日,JMC离开了物质世界[6],他留给我们有太多的"礼物".
----[ 2.2 自由哲学的布道家 Richard Matthew Stallman
1953年3月16日,RMS出生于纽约的一个犹太家庭,他最早接触计算机是高中时在IBM的纽约科学中心,他在那年夏天受雇编写Fortran语言的数值分析程序,几个礼拜后RMS完成了这个程序之后整个夏天都在编写APL文本编辑器,在余下的高中时代RMS都在为运行在IBM System/360的PL/I语言编写预处理器.在这段时间中,RMS也是洛克菲勒大学生物系的实验室志愿者,虽然他当时的hacking正在转向到数学和物理领域,但洛克菲勒大学的教授仍然认为他会成为一名生物学家.1974年,RMS获得哈佛大学物理学士学位,之后作为研究生进入MIT人工只能实验室编写程序.1983年,由于RMS无法容忍软件版权对自由的限制正式发起了GNU计划,1984年,RMS从MIT人工智能实验室辞职,即使在经济拮据到没钱购买计算机时他仍然坚持晚上偷偷溜进实验室编写代码,RMS当时的GNU计划的目标是打造一套从操作系统到工具链(编译器,编辑器,etc)可以替代传统UNIX的平台,而这个平台则完全开放源代码给任何人,1985年的GNU宣言中谈到了自由软件运动的目的就是为了保证用户对软件二进制程序和源代码享有自由拷贝,自由阅读,自由修改和自由重新发布的权利,软件源代码的封闭就好比你想你的邻居索取一份可口食物的食谱,而你的邻居因为邪恶的版权而不能给你,这种道德困境的确是违反了"Love your neighbor as yourself(爱人如己)"的原则.
1989年,RMS和一群律师起草了GNU Public Licence从法律的层面保证了软件源代码的自由,自由软件GPL的模式如今已经从原有的软件领域渗透到开放硬件和艺术领域,产生了Creative Common(创造共享)的许可证来保证文档,音乐,电影和游戏的使用自由.今天的自由软件社区已经强大到坚不可摧的地步,GNU几乎影响到了很多领域,整个嵌入式领域几乎是以GNU toolchains(编译器gcc,调试器gdb,汇编器
as,伪装成编辑器的操作系统emacs,词法分析器flex,语法分析器bison,etc)和linux内核为基础,电视机里的软件,飞机上的控制系统,发手机短信要通过的服务器群集(这个可能solaris多一些)和你上网时产生的每一个byte经过的网络设备,etc...那些来自Apple和Google的产品的基础是那些对大众不可见的自由软件,但
自由软件至今对于大众来讲还是比较陌生的概念,不过这并不重要,正所谓"曲高和寡,去低和众".2009年,在北京和RMS有一次见面,一位朋友询问RMS关于早期遇到的困难有何感想,RMS的回答很轻松:to me, it's easy.这正是一位伟大黑客所具备的强势心理的特征-_-
从实用主义的角度看,RMS是对今天的商业公司影响最大的人,gcc和gdb几乎成为了大部分数据通讯领域和网络安全领域的必用的工具,gcc和gdb是基于GPL许可证的自由软件编译器和调试器.今天的gcc分为3个抽象层:
front-end:词法分析,语法分析,语义分析,etc传统计算机语言编译器都会涉及的部分,目前gcc前端支持的语言众多,C/C++, Fortran, Java,etc..
mid-end:将front-end分析的结果翻译成一种intermedia language,从中间语言的形态来看可以理解为lisp的brohter or a sexy/beautiful/amazing sister,至于她sexy/beautiful/amazing在什么地方,对于常常胡乱吹嘘神哲学的Shawn认为有两点:1,这种intermedia language就是lisp的改版(这不是bullshit吗) 2,GNU
compilers支持很多语言,比如c,cpp,java,fortran,etc,但在GNU compilers看来他们之间唯一的区别在于front-end,不管C还是java只要经过了front-end的处理就会形成同一中intermedia language,而做优化工作的hacker就可以直接通过hacking intermedia language来达到自己的目的.
back-end:这部分主要是把intermedia language翻译成特定CPU平台的汇编代码和最终的执行代码op-code,中端做算法上的优化,而后端则做机器特性的优化.
所以这样看来,mid-end是最sexy的,即方便了hacker们的工作(实用主义)又不失编译器的优雅(lisp),gcc虽然不是完全的标准C,但也算是"业界标准"了.linuxkernel的源代码中使用了很多gcc内嵌汇编的特性,所谓GNU/Linux本质上就说linux kernel被GNU给"绑架"了.今天大部分的嵌入式产品都是基于GNU/Linux开发的,只是很多公司并没有遵循GPL许可证,即没有对社区进行回馈,这种公司是被邪恶的贪婪所占据的.
RMS暂时没有离开物质世界,他的故事还在继续..........
----[ 2.3 黑客伦理的见证人 John Carmack
1970年8月20日出生于堪萨斯城,JC的传奇人生在Master Of DOOM(DOOM启世录)中已经有详细的描述,JC是id software的创始人,3D射击游戏之父,也是著名的DOOM和Quake系列游戏的缔造者,关于JC和id software的历史对于old school黑客都很熟悉,所以Shawn不打算在这里介绍.
JC对技术的狂热超过了很多黑客,不管对游戏引擎设计,汽车改装和火箭都抱有无限的热情,JC对黑客伦理的坚持和对专利制度的痛恨是值得我们关注的,按照id software的传统,JC会定期的把以前的游戏源代码以GPL的形式公布,这样做的目的是帮助更多的社区开发者可以更好的开发游戏,目前(2011年12月)id software已经公布了Doom 3的源代码,JC甚至在QuakeCon 2011大会上还挑战其他游戏开发者开放以前的游戏的源代码.id玩家社区不同于其他任何游戏社区,几乎所有oldschool的技术社区都可以找到id玩家,id玩家是这个星球上最具创造性的一帮黑客,他们在DOOM和Quake世界里的death match的热情同样也发挥到了其他的领域.
对于JC,Shawn不打算更多介绍,他影响黑客们的更多的是生命而不是知识.
--[ 3. 他们都是伟大的黑客
如果说"摆地摊"的Steve Jobs(黑客们更欣赏那个在车库里hacking的Jobs)改变了世界,那Dennis Ritchie就创造了世界,而John McCarthy则是沿着他的老师Alonzo Church的道路给予了后来的黑客们创造世界的可能性.RMS缔造了一个庞大的系统工程,这个工程透过技术和哲学把世界上最愿意探索事物本质的黑客联系在了一起,JC则开创了3D游戏的时代和通过id文化继续影响着更多年轻的生命.如果说今天全世界有3亿人记得Steve Jobs的话,那后面的4位黑客能被人记住的总数可能连JObs的1%都不到,这里Shawn可以给你一个预测,24年以后记住Jobs的人可能会减少50%,36年以后能记住Jobs的可能只有今天的0.1%,但记住DMR,JMC,RMS,JC的人数在未来30年都不会有太大的变化,如果从稍远一点来看,Steve Jobs的影响在整
个历史的进化史上只是昙花一现,只不过是通过一些现在看起来比较酷的new school产品来吸引大众的目光,而DMR,JMC和RMS的影响不是仅仅是在实用的层面上,而更多的是在方法论的层面上;对于JC,他那独特的黑客生命即使在黑客圈里也是罕见,一旦被他影响的家伙就像是被solanum病毒传染了一样无法停止探索新的事物直到生命的结束.
----[ 3.1 但死亡却是我们的共同点
.....................................................................
> .
> +--------+ .
> | A | .
> +------+--------+-------+
| M | E | N |
> +------------------------+
> | |
> | |
> | |
> | |
| |
+--------+
--[ 4. 永恒性 Vs 时代性
Shawn一直在强调这个时代性的背景是科技,没有弄清楚时代精神的结果只能是被财团系统所奴役,这个世界的变化如次的快,昨天的enemy变成了今天的bitch,昨天的哲学成为了今天的技术,昨天的科学成为了今天的工程,昨天的old school变成为了今天的new school,在这种极具变化的过程中作为hacker的态度应该是什么样呢?
Keep hacking!这里Shawn列举两段强两希社区关于面对时代性变化的回答:
1, KK在What Technology Wants中引用了犹太教拉比Zalman Schachter-Shalomi的话:"There is more good than evil in the world--but not by much.(这个世界上善比恶要多一些,但多不了多少.)" --- 以此来说明我们拥抱新的技术是唯一的选择.
2, 希伯来旧约圣经以赛亚书43∶18-19: 耶 和 華 如 此 說,你們不要記念從前的事,也不要思想古時的事.看哪,我要作一件新事,如今要發現,你們豈不知道麼,我必在曠野開道路,在沙漠開江河.
如果以技术进化的轨迹来看,永恒性代表总原则,在总原则的引导下,在特定的时间刻度里具体实施阶段中的某个过程称为时代性,也就是说时代性是永恒性旨意的一个片段,要搞懂时代性就必须去永恒性那里寻找答案,世界各大宗教(包括启示宗教---犹太教,基督教,伊斯兰教)都在探讨关乎"永恒"的话题,从理性层面上看,能否验证永恒性原则带出的方法论是否是真理取决于时代性的背景的方法论.这个题目需要太多的时间去探讨,即使是face to face的philosophical conversation,Shawn也没有能力完全谈论清楚这个问题.
何为黑客的生命?一名黑客势必是非常清晰自己的人生意义,也就是说黑客知道为什么活着,一名真正的黑客的生命力甚至可以震撼哪些已经麻木的人,Shawn就是这么一名曾经"麻木"的人,在那些伟大的黑客的强有力的哲学观和生命力面前而表现的视而不见是可耻的行为.希望更多的中国年轻人能思考几个问题:
1,你的人生意义?
2,时代性的背景?
3,你的人生和这个时代有什么联系?
一旦你开始思考这3个问题,你找到黑客伦理只是时间的问题!
愿上帝赐福中国的年轻人!
May L0rd's hacking spirit guide us!!!
[1] 大胡子关于Steve Jobs离开的评论
http://solidot.org/articles/11/10/08/0610247.shtml
[2] Food Inc
http://movie.douban.com/subject/3564499/
[3] 黑客伦理与信息时代精神
http://book.douban.com/subject/1071093/
[4] DMR离开世界
http://developers.solidot.org/article.pl?sid=11/10/13/0236246
[5] Programs with Common Sense
http://www-formal.stanford.edu/jmc/mcc59.html
[6] JMC离开世界
http://developers.solidot.org/article.pl?sid=11/10/25/019206&threshold=-1