【社區專欄】王春生:如何選擇開源軟件協議
禅道團隊先後開發了 禅道項目管理軟件 、 蟬知企業門戶系統 和 然之協同管理系統 三款開源軟件産品。这三款産品分别面向企业的不同领域,其授权协议也略有不同。其中禅道和然之协同目前是以LGPL协议发布,而蟬知企業門戶系統则使用了我们自己拟定的协议。那我们是如何来选择開源軟件协议的呢?在此和大家分享一下我们关于開源軟件协议的一些考虑。
禅道項目管理軟件和然之协同是以LGPL协议发布的。为什么用这样的协议呢?我们来逐一分析一下。
常见的開源軟件协议有GPL, LGPL, AGPL, Apache, BSD, MIT。从授权的严格程度来讲,AGPL为严格,Apache、BSD和MIT授权比较宽松。
我们没有选择GPL协议和AGPL协议,是因为这两款协议过于严格,有一些公司会限制GPL协议软件的使用,不利于软件的推广。而BSD, Apache, MIT协议过于宽松,其他公司很容易会把代码拷贝,加以改动,然后发布一个类似的産品出来(尤其是在国内山寨风行的情况下面),而你又无法吸取衍生産品优秀的改动。综合考虑之下,我们为这两款软件选择了相对中庸的LGPL协议。
蟬知企業門戶系統开始的时候也是以LGPL协议发布的,但后来我们改成了自己拟定的协议。这是为什么呢?蟬知企業門戶系統比较特殊,它主要是帮助企业来搭建自己的企业官网。蝉知系统功能丰富、操作简单,有很多的建站公司或者个人工作室选择使用蝉知系统为他们的客户来搭建网站,我们非常欢迎这些朋友来使用蝉知系统。但往往有一些朋友使用蝉知系统搭建网站之后,会把蝉知系统的标志去掉。从我们産品宣传的角度来讲,我们还是希望大家能够保留蝉知的标志和链接,但LGPL协议无法限制这种行为。
還有一點,就是禅道項目和然之協同是內部使用的,大家並不太關心授權協議。但蟬知系統是對外使用的,用戶對授權協議比較敏感,但LGPL協議是英文的條款,國內很少有人能夠搞清楚具體的條款是什麽,後來我們重新擬定了蟬知系統的授權協議。這個協議用一句話來講的話就是:你可以用蟬知系統做各種事情,但必須保留蟬知系統的標志和鏈接,具體的協議條款大家可以參考 此頁內容。
除了上述問題之外,還經常有朋友問我們,你們接受不接受第三方作者的代碼?我們的回答是:不。我們爲什麽這樣做呢?也是有我們的考慮,主要是保證代碼版權的純粹性。很多比較成熟的開源軟件,都需要代碼提交者簽署相應的版權聲明才接受其提交的代碼的。
相反,看國內很多的開源軟件,往往都是把自己上班時候的代碼直接拿出來發布,其實這從法律上來講是有問題的。這些代碼是你的職務所得,沒有明確約定的話,代碼版權都是屬于公司所有。如果公司沒有簽署明確的開源軟件許可聲明,是不能隨便拿出來開源的。
基于此考慮,我們原則上是不接受第三方作者的代碼的,但我們也提供了更加靈活的插件機制。第三方的作者可以把自己的代碼以插件的形式發布出來,代碼的版權都歸作者所有,也可以開源,也可以收費,都很靈活,也保證了系統代碼版權的純粹性。這樣後續我們如果有一些大的舉措,比如若幹年後我們也許會把代碼捐獻給某個基金會,因爲代碼都是我們公司所有的,就不用大費周折再找相應的代碼提交者簽署許可。
開源軟件協議的選擇往往和作者的目的有關系。作爲商業公司,在選擇授權協議的時候應該謹慎一些更好。如果大家更多的是興趣愛好,可以選擇BSD之類寬松的協議。(本文發布時較原文有改動)
【編輯注:開源協議,是開源項目發展的一個重要保證,但在大陸知識産權保護較弱的情況,國內開源項目作者也往往不重視開源協議的選擇。如果不重視開源協議,不重視對開源項目的保護,則對開源項目和開源社區是一個重大隱患,雖然在當前情況下即使選擇了恰當的開源協議,也會遭遇踐踏開源協議的情況。】
本系列文章:

