標籤:
每本軟體的著作裡,都會提到“開源軟體”,多數都會往哲學的層面上去解釋,相當的形而上。我想,開源這回事,不就是大家把代碼傳到網上,給人下載學習,之後有了Linux,Apache一系列牛逼作品嗎?這麼簡單接地氣的事情,為什麼要搞得那麼形而上呢? 開源也給我帶來了不少的困惑,很多商業軟體的授權費相當昂貴,而那些開源軟體,水平堪比商業軟體,那他們為什麼要開源而不去盈利呢?我總以為那就是共產主義心態。國外的大鬍子叔叔不僅是馬克思,還可以是程式員! 再後來,我自己也寫了一些自認為還不錯的小程式,剛開始覺得自己太厲害了。然而,軟體總有數不清的bug和改進點、我也嘗試過去推廣,然而因為不完善和種種問題,總是無疾而終。它就像嫁不出去的閨女一樣,養在深閨人未識。我總以為,是我的軟體做的不夠好,是我水平不夠高,再過幾年,軟體做得更完善了,總會發一筆大財的。 幾年過去了,我的水平確實提高了,軟體的功能也提升了一大截,然而,情況和幾年前沒什麼區別。對我來說,那是從50到100,對別人來說,好像是這個軟體修改了一下介面,版本號碼加了一些,本質上沒什麼區別。 我開始反思, 到底是哪裡出問題了。理想狀態下,我成立了公司去完善/推廣/銷售軟體,那麼可能會出現轉折,否則以我單人的能力,那是不可能的。那我是不是值得為這套軟體成立公司呢?應該不會,因為它只是個工具,還不值得我去開一家公司去完善它。 我相信,這也是很多程式員面臨的一樣的困境,想靠賣軟體盈利,就像路上的煎餅攤一樣簡單樸素,問題是放在10年前還有可能(記不記得30元一套的金山詞霸?),而現在絕不可能。我也許到處推廣,但最終可能也僅僅是某天我在咖啡廳裡的幾句談資,不可能有什麼大氣候。 如果pandas和ipython不開源,我現在也可能無法進入資料分析的殿堂,沒有Linux和眾多開源工具,世界也不會發展成這個樣子。我頓時明白了為什麼開源是一種哲學,它是一種“共贏”。對程式員來說,名譽和成長比賣軟體帶來的價值更大,那是一種認可感,造福世界的成就感,和眾人邀請他加入其公司的幸福感。對其他人來說,開源帶來了時間的節省,資訊的互動,實際的財富。 是啊,軟體這種無形的東西,它本身就是“資訊”,它如果能帶來更多更好的資訊,那麼它的價值就實現了。誠然,開創業公司,估值超高自然是人人皆嚮往的。但能實現一個造福眾多人的軟體,那也是人生一大幸事。 所以,我開了公用號和github,開始上傳那些之前視若珍寶的代碼,並認真地配圖和編寫文檔。或許在萬裡之外,有個一樣戴著眼鏡充滿激情的和我一樣的nerd,看到My Code開心地拍了桌子,大喊“f**king nice work!”到那個時候,其他事情還重要嗎?
開源軟體:資訊共贏的哲學