胡泳

“他的機(jī)器從來沒有臻于完美,但它導(dǎo)致了一整套有關(guān)‘圖靈機(jī)的研究。今天我們把這樣的機(jī)器叫做‘電腦。” 有關(guān)艾倫·圖靈的電影《模仿游戲》以這樣一段畫外音結(jié)束。
從鐮刀到蒸汽機(jī),人類總是企圖利用技術(shù)控制我們周邊的世界。然而,要說到對(duì)環(huán)境的塑造,恐怕沒有哪一種機(jī)器比電腦更有力。而令電腦如此強(qiáng)有力的東西是代碼。
代碼,簡(jiǎn)單地說,是一套由單詞和數(shù)字組成的規(guī)則或者指令。把這些單詞或者數(shù)字按照合適的順序排列,就可以命令電腦為人類做事情。個(gè)體的天才創(chuàng)造力、被需要所驅(qū)使的發(fā)明以及人類了不起的想象,共同造就了代碼。
從遠(yuǎn)古時(shí)代,人類就開始把玩代碼。但里程碑是德國數(shù)學(xué)家萊布尼茨用簡(jiǎn)單的0和1造就的“具有世界普遍性的、最完美的邏輯語言”。在德國圖林根,著名的郭塔王宮圖書館內(nèi)仍保存一份萊氏的手稿,標(biāo)題寫著:“1與0,一切數(shù)字的神奇淵源。”
在萊布尼茨發(fā)明二進(jìn)制一個(gè)世紀(jì)之后,法國織機(jī)工匠約瑟夫·雅卡爾在他發(fā)明的自動(dòng)蒸汽動(dòng)力織布機(jī)上,考慮一種由一組卡片控制的裝置來機(jī)械地織出任何紋樣。該控制裝置由硬打孔卡和吊鉤組成。每個(gè)孔的位置對(duì)應(yīng)一根經(jīng)線,根據(jù)打孔或不打孔決定提起或不提起經(jīng)線,并交織一次。不同的打孔卡會(huì)令織機(jī)織出不同的花紋,因而,卡片構(gòu)成了對(duì)織機(jī)的指令——這和現(xiàn)代計(jì)算機(jī)程序的工作方式完全一致。
英國數(shù)學(xué)家查爾斯·巴貝奇認(rèn)為同樣的打孔卡可以用來輸入數(shù)字,以及有關(guān)如何處理這些數(shù)字的指令,因而創(chuàng)造了世界上第一臺(tái)通用的計(jì)算機(jī)器。他的工作成就了世界上第一位程序員,她是位女性,而且是拜倫之女。
埃達(dá)·洛夫雷斯是位數(shù)學(xué)家,也是穿孔機(jī)程序創(chuàng)始人。她建立了循環(huán)和子程序概念,為計(jì)算程序擬定“算法”,寫作了第一份“程序設(shè)計(jì)流程圖”。在1843年發(fā)表的一篇論文里,埃達(dá)認(rèn)為機(jī)器今后有可能編曲、制圖和實(shí)現(xiàn)各種更復(fù)雜的用途,這是十分大膽的預(yù)見。
19世紀(jì)末,美國的人口普查造成了一個(gè)管理上的噩夢(mèng):不得不用8年時(shí)間手工輸入每個(gè)公民的資料。人口普查部門的一位職員赫曼·霍勒瑞斯想出了一個(gè)解決辦法:把每個(gè)人的資料以編碼方式輸入穿孔卡中,利用新的電力技術(shù)把一排排針壓入卡片,將形成的電路予以記錄。霍勒瑞斯將自己的發(fā)明商業(yè)化,日后發(fā)展為赫赫有名的電腦公司IBM。可以說,霍勒瑞斯就是“大數(shù)據(jù)之父”。
1971年,英特爾公司發(fā)布世界上第一枚商用芯片;加州硅谷的家釀電腦俱樂部里那些狂熱的愛好者們很快圍繞芯片開始開發(fā)軟件和打造個(gè)人計(jì)算機(jī)。史蒂夫·沃茲尼亞克開發(fā)了第一代蘋果電腦,而同時(shí)代的比爾·蓋茨則開創(chuàng)了軟件產(chǎn)業(yè)。
隨后,電腦在創(chuàng)意產(chǎn)業(yè)、金融產(chǎn)業(yè)、制造業(yè)和科研領(lǐng)域等一路攻城掠地。再往下的故事,搜索引擎、社交媒體、移動(dòng)互聯(lián)等,我們毋須多言了。