在外人看來,他絕對是一個狂熱的偏執狂。
他拒絕使用手機,因為手機的硬件和軟件不自由。
他只使用龍芯電腦,因為這是世界上唯一的,從BIOS、硬件驅動到操作系統,100%都是自由軟件的電腦。
當他的粉絲請他在一本書上簽名時,他說:我不簽,因為這不是自由圖書。
他的衣著服飾,頭發胡子,都在彰顯自己的與眾不同。
![]()
他說:軟件的自由,關系到人類的自由。
他就是理查德·斯托曼(Richard Stallman),一生追求自由軟件的人。
0 1
人工智能實驗室
MIT 545號樓9層是AI實驗室,這里的人頭發不洗,胡子不刮,對外界事情不管不問,沉迷于計算機世界。
這群人可以一連36個小時坐在終端前,探索計算機的極限,等到實在太累了,就找個舒服的地方倒頭便睡。
他們編寫了實驗室的幾乎所有軟件,并且以鼓搗各種新玩意兒為樂。
他們自稱黑客, 只要發現某個系統或者軟件不爽,他們就“黑”一下。
70年代并沒有專有軟件的概念,軟件源碼可以被任意復制、修改,這給他們提供了施展才華的溫床。
![]()
正在讀物理博士的理查德·斯托曼也成為了其中的一員,并沉迷于其中。
他發明了新的“開鎖術”,解救被教授們囚禁的電腦終端。
他看到施樂打印機經常卡紙,就找到源碼,修改了控制程序,在打印機卡紙的時候給用戶發送一條通知消息。
作為一個很少社交的宅男,和很多和自己類似的人混在一起,理查德·斯托曼心滿意足, 他甚至把這里當做自己的家:
“我總會因為各種原因,有那么幾個月的時間沒地方住。這期間,我就住在人工智能實驗室里。我一直覺得那里很舒服,冬暖夏涼。”
0 2
最后的黑客
進入80年代,國防部門用于計算機科研的經費減少,大學和實驗室開始轉向私人投資,成立商業公司。
MIT AI實驗室的黑客們公司一個一個被雇走, 開發私有的商業軟件。
黑客社區變得支離破碎。
外邊的世界也發生了巨變,大家意識到:可以通過開發、銷售軟件來賺錢啊!
這其中野心最大的肯定是Bill Gates,他夢想著以后每一個桌面上都有一臺電腦,每個電腦中都運行著從他這里購買的軟件。
最初,Bill Gates 給牽牛星計算機開發了一個Basic語言解釋器,然后四處巡回演示,銷售賺錢,但是他發現,很多計算機愛好者根本就不買他的軟件,全靠互相拷貝。
![]()
Bill Gates 怒不可遏,他立刻寫了一封公開信,譴責這種小偷行為:
"你們當中的許多人都盜竊別人的軟件。硬件是一定要付錢的,而軟件卻成了要共享的東西。有誰會在乎編寫軟件的人是不是得到了應有的報酬呢?"
這時候大多數商業公司開始停止分發源碼,開始版權限制。
當理查德·斯托曼再一次想修改新版打印機的軟件,添加功能的時候,他被告知:不能獲得源代碼了。
![]()
他有些迷茫:是像Bill Gates那樣加入專有軟件的世界,不再互幫互助; 還是繼續自己的黑客道路?
前者可能讓自己發財,后者將會非常孤獨,因為需要一個人去對抗全世界。
人工智能實驗室的很多同事們妥協了,他們簽署了保密協議,“皈依”了專有軟件。
理查德·斯托曼說:“結束職業生涯之時,當我回顧那些建造圍墻、隔離大眾的歲月之時,我會感到我的一生是在讓這個世界變得更糟糕!”
所以他選擇后者,選擇自由,成了最后一名黑客。
0 3
自由的軟件
自由是要付出巨大代價的。
理查德·斯托曼必須像上帝創世紀那樣, 從頭構建起整個計算機世界,才獲得純粹的自由。
他必須寫一個自由的操作系統,在操作系統之上,還得有命令行、圖形界面、辦公軟件、游戲、郵件服務等。
這是一個讓人望而生畏的龐大工程,如同珠穆朗瑪峰,高聳入云。
為了保持自由世世代代傳承下去,理查德·斯托曼認為:
“所有的軟件,不但可以自由分發,自由修改,更關鍵的是,修改以后,還必須是自由的,不能封閉變成專有軟件。”
這就是GPL的核心思想。
正是因為GPL的演繹產品也必須是GPL的,批評者認為GPL是傳染性的“病毒”,商業軟件公司尤其擔心,怕被“傳染”,微軟的CEO鮑爾默,公然把采用GPL的Linux稱為毒瘤,直到納德拉上臺后才有改觀。
理查德·斯托曼發揮了黑客抖機靈、甩包袱的強悍能力,把它稱為Copyleft,和Copyright 針鋒相對。
他把要寫的操作系統命名為GNU,這又是典型的黑客風格:GNU is Not Unix。
![]()
0 4
GNU工程
在開始開發之前,他從MIT辭職, 因此MIT永遠無法對他的作品提出版權主張, 但是大度的人工智能實驗室依然讓他呆在那里,使用那里的計算機。
“我提出[支付租金],但他們說不值得費力去收。”
為了在開發GNU的同時養活自己,他每年工作兩個月,做計算機顧問,時薪260美元。
1984年初, 萬里長征正式開始, 一開始他就碰上了一個大問題:沒有自由的編輯器。
那就自己寫一個吧,這就是大名鼎鼎的GNU Emacs。
![]()
有了編輯器,但是沒有編譯器,荷蘭阿姆斯特丹的VUCK編譯器也不想變為自由身, 那就從頭兒再寫一個吧,這就是GCC。
80年代后期,斯托曼每周都工作 70~80 小時,編寫 GNU 工程中最基礎的那些自由軟件。
辛苦的工作,讓他雙手劇痛,無法容忍,他不得不雇傭一名打字員來完成編碼,后來斯托曼開始換用一種按鍵更為輕松的鍵盤,這才免去了請打字員錄入的麻煩。
GNU軟件受到了大家的廣泛喜愛,以至于理查德·斯托曼不得不提供了一項郵寄服務:任何人只要付150美元,他就可以把GNU Emacs磁帶郵寄給他。
越來越多的人受到自由軟件精神的感召,加入到理查德·斯托曼軟件行列,在GNU工程中開發包括GNU C library, bash等著名軟件。
到了90年代初期,GNU的項目列表基本完成,只差一個重要的東西:操作系統內核。
GNU項目計劃的內核叫做Hurd,但是這是個難產的內核,直到2001年才能穩定工作,距離被人們正常使用還有很長的路要走。
值得慶幸的是,不用再等Hurd了,因為Linux橫空出世。
Linus Torvalds 在赫爾辛基理工大學聽過斯托曼關于GNU的講座,受到他的影響,在 1992 年使 Linux 成了自由軟件,GNU系統終于完整了!
![]()
GNU項目發展到了巔峰,但是,這也是分歧的開始。
0 5
"收編"Linux
為什么斯托曼不先做操作系統內核, 而是跑去折騰那些操作系統上的工具呢?
這是因為斯托曼認為:一切都是自由的,想開發OS內核,沒有自由的編輯器和編譯器怎么行?
而大家很喜歡這些工具,迅速移植到了各種Unix版本和其他操作系統上,GNU開發者的精力都被放在維護組件的移植和新功能上,而無暇顧及缺失的操作系統內核。
Linux黑客則和GNU黑客之間不同,他們是實用主義者,從專有軟件時代成長起來,完全不回避使用專有軟件。
比如Linus就公開承認是微軟PPT的粉絲,斯托曼覺得這簡直是大逆不道!
Linux從開發方式上和GNU工程也大為不同,雷蒙德的《大教堂與集市》做了非常精彩的總結 :
“GNU 程序就是“教堂”,它們都是有計劃地修建而成的宏偉的黑客精神的紀念碑,經得起時間的考驗。
Linux則更像是一個“嘈雜的大集市”,它是在 Internet 去中心化的松散組織結構中開發出來的。”
![]()
Linux的開發方式更加先進,這才是未來。
相比火熱發展的Linux,GNU Hurd 的舉步維艱被做了無情的批判,給斯托曼留下了一道深深的傷口。
大家的注意力全被Linux所吸引,而忽略了GNU項目的貢獻。
斯托曼說:“請不要把整個操作系統叫做Linux, Linux只是內核,操作系統還有很多軟件,GCC, GDB, Emacs..... 他們都不是Linus開發的,而是GNU的志愿者開發的, 請尊重我們的工作,稱呼操作系統為GNU/Linux。”
但是有多少人會這樣稱呼呢?
1998年,雷蒙德等人認為“Free”這個詞在很多場合造成誤解,他們提出了一個對商業市場更友好的詞:“開源” (Open Source) 。
新的開源協議出現,允許軟件修改以后封閉源代碼,供商業使用。
這給斯托曼的傷口再撒上了一把鹽。
開源軟件開始獲得商業公司的支持,就連曾經自由軟件運動的宿敵——微軟公司,也投身到開源軟件的開發中,甚至公開了自家公司產品的代碼。
開源社區蓬勃發展,高質量的開源軟件層出不窮,數量之多遠超GNU工程。
![]()
如果是普通人,可能就順勢下坡,從自由軟件教主變成開源軟件教主,繼續接受全世界的膜拜。
斯托曼毫不妥協,他堅持認為“不自由是罪惡的,所有軟件都應當自由”, 他批判某些人把GNU的精髓拋在一邊,去迎合商業用戶,這些人把盈利凌駕于自由之上。
但是,他的聲音被聲勢浩大的開源浪潮淹沒了,他成了一個邊緣人物。
0 6
知行合一
其實,開源軟件運動的成功,就是斯托曼的成功。
沒有幾個人真正在乎“自由軟件”和“開源軟件”的真正區別,他大可以放下執念,摘取開源運動成功的果實。
但他沒有, 他拒絕和開源軟件有任何瓜葛,他依然高舉自由軟件的大旗,四處宣傳,奮力前行。
斯托曼今年已經68歲了,一直視金錢和名利為糞土,一生都去踐行自由軟件的理念。
他做的事情不被理解,甚至被人認為“傻”,但他也絕不動搖。
這就是知行合一的典范,這就是真正的傳奇。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.