開(kāi)發(fā)者血淚控訴:千星項(xiàng)目被微軟“白嫖”!大量代碼相似,測(cè)試用例直接拷貝!開(kāi)發(fā)者如何避坑?網(wǎng)友強(qiáng)調(diào):千萬(wàn)別給大廠免費(fèi)打工
原創(chuàng) 精選編輯 | 伊風(fēng)
微軟再次被指“抄襲”開(kāi)源項(xiàng)目,這次主角是一個(gè)名不見(jiàn)經(jīng)傳的獨(dú)立開(kāi)發(fā)者。
微軟先是找他談“合作”,然后便默不作聲地推出了一個(gè)類似產(chǎn)品。而這位開(kāi)發(fā)者在巴黎的 KubeCon 大會(huì),目睹了自己的開(kāi)源項(xiàng)目被微軟抄襲并以新的名稱出現(xiàn)了——獲得的只有一個(gè)致謝。
他意識(shí)到:這個(gè)項(xiàng)目其實(shí)是微軟 fork 了自己的開(kāi)源項(xiàng)目。
這段經(jīng)歷在Hacker News上引發(fā)了爆炸性的討論。
圖片
評(píng)論區(qū)有大量開(kāi)發(fā)者討論自己被“借用”甚至被“白嫖”的經(jīng)歷——這不只是 Spegel 的問(wèn)題,而是整個(gè)開(kāi)源模式的結(jié)構(gòu)性問(wèn)題。
圖片
有類似經(jīng)歷的開(kāi)發(fā)者憤慨地強(qiáng)調(diào)“Don’t work for free(不要免費(fèi)干活)。”
“一些專業(yè)人士在早期云計(jì)算時(shí)代就開(kāi)始做這類工作。我當(dāng)時(shí)只是想解決自己的問(wèn)題,也不想把它變成一門生意,所以我很樂(lè)意以開(kāi)源軟件的形式發(fā)布它。
后來(lái)微軟一位主管,負(fù)責(zé)多個(gè)產(chǎn)品團(tuán)隊(duì)的那種,聯(lián)系我說(shuō)想“合作”。我說(shuō)很樂(lè)意,不過(guò)可以先看看我的咨詢協(xié)議。他們對(duì)我的報(bào)價(jià)有點(diǎn)嘟囔,我就直接重申這是我的費(fèi)率。經(jīng)過(guò)一番法律方面的扯皮,他們最終簽了合同,我為他們做了一個(gè)兩天的研討會(huì),解答了一堆問(wèn)題,然后他們付了錢。
如果他們真的很想要你,他們會(huì)付錢的。”
那么,這篇博客講述了怎樣的“踩坑”故事,開(kāi)源作者又該如何維護(hù)自己的權(quán)益?
事件回顧:談合作后微軟推出類似項(xiàng)目,與源碼大量相似!
博客作者Philip Laine所開(kāi)發(fā)的獨(dú)立項(xiàng)目 Spegel, 是一個(gè)旨在解決 Kubernetes 集群中鏡像分發(fā)瓶頸的開(kāi)源項(xiàng)目。
其靈感萌生于Kubernetes 在高并發(fā)下拉鏡像的倉(cāng)庫(kù)宕機(jī)問(wèn)題, Spegel通過(guò)采用 P2P 分發(fā)機(jī)制,減少了對(duì)中心化鏡像倉(cāng)庫(kù)的依賴。
當(dāng)微軟主動(dòng)聯(lián)系Philip Laine時(shí),作者一度非常激動(dòng)。他一度與一位微軟工程師保持溝通,幫助他們運(yùn)行 Spegel,并回答他們提出的架構(gòu)問(wèn)題。
他原本期待微軟會(huì)對(duì)項(xiàng)目有所貢獻(xiàn),換來(lái)的確實(shí)微軟方面長(zhǎng)久的沉寂。
直到Philip參加巴黎的 KubeCon 大會(huì),才發(fā)現(xiàn)“房子塌了”,他在參與一場(chǎng)關(guān)于加速鏡像分發(fā)策略的演講時(shí),才了解到是微軟同樣開(kāi)發(fā)了一個(gè) Kubernetes 容器內(nèi)容的 P2P 分發(fā)工具——Peerd。
而作者收到的只有PPT頁(yè)尾對(duì)他本人和 Spegel 的致謝,仿佛微軟是在該啟發(fā)下獨(dú)立開(kāi)發(fā)的。
然而,作者在深入研究后發(fā)現(xiàn),完全不是這么回事!Peerd中的一些函數(shù)簽名和注釋,幾乎和Philip自己寫的一模一樣!甚至,就連Peerd的一些測(cè)試用例都直接來(lái)自作者的Spegel項(xiàng)目(作者說(shuō),而且直到今天這些引用仍然存在)。
作者無(wú)奈地表示,Spegel 是以 MIT 協(xié)議發(fā)布的。根據(jù)該協(xié)議,允許其他人 fork 和修改項(xiàng)目,而不要求他們將改動(dòng)反饋給原項(xiàng)目。作者選擇 MIT 協(xié)議的原因是協(xié)議簡(jiǎn)單且寬松。
盡管如此,微軟在使用其代碼時(shí)未給予充分署名,已經(jīng)違反了開(kāi)源社區(qū)的道德規(guī)范。而且Peerd 項(xiàng)目的出現(xiàn)給新用戶帶來(lái)了很多混淆。
在微軟巨大的品牌影響力面前,Spegel 想要爭(zhēng)取自己的一席之地,幾乎舉步維艱。
不過(guò),即使困難重重,作者目前仍在堅(jiān)持維護(hù) Spegel,項(xiàng)目有 1.7k star、千萬(wàn)次下載,并開(kāi)啟了 GitHub Sponsors。
他正在考慮更換協(xié)議,也呼吁開(kāi)發(fā)者更謹(jǐn)慎地選擇許可。
微軟與開(kāi)源的歷史糾葛:曾稱Linux為“癌癥”,購(gòu)入GitHub成功“洗白”
其實(shí),微軟過(guò)去在開(kāi)發(fā)者社區(qū)里名聲很差。
最典型的莫過(guò)于 2001 年,時(shí)任微軟首席執(zhí)行官史蒂夫·鮑爾默(Steve Ballmer)在接受《芝加哥太陽(yáng)時(shí)報(bào)》采訪時(shí),曾將 Linux 描述為“癌癥”,并表示:“Linux 是一種癌癥,它在知識(shí)產(chǎn)權(quán)意義上附著于它所接觸的一切。”
他認(rèn)為,Linux 所采用的 GNU 通用公共許可證(GPL)具有“病毒性”,因?yàn)樗笏醒苌髌芬脖仨氁韵嗤脑S可證發(fā)布,這可能迫使企業(yè)將其專有軟件開(kāi)源。
圖片
鮑爾默的這一言論在當(dāng)時(shí)引發(fā)了廣泛爭(zhēng)議,被視為微軟對(duì)開(kāi)源軟件的敵對(duì)態(tài)度。
然而,隨著開(kāi)源軟件的廣泛應(yīng)用,微軟逐漸了改變立場(chǎng)。2018 年,微軟以 75 億美元收購(gòu)了 GitHub,成為開(kāi)源社區(qū)的重要參與者。
但是,每當(dāng)博客控訴的事件再次涌現(xiàn),人們還是情不自禁的吐槽——“微軟沒(méi)有變,又在干老把戲了?!?/p>
開(kāi)源項(xiàng)目被抄襲的深層矛盾何在?開(kāi)發(fā)者如何避坑?
博客作者Philip遇到的抄襲事件并不是孤例,Spegel 事件揭示了開(kāi)源社區(qū)與大型科技公司之間長(zhǎng)期存在的深層矛盾。
開(kāi)源許可證(如 MIT 協(xié)議)在法律上允許他人自由使用、修改和分發(fā)代碼,甚至用于商業(yè)目的。
然而,這種自由也可能被濫用,大廠在商業(yè)利益的趨勢(shì)下,其行為更容易違背開(kāi)源社區(qū)的道德規(guī)范,例如將直接將開(kāi)源項(xiàng)目進(jìn)行商業(yè)化改造等等。
而獨(dú)立開(kāi)發(fā)者在面對(duì)大型科技公司時(shí),往往處于不利地位,難以維護(hù)自身權(quán)益。此外,獨(dú)立開(kāi)發(fā)者通常缺乏足夠的資源來(lái)維持項(xiàng)目的持續(xù)發(fā)展,尤其是在項(xiàng)目被大公司“借用”后,原項(xiàng)目的關(guān)注度和支持可能會(huì)受到嚴(yán)重稀釋。
為避免類似情況的發(fā)生,獨(dú)立開(kāi)發(fā)者需要有自己的避坑方法:
首先,更謹(jǐn)慎地選擇合適的許可證:如上文中提到的 GPL,可以強(qiáng)制要求衍生項(xiàng)目開(kāi)源。
其次,可以尋求開(kāi)源社區(qū)支持,獲得更多的資源:如 GitHub Sponsors等方式獲得社區(qū)的經(jīng)濟(jì)支持。
最后,和大公司合作談報(bào)酬也是開(kāi)發(fā)者的必修課。在與企業(yè)合作時(shí),記得簽訂正式的咨詢或合作協(xié)議,確保自身權(quán)益。
圖片
正如一位在大型科技公司與第三方合作的開(kāi)發(fā)者所言:
“真正讓你拿到報(bào)酬的過(guò)程很簡(jiǎn)單:對(duì)方找他的上級(jí)打聲招呼說(shuō)‘可以’,然后財(cái)務(wù)部就能走流程。他們不會(huì)因?yàn)槟阋獔?bào)酬就拒絕你——這就是做生意,企業(yè)就是為服務(wù)付錢的。如果他們連談都不談就拒絕你,那他們根本不是真心的,和他們合作也不會(huì)有好結(jié)果。”