当前位置:Linux教程 - Linux文化 - 《编程之禅》(转载) 火

《编程之禅》(转载) 火


声明:
本文内容来自《编程之道》一书, 小赵只负责录入. 所有版权归该书的出版社。本文由原来的三册书组成:《编程之道》 《编程之禅》《计算机时代的寓言》


目录

前言

引言
第一篇 木
第二篇 火
第三篇 土
第四篇 金
第五篇 水


第二篇 火

大师:行者
媒体:民间故事
硬件:显示器
方向:南
软件:格式化程序
感觉:视觉
阶段:设计
动物:凤凰
系统:CP-6

编程大师行者收集了各种各样有关开发刺目的民间故事。最近的计算机考古研究显示,下面的这些民间故事是以历史事实为基础的。虽然一部分夸张的成分可能会无意中被添加进去,但其历史真相的核心内容依然存在。

当一位项目经理为他的软件项目配备人员时,他会在一天内雇佣三百名程序员。一位获得计算机科学博士学位的学者前来求职,他被给予了一个薪水很高的职位。

一天,那位项目经理被解职了。“我认为,每个人都应清楚自己的职责和履行自己的职责。”新来的项目经理在检阅他的程序员队伍时如此说道。听到这话,那位学者悄悄地溜走了。

两位程序员正在急诊有关用户界面的问题。

“在‘使用起来简单轻松’方面,许多意义重大的革新正在进行当中,”第一位程序员说,“不久以后,人们在使用电脑之前将不再需要阅读那些冗长乏味的用户手册了。程序都将是不言自明的。”

第二位程序员想了一会儿,然后说:“上个星期我准备劈些木柴烧火,但我的斧子又旧又钝。于是,我去五金店买了把新的。”

“这挺有趣儿,”第一位程序员说,“但这和用户界面有什么关系呢?”

“这把新斧子附带有一本长达八页的使用说明书。”他回答说。

一次有一位第三者问一名工程师、一名数学家、一名物理和一名程序员:“一只盒子有几个面?”

工程师首先回答。“一只盒子有四个面。”他说。

“此话怎讲?”智者问。

“四个垂直的面就是我所说的面,它们被一顶一底连接在一起。”工程师回答。

“太荒唐了,”数学家评论道,“一只盒子有六个面。”

“此话怎讲?”智者问。

“盒子是一个立方体,因此有六个面。”,数学家回答。

“不对,”物理学家说,“一只盒子有十二个面。”

“此话怎讲?”智者问。

“严格说来,有六个外部的面和六个内部的面。”物理学家回答。

智者看着一声未吭的程序员。“你的意见呢?”智者问。

“一只盒子只有两个面。”程序员说。

听了这话,工程师、数学家和物理学家大笑起来。

“此话怎讲--一只盒子只有两个面?”笑声停住后智者问道。

“这是基于个人经验,”程序员说,“那‘里面’是安置电路板的地方,而‘外面’是放显示器的地方。”

“正是如此。”智者说。

一位新上任的董事正在召开与程序员们的见面会。

在宴会进行当中,一位程序员背诵起了如下的演说--“我们一直都在期盼着你的到来,您的前任根本没有您这种高贵的能力。现在你来了,我们会变得真正具有生产力。”

这位新董事被奉承的喜形于色,“这演说词是你自己写的吗?”他问。

“这是我们开发中心的惯例,”那位程序员说,“无论哪位新董事到任的时侯,我们都要发表那段演说,这是我所知道的唯一的一段演说词。”

一天,开发中心的一位程序员发现了一套可以生成迷宫图案的算法系统。他非常勤奋地对这套算法进行了修改,这样可以让它在长长的打印纸带上生成一个不间断的迷宫。

不久,他制做了一个有几百万条分贫的迷宫,四十英尺长,七英尺宽。他把打印纸带挂在了程序员办公室门口长长的过道上,不一会儿,所有编程人员都挤在了那个迷宫前,试图解决这个庞大的难题。

开发中心的主任恰巧从旁边经过,他惊愕地盯着这场景,面色阴沉。但当他走进编程大师的办公室想寻求帮助时,大师早已不在那儿了。

五名初学者哭着走进了大师的办公室,“呜,呜!听说我们的项目可能要被取消了。”

大师说:“所有事情照常继续,直到它们停止。”

听了这话,那些初学者便返回各自的工作中去了。

一天,开发中心接到消息,一位新主任将被任命来负责这里,他是位军机大臣,对电脑知之甚少。

程序员们听到这条消息都非常吃惊,纷纷停止了编程,把许多时间都浪费在揣摩那即将到来的不幸的日子。

看到这些,一位大师决定必须得做点什么。于是,他借来了一套装扮大猩猩的服装。

不久,那位大臣就职了,他把所有的经理召集到一间小会议室,随行而来的是几位总部的公司行政官,据说,他们是来使开发中心“平稳过渡”的。

突然,那位大师穿着装扮大猩猩的服装破门而入。他蹦上会议桌,把文件踢得到处都是,并对着那些行政官咆哮嗥叫,行政官们坐在那里只剩下目瞪口呆了。然后,他唰地一下离开了会议室,正如他来时一样。

听到这件事,程序员们便都回到各自的工作岗位上去了。

<作者按>

作者曾经和几个人谈过,他们都亲眼目睹过此传说中描绘的事件。作者也曾听说,一年之后,类似的挑衅行为在IBM的某部门中发生了。这第二起事件与第一起的不同之处在于,程序员穿了一套运动服,站在门口大声地咳嗽。

一组程序员正在向董事长汇报。“今年最大的成果是什么?”董事长问。

那些程序员在一起商量了一会儿,然后回答说:“我们今年解决的bug(程序错误--译注)比去年多百分之五十。”

董事长疑惑地看着他们,很显然,他不知道BUG是什么意思。他小声地与身边的大臣嘀咕一阵后,转过身来对着程序员,气得满脸通红。“如此差劲的质量控制,你们应该问心有愧。明年不允许有‘BUG’!他命令道。

可以肯定,第二年那些程序员向董事长汇报的时侯,有关BUG只字未提。

一位公司行政官来参观开发中心,他在长长地走廊里走着,就像一位检阅部队的将军一样。他不时地偏上来和他遇到的人谈谈话。最后,他走进了一位程序员的办公室,这位程序员正在聚精会神地为操作系统查错。

行政官环顾了一下办公室,注意到有尊猪的雕像摆在程序员的终端上。”我常常被程序员收集的那些古玩和纪念品所深深吸引,”行政官说,“在它们背后似乎有一些非常有趣的故事。比如说吧,那里的那个雕像是什么意思?”他指着那尊雕像。

程序员从终端前抬起头来,眨眨眼睛,然后盯着那尊雕像,就好像是头一回看到它似的。“这是头猪呀!”他说。