原始碼被倒賣,大廠薅羊毛,開源真的只能被予取予求?

贊 回覆發表於2020-03-24

今天看到一篇文章《開源專案在閒魚、b 站上被倒賣?這是什麼騷操作?》,我突然想起了之前兩個類似的案例,發現群眾的開源知識普及依然不足,借這個機會再聊聊開源,從開源著作權人的角度做一次討論。 

案例 1:倒賣開原始碼

本案例中,作者十三發現自己開源的程式碼被販賣,一臉鬱悶。先不討論這些倒賣者的行為,筆者從作者提供的程式碼託管官網上看到其開源許可證是 MIT。

原始碼被倒賣,大廠薅羊毛,開源真的只能被予取予求?

MIT 作為一個寬鬆型開源許可證,授予使用者幾乎無限制的許可權。也就是說倒賣者的行為固然讓人討厭,但其確實是可以這麼做的。當然,作者十三除了困惑於開源的東西為何還有人拿去賣錢以及竟然還有人買之外,整體上是淡定、大度的。而倒賣者利用的正是大眾的這種專業知識的缺失和資訊的不對稱性,嚴格意義上這是存在經濟正當性的。 

案例 2:王垠閉源

這個案例是 2017 年的舊聞,但很具代表性。BSD 許可證開源的軟體被商業公司商業使用,還聘請了原開發者,最後鬧的雞飛狗跳。

原始碼被倒賣,大廠薅羊毛,開源真的只能被予取予求?

注:原博文《為什麼我的程式碼進入閉源狀態》地址已經 404 無法訪問,大家可以搜尋相關轉載。

王垠此人我不甚瞭解,據說曾經國內人氣非常高,知乎、v2ex、csdn 部落格上到處都有對他的評價和爭論。但至少從這篇帖子可以看出,其對開源的理解很淺、也很狹隘(在 2017 年時,不代表現在)。其對開源抱有不該有的幻想,期待過高。 

案例3:swoole 修改開源協議

這個案例也是 2017 年的,以 Apache 許可證開源的軟體 swoole(撰文時經核實 swoole 依然是 Apache 許可證),與其復刻分支版本之間紛爭。

原始碼被倒賣,大廠薅羊毛,開源真的只能被予取予求?

這個案例更像各種 Android 釋出版與 Google Android OS 之間的關係,以寬鬆型許可協議開源的軟體被各種修改版騷擾、蹭熱度的現象很普遍。 

開源知識普及之路漫長

以上三個案例都可以稱之為開發者的控訴,暫不評論其控訴是否合理。僅以這些事件本身以及在網上引起的紛爭,都說明距離開源在國內普及,還有很長的路要走。但值得欣慰的是,從 2017 年到 2020 年我們看到了這種進步,案例 1 中的作者對開源的理解上雖有偏頗,但並沒有出現知識或法律方面的硬傷。 

從開源軟體概念引入中國,到近幾年開源運動如火如荼的開展,已有幾個年頭。但據筆者與企業及業內人士的接觸發現,公眾對開源的認知和理解程度依舊參差不齊。究其原因有以下幾點:

  1. 大部分關注開源的人,更多的是關注技術,不會關注其背後的許可證問題;
  2. 開源許可證更偏向法律,真正做技術的不關注、也不懂;
  3. 開源許可證法律條文晦澀難懂,不容易理解;
  4. 懂技術、會看程式碼的專利、著作權、商標等領域的律師甚少,沒有技術背景的律師縱使法律水平再高,在理解涉及開源軟體相關問題時也力不從心;
  5. 開源領域國內訴訟不多,沒有充分引起大部分企業、學界等人員的重視;
  6. 也因為訴訟少,經濟驅動力有限,很難吸引律師深入研究這一領域。重賞之下必有勇夫,若有足夠的利益驅動,修個計算機學位又何妨,或者報個程式碼速成班也不是不可能吧。

筆者有緣在多年前接觸開源治理、合規問題,時不時看到網上爆出淺層次開源“事故”,說明大眾的開源知識有限。今天蹭個熱乎勁,再探討一下開源基礎知識(開源科普的知識網上並不少,沒人關注歸根結底還是這個領域內生動力不足所致)。既然內生動力不足,就靠外部熱點的外部動力吧。

開源“事故”,你是否理解開源?

開源是什麼?

開源就是奉獻,無私或有私的奉獻。此處不接受反駁。

開源運動起源於自由軟體運動,自由軟體運動的發起人理查德·馬修·斯托曼Richard Matthew Stallman是自由軟體運動精神領袖。自由軟體運動所要反對的就是後來以比爾蓋茲(曾經)為代表的軟體私有化運動。所以說,自由軟體是旗幟鮮明的追求奉獻、共享和軟體自由的。

開源運動的興起是自由軟體運動向商業化的妥協(可以這麼說,畢竟經濟基礎決定上層建築),所以說開源軟體運動雖然有別於曾經的自由軟體運動,奉獻和協作依然深深的烙在其血液裡。如果你無法理解這一點,就再看 10 遍開源軟體的定義(直到看懂為止)。

開源運動淡化了自由軟體運動烏托邦式的理想主義,穿上了實用主義的外衣,畢竟空洞的理想是填不飽肚子的。

開源“事故”,背後的起因

網上時不時爆出的開源“事故”大都歸於兩類:

型別一:批判拿來主義者坐收漁利、不勞而獲、販賣別人勞動成果……。這一類主角,多是軟體開發者自己,站在自己的立場上看待開源軟體的使用者(合法使用者、不合法使用者)。

該類“事故”的原因有:

  1. 軟體的開發者沒有充分理解開源的要義;
  2. 對開源許可證不理解,開源自己軟體時沒能正確選擇許可證,導致自己有被白piao的感覺;
  3. 想借助大眾或社群的力量優化自己的軟體,獲得免費勞動力;
  4. 想借助開源擴大自己影響力(自我營銷),卻沒考慮為此要付出的代價;
  5. 看到其他人利用自己的開源軟體獲利,心理上有些許不平衡。

型別二:批判開源軟體收費、許可證不人性,批判嚴格型許可證的傳染性像病毒、吸血鬼、耍流氓,對別人行使著作權或協議約定的行為憤憤不平。這一類人,基本是拿來主義者,同樣站在自己的立場上看待開源軟體的開發者(仁慈的開發者、邪惡的開發者)。

該類“事故”的原因有:就是想白 piao 而已,因為你完全有選擇用與不用的權力。

這兩類“事故”的產生都源於沒能深入理解開源運動的精髓和要義,純粹的從利己主義出發思考問題,沒有做到換位思考。忽略了開源的初衷:奉獻和共享。

現實中,經常發生這樣的事情:對同一個人,作為開源的使用者時他們常常討厭 GPL 許可證,因為限制太多;作為開源軟體開發者時又喜歡 GPL 的安全感,討厭 MIT、BSD 等許可證讓自己被白 piao 了卻投訴無門。 

開發者和使用者的權利義務

開源軟體首先是開發者的勞動成果,是擁有著作權的。開源一定意義上就是奉獻,每一個開源軟體使用者都是開源的受益者。面對這種奉獻,你需要做的就是尊重。但開源的使用者並不必然要求是高尚的、無私的,這種尊重基於開發者選擇的開源許可證在合規的前提下行使權利,在尊重權利人的同時實現共贏和自身利益最大化。

而作為開源軟體的開發者,也不必然要求是高尚的、無私的,開發者可以基於自己的目的來選擇適當的開源協議。選擇開源,就要審視自己內心深處的想法,開源的動機和目的是什麼?後果是什麼?……慎重的思考了這些問題後,還需要清楚的知道選擇寬鬆型的許可證可能要面對的各種問題。

開源使用者是純粹的受益者,即便是抱怨無非是對嚴格型許可證發發牢騷而已。而開源的開發者往往顯得更值得同情,一般是從道義上(如案例 3)以及經濟利益上(如案例 1、2)體現。但這就是開源運動執行的機制,它肯定不完美,但被證明是行之有效的。針對開源開發者,你需要做的就是當別人違法的時候拿起法律的武器捍衛自己的權利,當別人沒有違法的時候,你心裡再不爽也要保持淡定。

當然,諸如前述案例讓人糟心的事情肯定很多,開發者也不是束手無策:

比如案例 1 中新蜂商城的作者,選擇了 MIT 這個非常寬鬆的許可證。就意味著,其他人幾乎可以拿來做任何事情,包括賣錢。但你依然有以下權利:

  1. 不準拿你的大名做推廣,或者類似名字這種具有身份意義、獨特標識作用的符號;
  2. 如果作品真的好且有市場,作者完全可以自己經營,將自己的品牌做大;
  3. 別人賣的了你的原始碼賣不了你的實力,你可以不斷迭代升級,原始碼和服務提供一站式解決方案。其實,現實中我們熟悉的開源軟體大都如此,比如 Android、Linux 等;
  4. 樂見其成,畢竟開源就是奉獻自己的勞動成果讓人使用,二手販子們所做的事與開源者的目標是一致的。當然如果販子們聲稱是自主原始碼云云(國內拿開源的東西聲稱自主開發的太多了),那必然是違法的,開源者可以大膽的拿起法律的武器。

主動開源,你真的準備好了嗎?

基於國內的現實狀況,筆者以往更多的是將精力放在幫助企業和開發者合規的使用和利用開源。因為我們曾經都是開源的受益者,需要基於合法、合規的前提汲取營養、學習知識。

目前,國內越來越多企業或個人開始思考反哺開源社群,這是非常好的開始,說明我們從受益者開始變為奉獻者。但現實中這些才華橫溢的開發者在開源中難免遇到案例中的問題,一旦遇到將嚴重挫傷其開源的積極性。

因此,開源開發者在主動開源之前,更需要深刻理解開源,明確自己開源的目的以及可能面對的潛在問題等。在慎重思考自己開源的目的和對開源後各種問題的考量後,選擇適合自己的許可證。

以下是幾個典型的開源動機面臨的潛在風險:

  1. 想借助大眾或社群的力量優化自己的軟體,獲得免費勞動力
    開源軟體千千萬,真正取得成功或大眾認可的軟體鳳毛麟角,不能說這種目的動機不純,至少實現的可能性甚微。更多的可能是根本沒有人看得上你的專案。
  2. 想借助開源擴大自己影響力(自我營銷)
    這可能是開源開發者,包括大企業做開源的一個非常重要的目的。具體能否實現,就看你的水平有多高,實力是否匹配自己的夢想。
  3. 基於自己牛逼的軟體,打造生態。
    這也是大部分企業的終極夢想,就像第一條所述,大部分的開源軟體都歸於路人甲,能否實現自己的生態夢取決於你的軟體到底如何,能否支撐一個生態、夠吸引外圍群落。
    即便這些都滿足了,還要思考一點,你自己的實力能否持續主導這個生態的發展。因為,開源社群的主導力是由實力說話的,如果你無法保持持續的創造力,別人fork一下就可能成為新的盟主而把你晾在一邊坐冷板凳。Google 的 Android 生態就是道理,Google 對 Android 生態的領導力是建立在其持續的創造力之上的。
  4. Just for fun
    最純粹的開源。如果你開源軟體的目的很單純,就是因為喜歡而開源。那單純的你需要知道不同開源許可證開源的後果。若別人拿你的開源軟體去賣錢你也不要太上頭,因為這是允許的,當然更不能看到別人賺了一大筆錢心裡就不平衡了。就像大把的企業靠著林納斯·本納第克特·託瓦茲Linus Benedict Torvalds Just for fun 的軟體 Linux 和 Git 賺了大筆的錢,你能做的就是樂見其成。

開源不僅僅是程式碼,更是人品和實力,也是策略和格局。希望每一個奉獻和使用開源的你,都能感受到這個世界的善意。以上是基於本次熱點,針對使用開源以及主動開源分享的點滴思考和建議。有興趣可以找我討論溝通。


付欽偉,集慧智佳高階諮詢師、專利代理人,擅長專利分析佈局、FTO調查與風險應對、專利資訊應用、開源軟體風險與合規指導。

原始碼被倒賣,大廠薅羊毛,開源真的只能被予取予求?

原始碼被倒賣,大廠薅羊毛,開源真的只能被予取予求?

相關文章