预览模式: 普通 | 列表

昔日不再

1980年,发生了很多大事。三股文化在边缘交迭却依旧固守着迥异的技术阵线。ARPAnet/PDP-10文化与LISPMACRO TOPS-10 ITS 以及SAIL联姻; UnixC语言的用户群则使用PDP-11VAXen,并通过单薄的电话线彼此相通;而由早期微电脑迷组成的无政府部落则致力于让电脑科技平民化。

三者之中,ITS仍旧盘踞在首要地位。但是暴雨前的乌云逐渐笼罩了实验室(指麻省理工学院——译者按)。ITS赖以为生的PDP-10科技已然日薄西山,为了首次的人工智能商业化尝试,实验室内部也分裂成了若干小团体。实验室的主将挡不住新公司的高薪挖角,纷纷出走(斯坦福大学人工智能实验室和卡内基梅隆大学实验室也遭遇了同样的问题)。

致命一击终于来临了,1983DEC公司宣布,为了主攻PDP-11VAX系列产品,将终止PDP-10的后续机型研发项目——“木星”项目。

[阅读全文]

中秋月明人团圆


海上生明月,天涯共此时。
情人怨遥夜,竟夕起相思。
灭烛怜光满,披衣觉露滋。
不堪盈手赠,还寝梦佳期。
——张九龄《望月怀远》

 

又是一年佳节,又是一年月圆……

千年明月,万家团聚!

这里向我所有的朋友、亲人致以最诚挚的祝福!

 

少年不识愁滋味,爱上层楼,爱上层楼,为赋新词强说愁。

而今识尽愁滋味,欲说还休,欲说还休,却道天凉好个秋。

——辛弃疾《丑奴儿》

 

又是一年秋风~

标签: 闲谈

Unix兴起

1969年,在ARPAnet光辉照耀不到的新泽西郊外,正有人在酝酿着什么,最终PDP-10的传统也将为此颠覆。ARPAnet诞生的那一年,贝尔实验室的黑客肯·汤普森Ken Thompson)发明了Unix

汤普森曾经参与了Multics的研发,这是一个与ITS拥有共同先祖[1]的分时操作系统。Multics可以说是一个试验台,通过它,人们尝试是否可以将复杂的操作系统(甚至是绝大部分程序)隐藏起来,不让用户直接接触。这样就能从外部简单的操控(甚至是编辑)Multics,这可谓是质的突破。[2]

Multics变得臃肿并最终成为一个累赘的时候,贝尔实验室退出了(稍后,这个系统被霍尼韦尔公司推向了市场,但是没能成功)。在失去Multics作业环境之后,肯·汤普森找来了一台闲置的DEC PDP-7型计算机,打算在这上面将Multics的理念和自己的创想合二为一。

另一位叫

[阅读全文]

早期的黑客

黑客文化的起源可以追溯到1961年,那一年麻省理工学院(MIT)终于得到了第一台PDP-1计算机。学院技术模型铁路俱乐部Tech Model Railroad ClubTMRC) 的信号动力委员会Signals and Power CommitteeS&P)把它作为最时髦的科技玩具,并由此产生了许多程序设计工具、术语、和整个文化氛围——这些,直到今日我们仍然依稀可辨。史蒂文·利维Steven Levy)在《黑客》(Hackers)的第一部分中详细的记录了这段岁月。

“黑客”这个词汇最早出现在麻省理工学院的计算机文化中。TMRC中的黑客,日后成为了MIT人工智能实验室的核心成员,而该实验室直到80年代早期都一直主导着全世界的人工智能研究。从ARPAnet诞生的第一年,1969年开始,他们的影响力便不断的扩大。

ARPAnet

[阅读全文]

序言:真正的程序师

最初,这里有一群真正的程序师。

他们从不以此自称,也不曾用“黑客”或其他特殊的字眼。据一位“真正的程序师”回忆,这个说法是1980年后才出现的。但是从1945年开始,计算机科技便不断吸引着这世界上无数最睿智和最具创造力的头脑。自从艾克特Eckert莫齐利Mauchly)发明第一台ENIAC计算机之后,便不断有狂热的程序师投身其中,他们以编写程序、探索技巧为乐。一点一滴的积累起了一种具有自我意识的科技文化。

这批“真正的程序师”通常都有工程学和物理学背景,作为业余无线电玩家,他们称得上嗜痂成癖。厚厚的眼镜,白白的袜子,涤纶衬衫,再配上一条领带;用机器语言、汇编程序、FORTRAN和一堆“远古级”的语言编程。

从二战末到70年代早期,在这批处理和“铁块”大型机的黄金岁月里,“真正的程序师”是计算机科技文化的主宰。一些令人敬畏的黑客传说,就源自这一时期。这其中就包括诸多版本的“墨菲法则”

[阅读全文]

致谢

本文的改进得益于众多朋友与我交流并提出意见。特别要感谢Jeff Dutky <dutky@wam.umd.edu>, 他提出了“调试可平行展开”的观点,并帮我完成了其后的分析。同样要感谢Nancy Lebovitz <nancyl@universe.digex.net>,她建议我效法温伯格引述克鲁泡特金。来自General Technics邮件列表的Joan Eslinger <wombat@kilimanjaro.engr.sgi.com>Marty Franz <marty@net-link.net>提供了关于可读性的批评。Glen Vandenburg <glv@vanderburg.org>指出了贡献人群自我选择的重要性,并对改进“冗余设计”做出了富有成效的探索。Daniel Upper <

[阅读全文]

参考书目

我多次引用了弗雷德里克·P·布鲁克斯的经典著作《人月神话》(The Mythical Man-Month),在许多层面,他的观察至今还是颇具洞见的。我衷心的推荐其1986年刊发的包含《没有银弹》(No Silver Bullet25周年纪念版。

Assison-Wesley社,ISBN 0-201-83595-9 (中文版:清华大学出版社,2002 ISBN 978-7-302-05932-5

这个新版本还包含一份非常珍贵的回顾,一份布鲁克斯20年后对文中少数几个没能经得住时间考验的论点的回顾。在本文第一版几近完工的时候,我首次读到了这篇回顾,并惊讶的发现布鲁克斯把市集模式归功于微软!(事实证明这显然是不正确的,1998年我们通过“万圣节文件”获知,微软内部开发团体朋党林立,不可能存在市集模式所必须的全面代码共享)

杰拉尔德·温伯格

[阅读全文]

后记:网景投身市集

与历史同行,是一种奇妙的感觉……

1998122,大约在我的《大教堂与市集》初版七个月后,网景通讯公司宣布了开放网景浏览器源代码的计划,事前我一无所知。

不久之后,网景的副执行总裁兼首席技术官埃里克·哈恩Eric Hahn)给我发来了一封电邮:“首先,我要代表网景的全体同仁,感谢你指引我们走到了这一步。你的思想和著述给了这个决定至关重要的启迪。”

接下来的一周,我应网景之邀飞抵矽谷。和他们高管以及技术人员共同参与了一个为期一天(199824)的战略会议。会上,我们决定了网景的源代码释放计划和许可证相关事宜。

几天后我写到:

网景正打算在商业世界里给我们提供一场大规模的、真正全球化的市集尝试。开源文化正在面临考验:如果网景此举失败,开源文化就会信誉扫地,商业世界在未来十年里都会对其不屑一顾。

另一方面,这也是个绝佳的机会。华尔街和其他地方对此举最初报以谨慎的肯定。我们也赢取了一个证明自己的机会。如果网景能借此重夺市场份额,或许会引发软件业一场等待许久的革命。

[阅读全文]

十二 关于管理和马其诺防线

1997年最初的《大教堂与市集》以这样的预见收束——程序员/无政府主义者快乐的网络部族,战胜并压倒了等级森严的传统闭源世界。

然而,许多人对此持怀疑态度,他们提出的问题应该得到中正的回应。多数对市集模式的异议可以归结为以下观点:开源支持者们低估了传统管理对生产力的提升作用。

传统思维的软件开发经理经常会指责开源项目组的创建-变动-解散太随意了。这种随意性大大抵消了(对于单个闭源开发者来说)开源社区在人数上的优势。他们会指出软件开发取决于长时间的持续投入,和预期的消费者持续购买程度。而不只是取决于有多少人往锅里扔骨头,然后等着它炖熟。

无可否认,这些论调有一定道理。其实我早就在《魔法大锅炉》(The Magic Cauldron)一文中预计增值服务将会是未来软件业的经济命脉。

但是这个论调却回避了一个重要的问题,它暗自假设开源开发不能提供持续的投入。事实上,有些开源项目已经在相当长的周期里保持了一致的发展方向和有效的维护社区,而不需要传统管理中必不可少的激励模式和制度约束。

[阅读全文]

十一 开源的社会语境

这句话一语中的:好的软件都是源自解决开发者的切身之痛,推而广之则是因为很多人也面临着相同的困扰。这将我们带回了“格言1”,或许换个角度重申能让其更具效用:

 

18.要解决有趣的问题?那就先找到你感兴趣的吧!

To solve an interesting problem, start by finding a problem that is interesting to you.

 

卡尔·哈里斯先前的popclinet如此,我的fetchmail也是如此。这个观点已经久为人知。而更有趣(Linuxfetchmail历史中更值得我们关注的)的话题则是出现在下一阶段——由用户和协作开发者组成的庞大的活跃社区,推动了软件的演进。

《人月神话》中,布鲁克斯指出程序员的编程时间不能简单叠加。为已经延期的项目增派人手会让它拖地更久。像我们之前提到的,他指出:项目的复杂度和沟通成本会以开发者人数为基础呈平方指数增长,而业绩仅能直线上升。

[阅读全文]