計算機創新者(2) - 蓋茨印象

計算機創新者(2) - 蓋茨印象

Microsoft

上文說到Alan Kay在施樂第一次做出了帶圖形操作介面的計算機,接下來按正常的節奏應該講喬布斯了,但是我偏不!雖然我用的是MBP,但是給計算機世界帶來更大貢獻的我覺得是蓋茨,碼農出身的蓋茨也是我這個碼農所更能體會和欣賞的。

布什-恩格爾巴特-Alan Kay這條線暫時放一放,蓋茨這條線是從另一個神奇的地方開始的。開始這條線的人是一個心很大的胖子:大嘴巴羅伯茨。羅伯茨是遠離矽谷,新墨西哥州阿爾伯克基市的一個發燒友兼商人。10年我曾經到過這個英文記不起怎麼拼的荒漠之地,這是一個一套house才賣20萬美金的鳥地方,我去那唯一的目的就是去看看Intel的資料中心,大家可以理解成寧夏中衛。

作為世界終極發燒友,羅伯茨喜歡搗鼓各種神奇的商業。在搞計算機之前,他做的是在家後院發射火箭玩的生意,一不小心把屁股給點著了。他的公司有一個很酷的名字叫MITS,跟MIT沒半毛錢關係,取這個名字就是故意碰瓷的。羅伯茨也從來沒有看過《誠如所思》,他連萬尼瓦爾。布什是誰都不知道,更是沒聽說過恩格爾巴特和Alan Kay,燕雀安知鴻鵠呢。

但是這隻燕雀很想飛(不然幹嘛玩火箭)。當年Intel做處理器,TI等就用Intel的處理器做計算器(注意是計算器而不是計算機),作為Healthkits養大的發燒友,羅伯茨也去弄這個。作為發燒友,羅伯茨覺得賣成品的計算器不過癮啊,適逢Intel 8080處理器出臺,從指令集已看可以程式設計啊,就弄了個DIY的組裝套件。羅伯茨是個賭性很強的哥們,當時8080零售要360刀,羅伯茨誇下海口一下子買下1000片,把價格壓低到75刀。其實他心裡覺得能賣出200套就不錯了。但羅伯茨就是這樣的人,要麼改變世界,要麼很快破產。我想羅伯茨也跟我一樣欣賞不了Ada和布什吧。

這樣,第一臺PC,Altair 8800就誕生了。Altair是牛郎星,據說這個名字是羅伯茨的女兒取的,他女兒是星際迷,恰好那天的劇情是到牛郎星。如果他們多一點中國文化的話,應該會取名織女星吧。訂單如雪片般飛來,不出幾個月,就賣出去5000多顆牛郎星。改變世界!

敲黑板,接下來到我最喜歡的橋段了。Paul Allen和Bill Gates(我是多喜歡簡單的英文名啊,我想恩格爾巴特為什麼總是把事情搞複雜就是因為名字太長了,你看Kay和Jobs,多簡單)是兩個從小酷愛程式設計的好基友。Paul是一個點子特別多,啥事都想幹的激情份子,而Bill則是一個非常非常非常專注的碼農和很會很會算賬的商人。Bill Gates中的Bill代表的是算賬,Gates代表的是計算機中的邏輯閘,名字決定一切啊,馬雲做雲計算也是名字中註定嘛(馬雲的馬錶示什麼呢,我覺得是馬馬虎虎,馬馬虎虎的人才能看80年,後來改成102年)。

長話短說,Allen和Gates在看到Altair之前,已經有七八年的程式設計經驗了,當時Gates還不到20歲。都是在大型機上,一開始是Mark-II,後來是PDP-10,這都是大型機歷史上劃時代的產品。這七八年Gates把BASIC和組合語言甚至是機器碼用的是不知道多溜了。

我說過Gates是一個非常非常非常專注的碼農,Gates編起程來,那真是天地為之色變。書中寫道,Gates用起功來,坐在椅子上身體前後搖晃,聚精會神,身邊堆一大堆可樂。就這樣的連續二三十個小時不歇氣的,就靠可樂續命,一天下來得喝十多罐可樂(看看Gates那小身板,喝可樂發胖的謠言不攻自破,不過Gates發育的賊慢,似乎喝可樂真的殺精哦)。然後大睡個十幾個小時,醒了後馬上就繼續,也不管現在是凌晨三點還是下午三點,就當地球不自轉一樣。有時編著編著,慢慢的身體前傾,然後一把子就趴在鍵盤上睡了,過陣子醒來,立馬恢復前後搖晃的戰鬥姿勢。

Gates的數學是超好的,中學階段,Gates的數學好的是目中無人。到了哈佛的第一年,Gates業餘編點小程式,更多的時間放在做數學題上,不知道是吉米多維奇麼?Gates和其他幾個同學經常到一個他們中數學最牛的哥們宿舍通宵做題,後來Gates把這哥們弄到他寢室一起住了。不過Gates終於發現有人在數學上就是比他牛,他不能再在這方面目中無人了。正當Gates深陷題海不能自拔的時候,Allen拿著印著Altair的雜誌跑來找他,醒醒吧,別TM做題了,我們再不幹,就要錯過個人計算機時代了。

數學好讓Gates的程式設計內力深厚,不過我覺得作用更大的是Gates還有一個好習慣,就是在把程式寫的短這件事情上非常的爭強好勝(而不是像OO派那樣總是把程式寫的長)。早在湖濱中學的時候(想當年18羅漢創業是在湖畔花園,這也是名字決定命運嗎?),Gates在程式設計社團中就經常比誰能把程式寫的更短,當然十有八九都是Gates的最短,剩下那十有一二基本也就Allen偶爾能比試一下,其他人都差遠了。把程式儘可能的寫的短,這說明Gates也是非常追求簡單之美的人,這對他後來成就大業我覺得非常關鍵。雖然Gates缺乏喬布斯那種使用者互動介面層面的品味,但他對程式碼之美的品味又是喬布斯所遠遠不能欣賞的。這決定了喬布斯的蘋果系統關注的是終端使用者好不好用,而Gates在微軟最關注的是開發者。

讀Gates的故事經常會會心一笑,想起當年在寢室比賽誰把程式碼寫的短,每天一大早帶著麵包礦泉水到機房泡一天,大一寒假回家沒計算機就在本子上手寫程式的往事(當年可沒聽說Gates這些故事)。然而Gates的疵至少勝我一倍,我至多從早到晚編十幾個小時,Gates可以連續作戰三十多個小時,這就是差距啊。

如果說Gates時常令我心有慼慼的話,Bill就是我只能頂頂膜拜天天學習的了。講完了Gates的故事,繼續講Bill的故事吧。Bill的偉大在於他把軟體變成一個獨立的產業,把作業系統做成世界的主宰。我想Bill是一開始就清楚這一點。Bill的人生第一桶金來自於給Altair提供BASIC直譯器,以便程式設計師能夠在Altair上用BASIC語言程式設計(我想換做Alan Kay來做估計會變成LOGO語言,讓小朋友們畫畫小海龜)。Bill跟MITS籤合同的時候,就堅持BASIC直譯器單獨收費(還挺貴),保留對BASIC直譯器的一切權利,包括原始碼的所有權,包括授權給其他計算機的權力。現在看起來可能覺得稀鬆平常,但在那個時代,軟體總是作為硬體的附屬品免費提供的。

有了這個先例,到IBM來找Bill做作業系統的時候,Bill也如法炮製,硬生生把IBM變成DOS系統的硬體廠商之一。要知道IBM可是年收入300億美金的巨象啊,而當時的微軟還是一隻年收入幾百萬的小螞蟻而已。就這樣,DOS系統成了PC時代的標準。

對下透過商業模式,讓作業系統軟體而非硬體廠商佔據有利地形後,Bill又不斷的在程式設計師的介面和工具發力。微軟的DOS系統在喬布斯看來簡直就是shit(喬布斯的原話是糟糕透頂),Windows系統在喬布斯看來就是赤裸裸的抄襲(而且還抄襲的很沒品味),但作業系統要成功,最重要的是要有大量的應用軟體。而要有大量的應用軟體,就要設計好面向開發者的API,提供好的開發工具和文件,在這些方面,微軟都做的出類拔萃。微軟的Visual Studio就是程式設計師的倚天劍,MSDN就是開發者的聖經。這樣,大量的軟體基於Bill的作業系統開發出來,比如國內最早的一批程式設計師如求伯君,就是在DOS上做WPS的。微軟自家也開發了幾個非常成功的核心軟體,如Office三件套和IE瀏覽器。

就這樣,在作業系統之下,是IBM、康柏、宏基、華碩、聯想、Dell、HP等大量的PC廠商,在作業系統之上,是及其大量的應用軟體,雙邊網路效應讓微軟的作業系統成為PC時代的霸主。這一統治地位只有到了移動網際網路時代,才被iOS和Android打破。而當前的雲計算時代,K8S隱隱然有新時代作業系統的氣象。每當我欣賞K8S怎麼上下出擊的時候,總是會不由的想起愷撒大帝的阿萊夏之戰,在內外夾擊中絕勝,這個留待後話再談了。

雖然Allen也很牛,無奈Bill + Gates實在太耀眼,就不寫了。大家記住Allen犯了*教唆*罪,把小學弟Gates忽悠的從哈佛退學就好。Gates的精彩故事還有很多,見《創新者》軟體篇。

寫完Bill + Gates,感覺剩下的寫不寫都無所謂了。哪天有心情,再寫寫喬幫主吧,再會。