歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> Linux文化 >> 《編程之禅》(轉載) 火

《編程之禅》(轉載) 火

日期:2017/2/27 12:16:22   编辑:Linux文化

聲明:
本文內容來自《編程之道》一書, 小趙只負責錄入. 所有版權歸該書的出版社。本文由原來的三冊書組成:《編程之道》 《編程之禅》《計算機時代的寓言》


目錄

前言

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


第二篇 火

大師:行者
媒體:民間故事
硬件:顯示器
方向:南
軟件:格式化程序
感覺:視覺
階段:設計
動物:鳳凰
系統:CP-6

編程大師行者收集了各種各樣有關開發刺目的民間故事。最近的計算機考古研究顯示,下面的這些民間故事是以歷史事實為基礎的。雖然一部分誇張的成分可能會無意中被添加進去,但其歷史真相的核心內容依然存在。

當一位項目經理為他的軟件項目配備人員時,他會在一天內雇傭三百名程序員。一位獲得計算機科學博士學位的學者前來求職,他被給予了一個薪水很高的職位。

一天,那位項目經理被解職了。“我認為,每個人都應清楚自己的職責和履行自己的職責。”新來的項目經理在檢閱他的程序員隊伍時如此說道。聽到這話,那位學者悄悄地溜走了。

兩位程序員正在急診有關用戶界面的問題。

“在‘使用起來簡單輕松’方面,許多意義重大的革新正在進行當中,”第一位程序員說,“不久以後,人們在使用電腦之前將不再需要閱讀那些冗長乏味的用戶手冊了。程序都將是不言自明的。”

第二位程序員想了一會兒,然後說:“上個星期我准備劈些木柴燒火,但我的斧子又舊又鈍。於是,我去五金店買了把新的。”

“這挺有趣兒,”第一位程序員說,“但這和用戶界面有什麼關系呢?”

“這把新斧子附帶有一本長達八頁的使用說明書。”他回答說。

一次有一位第三者問一名工程師、一名數學家、一名物理和一名程序員:“一只盒子有幾個面?”

工程師首先回答。“一只盒子有四個面。”他說。

“此話怎講?”智者問。

“四個垂直的面就是我所說的面,它們被一頂一底連接在一起。”工程師回答。

“太荒唐了,”數學家評論道,“一只盒子有六個面。”

“此話怎講?”智者問。

“盒子是一個立方體,因此有六個面。”,數學家回答。

“不對,”物理學家說,“一只盒子有十二個面。”

“此話怎講?”智者問。

“嚴格說來,有六個外部的面和六個內部的面。”物理學家回答。

智者看著一聲未吭的程序員。“你的意見呢?”智者問。

“一只盒子只有兩個面。”程序員說。

聽了這話,工程師、數學家和物理學家大笑起來。

“此話怎講--一只盒子只有兩個面?”笑聲停住後智者問道。

“這是基於個人經驗,”程序員說,“那‘裡面’是安置電路板的地方,而‘外面’是放顯示器的地方。”

“正是如此。”智者說。

一位新上任的董事正在召開與程序員們的見面會。

在宴會進行當中,一位程序員背誦起了如下的演說--“我們一直都在期盼著你的到來,您的前任根本沒有您這種高貴的能力。現在你來了,我們會變得真正具有生產力。”

這位新董事被奉承的喜形於色,“這演說詞是你自己寫的嗎?”他問。

“這是我們開發中心的慣例,”那位程序員說,“無論哪位新董事到任的時侯,我們都要發表那段演說,這是我所知道的唯一的一段演說詞。”

一天,開發中心的一位程序員發現了一套可以生成迷宮圖案的算法系統。他非常勤奮地對這套算法進行了修改,這樣可以讓它在長長的打印紙帶上生成一個不間斷的迷宮。

不久,他制做了一個有幾百萬條分貧的迷宮,四十英尺長,七英尺寬。他把打印紙帶掛在了程序員辦公室門口長長的過道上,不一會兒,所有編程人員都擠在了那個迷宮前,試圖解決這個龐大的難題。

開發中心的主任恰巧從旁邊經過,他驚愕地盯著這場景,面色陰沉。但當他走進編程大師的辦公室想尋求幫助時,大師早已不在那兒了。

五名初學者哭著走進了大師的辦公室,“嗚,嗚!聽說我們的項目可能要被取消了。”

大師說:“所有事情照常繼續,直到它們停止。”

聽了這話,那些初學者便返回各自的工作中去了。

一天,開發中心接到消息,一位新主任將被任命來負責這裡,他是位軍機大臣,對電腦知之甚少。

程序員們聽到這條消息都非常吃驚,紛紛停止了編程,把許多時間都浪費在揣摩那即將到來的不幸的日子。

看到這些,一位大師決定必須得做點什麼。於是,他借來了一套裝扮大猩猩的服裝。

不久,那位大臣就職了,他把所有的經理召集到一間小會議室,隨行而來的是幾位總部的公司行政官,據說,他們是來使開發中心“平穩過渡”的。

突然,那位大師穿著裝扮大猩猩的服裝破門而入。他蹦上會議桌,把文件踢得到處都是,並對著那些行政官咆哮嗥叫,行政官們坐在那裡只剩下目瞪口呆了。然後,他唰地一下離開了會議室,正如他來時一樣。

聽到這件事,程序員們便都回到各自的工作崗位上去了。

<作者按>

作者曾經和幾個人談過,他們都親眼目睹過此傳說中描繪的事件。作者也曾聽說,一年之後,類似的挑釁行為在IBM的某部門中發生了。這第二起事件與第一起的不同之處在於,程序員穿了一套運動服,站在門口大聲地咳嗽。

一組程序員正在向董事長匯報。“今年最大的成果是什麼?”董事長問。

那些程序員在一起商量了一會兒,然後回答說:“我們今年解決的bug(程序錯誤--譯注)比去年多百分之五十。”

董事長疑惑地看著他們,很顯然,他不知道BUG是什麼意思。他小聲地與身邊的大臣嘀咕一陣後,轉過身來對著程序員,氣得滿臉通紅。“如此差勁的質量控制,你們應該問心有愧。明年不允許有‘BUG’!他命令道。

可以肯定,第二年那些程序員向董事長匯報的時侯,有關BUG只字未提。

一位公司行政官來參觀開發中心,他在長長地走廊裡走著,就像一位檢閱部隊的將軍一樣。他不時地偏上來和他遇到的人談談話。最後,他走進了一位程序員的辦公室,這位程序員正在聚精會神地為操作系統查錯。

行政官環顧了一下辦公室,注意到有尊豬的雕像擺在程序員的終端上。”我常常被程序員收集的那些古玩和紀念品所深深吸引,”行政官說,“在它們背後似乎有一些非常有趣的故事。比如說吧,那裡的那個雕像是什麼意思?”他指著那尊雕像。

程序員從終端前抬起頭來,眨眨眼睛,然後盯著那尊雕像,就好像是頭一回看到它似的。“這是頭豬呀!”他說。


Copyright © Linux教程網 All Rights Reserved