閱讀698 返回首頁    go 阿裏雲 go 技術社區[雲棲]


少年黑客艾倫與蓋茨

在60年代末的西雅圖,一群十幾歲的孩子每天下午都在湖畔中學外麵會合,他們都是這所郊區私立中學的學生。會合後,他們會蹬上自行車,趕往一家叫做“計算機中心公司”(ComputerCenerCorporation,孩子們淘氣地將其稱為CCubed)的當地公司。盡管公司已經下班,孩子們卻剛剛開始上班。他們覺得自己頗像一群夜班工人,每天晚上都幹得很晚,一邊在公司的DEC計算機上敲敲打打,一邊吃著比薩餅,喝著可樂。

這群孩子的領袖是兩個不同尋常的學生。他們比所有的同伴對計算機都更為著迷,事實上,同學們把他倆稱作“計算機瘋子”。15歲的保羅·艾倫和13歲的比爾蓋茨都擅長數學,格外喜歡編程。

艾倫、蓋茨及其他孩子被這家公司雇來尋找計算機程序中的錯誤。更好的說法也許是公司“允許”他們使用計算機,因為孩子們得不到報酬,純粹是為了好玩兒。CCubed願意這樣做,因為它與DEC公司簽有合同,隻要CCubed能找出DEC軟件中的“臭蟲”,就不必為使用DEC計算機而付費。

DEC的軟件程序是新開發出來的,很複雜,難免存在不少錯誤。DEC公司與CCubed簽這種合同是軟件公司的一種常見做法,意在發現軟件中最細微的缺陷。半年下來,孩子們收獲甚豐,蓋茨的成績尤為突出。他們根據自己的工作編撰的《問題報告書》,最後長達300頁。DEC中止了與CCubed的合同,蓋茨後來回憶說,“DEC發現,這幫家夥總能挑出毛玻”

在挑錯的過程中,艾倫與蓋茨的計算機技能與日俱增;很快,他們就開始往程序中加入自己的東西,以便讓其運行得更好。蓋茨會批評DEC的個別編程人員說:“看啦,xxx又犯了同樣的錯誤。”

也許蓋茨變得過於傲慢了。軟件似乎是一種可以令他隨心所欲的東西,例如,他在CCubed為湖畔中學編寫學生座次排序軟件時,偷偷地加進一些指令,使自己成為班上幾乎唯一一個周圍坐滿了女生的男孩。如同他在自述這段經曆時所說:“很難把我同一台能如此明確無誤地展示我的成功的機器分開,我已經深深陷進去了。”他陶醉於由於控製那些巨大的計算機而產生的權力感之中,開始擺弄計算機安全係統。在分時計算機係統(time-sharingcomputersystem)--例如蓋茨所熟悉的DEC計算機--中,許多用戶同時使用一台機器。係統內置了一種安全保護設施,以防止某一個用戶侵入其他用戶的文檔或破壞程序的運行。更重要的是,不能讓其破壞操作係統,否則的話,整個計算機係統的工作都會陷入停頓。

蓋茨很快成為計算機安全的行家,不費吹灰之力就能夠進入各種計算機係統。他成了一名黑客。外人很難想象到,這個長著一副娃娃臉的中學生,隻需在一部終端上敲出14個字母,便可以令DEC計算機係統俯首稱臣。蓋茨開始搞各種各樣的電子惡作劇。

同電腦係統搗亂給蓋茨在某些圈子裏帶來了聲譽,但也招致了麻煩。在學會應付DEC係統後,蓋茨轉而尋求更大的刺激。當時與IBM一起從事大型機生產的控製數據公司(CDC)建有一家全國計算機網Cybernet,CDC聲稱此網無論何種情況下都是安全可靠的。這個牛皮在蓋茨看來吹得太大了。

華盛頓大學的一部CDC計算機與Cybernet相連。蓋茨開始研究這部機器及其運行的軟件,他逐字逐句地琢磨網絡的技術規範,仿佛在迎接一場大考一樣。他對艾倫說,網絡中有一些外圍處理器,隻要能控製其中的一台,就可以利用這台機器控製主機。這種"逐漸攻入係統"的辦法,就好象打扮成一隻工蜂而進入蜂巢。係統管理員會注意到外圍處理器的活動,但這些活動都是通過終端訊息的形式顯示出來的,蓋茨控製了外圍處理器送出的所有訊息。

他希望在他悄悄撬開係統之門時,保留一切正常的假象以騙過管理員。

這一招果然奏效。蓋茨控製了一台外圍處理器,在係統管理員的眼皮底下熘進係統,並在係統內所有的計算機上安放了同樣的"特別程序"。他的惡作劇導致所有的計算機同時中斷了工作。蓋茨為此竊笑了好幾天,然後CDC卻不覺得此事有什麼好笑。不幸的是,蓋茨的作案手法還不夠高明。CDC抓住了他,蓋茨不得不遠離計算機一年。

在這一年中,蓋茨試圖過正常的生活。這時他在中學讀九年級。然而電腦搗亂活動被視為技術亞文化群中的傳奇行為。幾年後,當蓋茨試圖在圈內樹立自己的地位時,他毋需出示自己編寫的漂亮軟件,隻要說:"我攻破過DEC和CDC計算機係統",就足夠了。守法的黑客開始緩慢地被少年冒險者所取代。

當英特爾推出8008芯片時,保羅·艾倫敏銳地意識到,盡管這第一個微處理器的真正作用--用於微電腦。那時計算機行業還沒想到利用微處理器製造一台真正的計算機。8008被描述成適合於"任何計算、控製和決策係統,有如一個靈巧的終端"。當時,微處理器速度緩慢,能夠處理的信息量有限。沒有一種程序員所以熟悉的語言能使用於8008,這樣一來,要想為它編寫一個複雜的程序幾乎是不可能的。

艾倫要為英特爾的小芯片寫一個專門的BASIC語言,蓋茨深表懷疑,因為8008是為計算機而製造的,不夠複雜和精密。盡管如此,兩人還是花360美元買了一塊芯片,動手設計出一塊電路板,編起程序來。由於芯片功能太差,他們放棄了BASIC語言,轉而用小芯片啟動一台機器。該機器可以分析城市道路交通監視器傳來的消息。許多市政當局測量交通流量都采用這樣的辦法:在一條選定的街道上拉一條橡膠軟管,當車輛通過軟管時,它便撞擊了位於軟管尾端的金屬箱中的帶子。蓋茨認為可以利用8008處理這些帶子,並打印出圖形和其他數據。他為自己的新公司取名為交通數據公司(Trof-O-Data),蓋茨說,"那時它聽起來像詩一樣。"

交通數據公司並沒有獲得成功,也許是因為市政當局不願意從兩個毛頭小子手中購買設備。那一年,艾倫19歲,蓋茨16歲,不過看起來比實際年齡還要年輕。

在這次商業冒險失敗後,艾倫上了大學。一家大公司TRW公司聽說艾倫與蓋茨在CCubed的成就,主動找上門來為兩人提供了一份開發軟件的工作。一年能掙3萬美金!這樣的工作令兩個年輕人眼睛發亮。艾倫離開大學,蓋茨也從中學請假,兩人一起編起軟件來了。

他們過了一年半的計算機少年的夢幻生活。程序員通常都不願意與別人共享專業知識,但蓋茨卻很會利用自己的年輕外表向人請教。畢竟,他還隻是一個孩子。兩人學到了更多的計算機技能,並且發現,這些技能可以為自己帶來豐厚的收入。蓋茨買了一艘快艇,兩人常常一同前往附近的湖中兜風。

少年黑客看到了軟件業下麵深埋的黃金。但金錢的回報絕不是唯一的誘惑:編寫軟件是一場公平的遊戲,邏輯的清晰與思想的鋒利,決定著誰是遊戲的勝方。這種遊戲對於兩個天才少年有著無與倫比的吸引力。

艾倫與蓋茨在TRW的工作最終結束了,但對這兩個少年黑客來說,它是一段令人難忘的經曆。蓋茨回憶說:"計算機鼓舞我們沉浸在一種夢想中,總有一天上百萬的人都會擁有他們自己的計算機。每過一年,我便愈加堅信計算機和計算機的使用必定會變得越來越廉價和普及。我敢肯定我如此堅決地去幫助開發個人計算機的原因之一就是我自己想要擁有一台。"

蓋茨上了哈佛大學。他大多數時間都逃課,到期末的時候再玩命學以應付考試,閑暇時間都用來玩撲克。艾倫則在波士頓找了一份程序設計工作。他常常開車到哈佛,以便與蓋茨繼續關於未來計劃的長談。1974年,這一未來由於"牛郎星"的出現變得清晰可見。這也就是蓋茨在《未來之路》中描述過的那個時刻,他說,"正是這一刻使我們的未來之夢變成現實。"

最後更新:2017-04-02 15:15:09

  上一篇:go 物理學家眼中的世界:編程的未來
  下一篇:go 第六章 C++模板