新聞中心
我做出了一個可能讓很多人遺憾的決定。從今天開始,我曾經(jīng)開源放在 GitHub 上的代碼,除了教育性質(zhì)的代碼,全部進(jìn)入私有狀態(tài)。這些代碼包括 PySonar2,RubySonar 等等。從今以后,除非用于教育目的,我將不再開源任何代碼。當(dāng)然,你們已經(jīng)下載的那些代碼,仍然可以按照開源許可證免費(fèi)使用,然而***的改進(jìn)以及將來的新產(chǎn)品,將全部閉源。做出這個決定的大部分原因,是因為多次對人心的失望。

創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站設(shè)計、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的蒙城網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
PySonar2 一度處于開源狀態(tài),使用寬松的 BSD 和 Apache 版權(quán)。PySonar 的用戶包括了 Google,Sourcegraph,還有其它幾個我不能透露名字的做專業(yè)代碼管理工具的公司。很多人崇尚 BSD 這樣的寬松版權(quán),因為這樣可以***限度的傳播代碼。他們甚至把這作為了一種信仰,對于 GPL 這類嚴(yán)格限制商業(yè)用途的版權(quán)嗤之以鼻。甚至遮住眼睛對你說:“你的代碼是 GPL 的,我不能看!看了之后寫出一樣的代碼來,你會起訴我!” 然而多年的經(jīng)歷之后,我才發(fā)現(xiàn) BSD 并不是好的開源版權(quán),而 GPL 才是真正保護(hù)軟件“自由”的。這個故事要從 Sourcegraph 講起……
Sourcegraph 是一家做代碼管理工具的公司。他們初期的系統(tǒng),其實只是 PySonar 之上做了一個簡單的 web 包裝。把 PySonar 分析出來的信息倒到數(shù)據(jù)庫里面,然后通過 web 方式顯示給用戶。PySonar 本身早就有一個演示程序,可以生成互動的 HTML,所以其實 Sourcegraph 能做的事情,我很容易就可以做到,只不過多一些雜活而已。Sourcegraph 并沒有在 PySonar 之上增添很多的新東西,也無法做出 PySonar 這樣的核心技術(shù)。但是因為我一直不在乎 Python 這語言,也沒覺得這種工具有什么市場,所以一直沒有動手開發(fā)一套完整的服務(wù)。不是不能做,而是沒有動力去做。
BSD 的版權(quán)使得 Sourcegraph 的兩個創(chuàng)始人可以完全免費(fèi),***制的使用 PySonar。這樣的結(jié)果,使得我無法為 PySonar 收到任何的回報。后來 Sourcegraph 的兩個人找到我,想招我進(jìn)去,幫助他們制造 RubySonar 和改進(jìn) PySonar。這樣就開始了經(jīng)濟(jì)的不平衡。Sourcegraph 使用了 PySonar,按理我不需要另外做什么,就應(yīng)該有一定的回報。然而現(xiàn)在他們把我招進(jìn)去作為員工,我必須要做點其它事情,才能得到回報,也就是說我反倒成為了他們的打工仔。幾個月之后,我逐漸發(fā)現(xiàn)這兩個人的膚淺和不尊重。***在得到了最重要的技術(shù)改進(jìn)之后,兩個創(chuàng)始人翻臉不認(rèn)人,把我趕出了公司。
新的 PySonar2 里面已經(jīng)沒有了 Google 的代碼。由于對人心的失望,我曾一度把 PySonar2 的版權(quán)改為 AGPL。這是 GPL 的增強(qiáng)版,它要求任何使用這些代碼的人和公司,在對它做出改進(jìn)之后,必須把改進(jìn)的代碼能讓人下載。就算你在自己的服務(wù)器上運(yùn)行這些代碼,不把它作為產(chǎn)品提供給人,也一樣需要讓人能夠下載到改進(jìn)的代碼。
把版權(quán)改為 AGPL 之后,出現(xiàn)了一個奇怪的事情。申請美國綠卡的時候,我找以前 Google 的上司要一封“工作經(jīng)歷證明”。這本應(yīng)是一種公司應(yīng)該無條件提供給任何前員工的文件,然而我的舊上司卻對我說:“我可以給你這個證明,然而我想讓你給我一個好處。你的 PySonar2 現(xiàn)在改成了 AGPL 版權(quán),我們想用你的代碼,卻因為這個版權(quán)沒法用。你能否把版權(quán)改為 BSD 一類的,這樣很多人都可以用它?” 面對這樣的無理要求,我很鄙視。所以干脆沒要 Google 的工作經(jīng)歷證明,直接找其它公司開了證明。
又過了一段時間,我感覺 AGPL 似乎確實限制了 PySonar 的應(yīng)用,所以又把版權(quán)給換成了 BSD,進(jìn)而換成了 Apache,一種比 BSD 還要寬松的版權(quán)。剛換成 BSD,我就發(fā)現(xiàn)有一家代碼工具公司 fork 了 PySonar,***的 commit 正好是改為 BSD 版權(quán)的時候。這個公司從來沒聯(lián)系過我,從來沒感謝我,只是本地里在用 PySonar 來賺錢。曾經(jīng)一直在用 PySonar 的另一家公司的創(chuàng)始人 Z,當(dāng)天也發(fā)信來跟我說:“正在考慮給你版稅呢,結(jié)果你就換成 BSD 了。哈哈哈!” 這是什么意思呢?本來都要付錢給你了,結(jié)果你換了 BSD,所以我就不給你錢了,就是這個意思。不過他***還是象征性的給了一千美元。
我一直把 Z 作為朋友。平時如果他報告點 PySonar 的 bug,我樂意免費(fèi)給他改進(jìn)。我給他介紹投資人,甚至給他介紹妹子…… 我并沒有圖他什么,并沒有要求回報。我只是想積點德,將來總有好的后果吧。然而,前幾天當(dāng)我宣布離開美國的時候,我才發(fā)現(xiàn)我的好心,其實并沒有好報。Z 發(fā)信息來,說看我想回國,所以想招我進(jìn)他的公司。給我開了一個價,具體的數(shù)字我就不說了,不過這個工資,現(xiàn)在國內(nèi)是個程序員都能拿到。我想給那點錢,給他當(dāng)個顧問,關(guān)鍵時刻給點方向,隔幾個月改改 PySonar 的代碼也就算了,結(jié)果他要求我全職給他工作。嘲笑了他開得太低,結(jié)果得到的回答是:“你做出過什么真正的產(chǎn)品嗎?” 是的,PySonar 不是真正的產(chǎn)品。你在外面做個包裝界面,然后功勞都是你的了,我還得給你打工?哎,我再也不相信任何免費(fèi)用我代碼的人了。
這就是我用 BSD 版權(quán)發(fā)行有價值的代碼的辛酸史。由于這個原因,從今天起,我的代碼完全進(jìn)入閉源狀態(tài)。沒有人再能免費(fèi)得到 PySonar ***的改進(jìn),沒有人再能看見我***的技術(shù)。另外,PySonar 其實一直以來都有一個為開源的分支,里面含有對于靜態(tài)分析邏輯的重大改進(jìn)。從今以后,這一切都只能屬于我私有,它們其中一些將會成為我未來產(chǎn)品立于不敗之地的支柱。
網(wǎng)頁名稱:為什么我的代碼進(jìn)入閉源狀態(tài)
網(wǎng)頁網(wǎng)址:http://www.5511xx.com/article/dpesphi.html


咨詢
建站咨詢
