p这一段主要讲了黑客文化的起源和UNIX的兴起。一个新概念“真程序员”,这个称呼是从上世纪80年代以后出现的,自1945年以来,计算机技术吸引了世界上最睿智和最有创意的人,从Eckert和Mauchly发明的第一台ENIAC开始,就有一批编程爱好者,伴随着一种他们自己能意识到的技术文化,他们编软件和玩软件只是出于乐趣。
一些在“真程序员”文化下成长起来的黑客,直到上世纪90年代都仍然很活跃。Cray系列超级计算机的设计者SeymourCray就是其中的佼佼者,据说他将他自己设计的整个操作系统以八进制形式导入他设计的计算机之中,并且没有任何错误,可谓大师级的神作。
我们今天所了解的黑客文化,其起源时间大致可定位于1961年。“黑客”一词大约就起源于MIT的计算机文化。技术模型铁路俱乐部的黑客们,大都成为MIT人工智能实验室的核心成员,直到上世纪80年代早期,该实验室在AI领域的研究都一直处于领先地位,1969年后,他们的影响逐渐扩展开来,因为在那年,APRAnet诞生了。(第一个横贯美国大陆的高速计算机网络)
APRAnet从一个由国防部出资兴建的实验性数字通信系统,逐渐成长为一个连接大学、国防部承包商及研究实验室等数百个节点的大网,使得位于各地的研究者能够以前所未有的速度和灵活性交换信息,这极大地促进了合作交流,推动了科学技术的突飞猛进。
黑客文化的第一批产物——第一个俚语列表、第一篇讽刺作品、第一次有意识地对黑客道德的讨论——开始在ARPAnet上传播开来,尤其是1973年到1975年间通过网络合作完成的第一版“黑客行话”。
这本俚语字典成为黑客文化的一个定义性文档,并最终在1983年出版为《黑客字典》(TheHacker'sDictionary)。现在第一版已经停印了,其修订版和增补版是《新黑客字典》
作者就是通过早期的ARPAnet和科幻迷圈子,从1977年开始接触黑客文化的,并且见证和参与了这些黑客文化的诸多变迁。
上溯至ARPAnet还远未普及的1969年,APRAnet刚刚诞生,而贝尔实验室的黑客KenThompson,也正在这年发明了UNIX。Thompson参与了分时操作系统Multics的开发工作,Multics和ITS有着共同的渊源,它是一个验证一些重要观念的试验床,这些观念的着重点在于如何将操作系统的复杂性隐藏在系统内部,不仅让用户看不到,甚至让大多数程序员都看不到。
贝尔实验室另一名黑客丹尼斯为还处于雏形阶段的UNIX发明了一种新的语言:C语言。和UNIX一样,C被设计为好用、限制少和灵活方便的语言,很快,这些工具在贝尔实验室流行起来了,1971年,Thompson和Ritchie赢得了开发一个内部系统(类似我们现在所说的办公自动化系统)的投标,更大地刺激了UNIX和C的内部传播,而Thompson和Ritchie的雄心远不止于此。
操作系统在传统上都是用汇编语言精心编写的,目的是充分利用机器的效能。Thompson和Ritchie是最早意识到当时硬件和编译技术都已经好到能让整个操作系统用C语言编写的那批人之一。到1978年,整个UNIX环境已经可以成功地被移植到多种不同型号的机器上了。
这是史无前例和影响巨大的。如果UNIX能够在多种不同型号的机器上提供相同的人机界面和相同的功能,它就能成为一个通用的软件环境。机器更新换代时,用户就可以不再购买那些为新机器而重新编写的软件,黑客们则可以在不同机器上使用相同的工具,而不是每次都去做类似发明轮子和钻燧取火的事。
除了可移植性,UNIX和C还有其他的重要优势,它们都是KISS(KeepItSimple,Stupid)哲学下的产物。程序员可以很容易地在脑海中记忆并掌握整个C语言的逻辑结构(这可不同于之前或之后的大多数语言),而不需要去频繁地查看手册。而UNIX则拥有一系列灵活方便的工具程序,每个工具都被设计为可与其他工具组合运用,以方便地实现特定目的。
UNIX和C的组合,很快被证明适用于极为广泛的计算作业,其中很多完全超出设计者的预期。虽然缺乏正式的支持和推广,它仍然在AT&T内部迅速传播开来。到1980年,它已经扩散蔓延到很多大学和研究机构,而数以千计的黑客们则开始考虑在家里使用它了。
除此之外,另外一股势力也开始成长,第一台个人电脑在1975年开始进入市场,苹果公司于1977年成立,技术变革在随后几年以令人难以想象的速度发展,微型计算机的发展势头越来越清晰,并吸引着新一代聪明的年轻人,他们的语言是BASIC,这种语言是如此简陋,以至于PDP-10信徒和UNIX爱好者都认为这简直不值得去蔑视。