第7部分(第3/4 頁)
何東西。如果它的結果並不是我想要的,我不怕全部推翻,重新來寫。”
對於程式設計,卡特勒是個實用主義者。他相信形式優先於功能,但他也不是完全屈從於結構。他總是有正確的開始,而結束時,他的程式碼也只有極少的錯誤。通常,他先為團隊寫出最抽象的程式碼。他把一個作業系統預先分為幾十組程式碼,每組程式碼都附著詳細的要求。編寫程式碼需求本身就是一項藝術。工程師們早就從他們的職業經驗裡得知,一個糟糕的程式碼需求會導致整個專案的死亡,而一個好的程式碼需求則是一座燈塔,當程式設計師迷失方向時,燈塔會幫助他們回到正確的航線上。然而程式碼需求不僅僅對它的創作者有用,它還能幫助所有參與開發程式的人。每段程式碼共生共存,整個程式就好比一個精緻的生態系統,如果一段程式碼有問題,甚至是和其他程式碼沒有直接聯絡的時候,也可能會摧毀整個程式。
依賴程式碼需求有兩個缺陷。寫出一份程式碼需求就要好幾個月。一旦程式設計開始,程式碼需求也需要不停地修改更新,否則它就會因過時而不起作用。過時的程式碼需求可能會起到誤導的作用,會導致混亂。只要程式碼需求在有效期內,就需要專人來維護。這個工作由卡特勒在DEC實驗室的首席程式設計師盧?皮亞佐利(Lou Perazzdi)擔當。
皮亞佐利是個高高瘦瘦的男人,很少挺立站直或提高他的音量。“戴夫是位實幹家,”他說,“我喜歡給實幹家工作。” 皮亞佐利除了是位天才程式設計師,還是一位程式設計師教練。他的管理哲學很簡單:讓你的人們快樂。他認為他的程式設計師們遲早會做對的事情。他一直是位重實際的人。如果有人因疲勞過度或生氣而不能繼續工作,皮亞佐利會詢問什麼能緩解他的煩惱。有時候,程式設計師會給一個直白的答案,會要求要一個大點兒的顯示器或是一個裝資料的大硬碟。皮亞佐利有一筆基金,通常可以滿足這些要求。也有時候,程式設計師的心情太過抑鬱,而療方也比較貴重。曾經有個程式設計師想要一個月的休假去義大利遊玩,並在哥斯大黎加(Costa Rica)的海岸潛水。皮亞佐利通常會這麼解決這樣的要求:你做這個,做這個,再做這個,做完後,就給你安排旅行。善解人意的皮亞佐利是最能襯托卡特勒這朵紅花的綠葉。“如果說戴夫是鹽,盧就是糖。”伍德這樣評價。當人們害怕和卡特勒講話的時候,他們會把他們的苦惱和煩悶訴說給皮亞佐利聽。當卡特勒非常生氣,忍不住要懲罰一個人的時候,他先向皮亞佐利發火,皮亞佐利再依情況,或是平靜地把壞訊息傳達給當事人,或是不告訴任何人。許多部落成員對皮亞佐利都有極大的感激之情。“盧維護著一批自大、脾氣糟糕的人,如果沒有他,這幫人說不定會自相殘殺。”其中一個成員說,“當有些人因為受不了卡特勒而提出辭職的時候,他能把人留住。”然而,伍德卻抱怨說卡特勒和皮亞佐利用的是紅臉白臉的伎倆。“麻煩就是,戴夫太野蠻了,盧又太好了。”他曾經寫道。
第3章 部落(6)
其實,也沒什麼太多需要做的。“盧真的比我隨和得多,”卡特勒承認,“他會這麼說‘這裡出現了一個問題,但我不準備做任何事情去解決它,因為它自己會修理好。最終,每個人都能發現錯誤的地方。所以我才不會花這份心力。’”
皮亞佐利的禪宗般的生活態度也反映在他自己成為軟體精英的曲折道路上。他給卡特勒做了十年的助手。在20世紀70年代早期,他先在NASA(美國國家航空航天管理局)做一名程式設計師。航天局的工作十分依賴於計算機,從控制任務到分析天文資料。航天局給皮亞佐利的工作任務是給PDP�11寫程式,PDP�11是DEC生產的計算機,它的作業系統正是卡特勒早期寫的。幾年後,皮亞佐利厭倦了他的一萬美元聯邦月薪的生活,加入DEC,成為一名巡迴程式設計師,他的工作是幫助消費者把軟體應用到他們購買的硬體上。在DEC的一次由卡特勒教授的培訓課程上,皮亞佐利與卡特勒碰面了,他們一見如故,就卡特勒喜歡的程式足足談了一個晚上。
幾年來,他們一直保持聯絡。1981年,皮亞佐利搬到維吉尼亞州林奇堡市,去負責DEC在那一帶的消費者。他和女朋友買了一塊80英畝的農田,過起了“回到地面上”的生活。他的女朋友是來自阿拉巴馬州的一位高中老師,來到這兒後,在附近的一個鎮裡的學校教書。皮亞佐利很少在下午五點後還繼續工作,他和女朋友在農田裡度過了不少時間。他們過著田園詩般的生活,不過從一開始他們就知道這種日子不會持續太長。他們養火雞和家雞,烤麵包;夏
本章未完,點選下一頁繼續。