一個人做事情的動機,,可以分為三類:一是求生,二是社會生活,,三是娛樂,。當我們的動機上升到一個更高的階段時,,我們才會取得進步:不是僅僅為了求生,更是為了改變社會,,更理想的是——為了興趣和快樂,。
——林納斯·托瓦茲,Linux系統(tǒng)主要開發(fā)者,、開源運動領導人,,2001年一個新的世界:從軟件開源到數(shù)據(jù)開放
開放的社會是這樣一個社會:在這里,人們已經(jīng)認識到,,要多多少少用批判的眼光來看待禁忌,,人們會把個人的決定建立在他們自己的才智和掌控之上。
——卡爾·波普爾(1902-1994),,英國哲學家,,1945年
我們正在進入一個新的世界,在這里,,數(shù)據(jù)可能比軟件還要重要,。
——蒂姆·奧萊理,奧萊理媒體創(chuàng)始人,、技術活動家,,2007年 1946年,人類發(fā)明了第一臺計算機。
計算機一開始就是由軟件和硬件共同組成的,,但軟件和硬件的發(fā)展,,早期卻未能并駕齊驅(qū)。相反,,在很長一段時間里,,軟件都是作為硬件的附屬而存在的,甚至“軟件”(software)這個單詞,,也遠遠滯后于“硬件”(hardware)這個單詞,,直到1958年才正式形成的。
其中的原因,,是因為最早的軟件對硬件的依附性很強,,換一個硬件平臺,就可能無法運行,;同一個軟件產(chǎn)品,,即使運行在相同的硬件平臺上,其配置不經(jīng)過修改,,也無法銷售給其他的客戶,。
因為可移植性差、通用性低,,這時候的軟件,,大部分都是由硬件制造商一并開發(fā)的,作為硬件的一個搭配,,免費提供給計算機的購買者,。因為免費,軟件的原始代碼(也稱源代碼)大部分時候都是公開的,。也正因如此,,幾乎所有人都相信,軟件的開發(fā)必須量體裁衣,、逐一定制,,軟件本身難以成為一個大規(guī)模銷售的獨立產(chǎn)品。
但接下來的半個世紀,,軟件產(chǎn)業(yè)卻經(jīng)歷了從無到有,、跌宕起伏的發(fā)展,形成了一個龐大的產(chǎn)業(yè),。在這個風起云涌的過程中,,一些公司和個人,在其中扮演了極為重要的角色,。
1955年,,IBM的兩名雇員辭職,,創(chuàng)辦了全世界第一家專門的軟件公司:Computer Usage
Company(CUC)。盡管走的是“一對一定制”的商業(yè)模式,,CUC也不斷發(fā)展壯大,,到1967年,已經(jīng)擁有了700多名雇員,、年收入上千萬美元,,成了上市公司。
在軟件業(yè)的發(fā)展過程中,,美國聯(lián)邦政府也起了舉足輕重的作用。由于軟件的可通用性低,,整個軟件產(chǎn)業(yè)最早是由個別大項目推動的,。這些大項目,基本上都是由聯(lián)邦政府認購,、買單,。其中最大的項目之一,是美國國防部和IBM在1959年開始合作的一個防空項目(Semi-Automatic
Ground Environment),,該項目致力于用計算機軟件處理雷達收集的信號,,偵察、跟蹤天空飛行物的活動,。
這個項目,,前后跨度近30年,耗資近百億美元,,它不僅幫助IBM成為軟件產(chǎn)業(yè)的巨頭,,也為美國培養(yǎng)了一大批程序員。類似的大項目成了程序員的搖籃和“西點軍�,!�,。在這些項目中成長起來的技術中堅,后來散布到各個行業(yè),,成為各個領域軟件開發(fā)的帶頭人,。正是聯(lián)邦政府這些大項目帶來的人才優(yōu)勢,幾十年以來,,美國的軟件業(yè)一直在全世界占據(jù)領先地位,。
1969年6月,IBM宣布,,將從1970年起停止免費配送軟件的做法,,軟件和硬件將分開定價。這個軟,、硬件分拆的決定進一步推動了軟件行業(yè)的興起,,新的軟件公司如雨后春筍般破土而出,,用戶開始在硬件提供商之外尋找、購買軟件解決方案,。
1970年代中期,,個人電腦問世,隨著電腦進入千千萬萬個普通家庭,,軟件開始真正具備成為大眾化商品的可能性,。
但真正把軟件產(chǎn)業(yè)推進到商業(yè)帝國的,卻不是IBM,,而是一個年輕的后起之秀:比爾·蓋茨,。
蓋茨相信軟件行業(yè)蘊藏著巨大的商機。1975年,,20歲的他從哈佛大學退學,,創(chuàng)辦了微軟公司,致力于軟件開發(fā),。此后二十年,,如滾雪球一般,微軟公司迅速擴大,,這位輟學者,,最后一手造就了一個世界級的軟件帝國。
1976年2月,,蓋茨發(fā)表了一封著名的信件:《致愛好者的公開信》,。他在信中譴責一些用戶沒有付費就使用微軟公司的軟件產(chǎn)品,并斷言,,這種不尊重版權,、非法復制的做法將會阻礙、打擊軟件業(yè)的發(fā)展,,他質(zhì)問道:
“有誰會愿意免費,、義務地從事如此專業(yè)的工作?哪個業(yè)余愛好者能投入3年的人力去開發(fā),、調(diào)試,、編寫文檔,然后免費發(fā)布一個軟件產(chǎn)品呢,?”