胡泳

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