開(kāi)源文化需要避免的七個(gè)缺點(diǎn)
譯文譯者 | 李睿
審校 | 孫淑娟
開(kāi)源軟件在編寫(xiě)代碼和生產(chǎn)軟件方面具有的優(yōu)點(diǎn)是毋庸置疑的。許多處于現(xiàn)代計(jì)算核心的軟件包(從Linux操作系統(tǒng)到MySQL)都是使用開(kāi)放共享和協(xié)作開(kāi)發(fā)的模式創(chuàng)建的。40年來(lái),在開(kāi)放文化的熏陶下,開(kāi)源代碼解決了關(guān)于開(kāi)源思想是否有效的問(wèn)題。

盡管開(kāi)源軟件有很大的好處,但并非沒(méi)有缺點(diǎn)。如今開(kāi)源軟件已經(jīng)成為主流,人們需要了解開(kāi)源文化一些缺點(diǎn),與其說(shuō)是文化,不如說(shuō)是現(xiàn)實(shí)。以下是開(kāi)發(fā)人員在為開(kāi)源項(xiàng)目做出貢獻(xiàn)時(shí)需要認(rèn)真思考的7個(gè)原因。
1.開(kāi)源不適用于云計(jì)算
當(dāng)前的許多開(kāi)源許可證都是在云計(jì)算技術(shù)出現(xiàn)之前獲得的,當(dāng)時(shí)用戶(hù)通過(guò)下載軟件并在桌面設(shè)備上運(yùn)行軟件來(lái)訪(fǎng)問(wèn)。自此以后,云計(jì)算供應(yīng)商已經(jīng)找到了免費(fèi)利用開(kāi)源軟件的方法,同時(shí)保持他們的代碼更改的專(zhuān)有性。一家大型云計(jì)算供應(yīng)商開(kāi)源業(yè)務(wù)主管表示,他們通常是分發(fā)軟件,因此不需要共享源代碼。
如今,有許多云計(jì)算供應(yīng)商創(chuàng)建開(kāi)源項(xiàng)目的特殊版本并在云中轉(zhuǎn)售的例子。最明顯的分歧之一是AWS和Elasticsearch創(chuàng)建者之間的分歧。當(dāng)雙方無(wú)法達(dá)成協(xié)議時(shí),最終不得不分道揚(yáng)鑣,因此現(xiàn)在有兩個(gè)有效版本的Elasticsearch代碼庫(kù)。
一些開(kāi)源倡導(dǎo)者正在通過(guò)制定更嚴(yán)格的許可證或修正案(例如公共條款)來(lái)抵制云共享。人們可能會(huì)看到未來(lái)的改進(jìn),但這些改進(jìn)無(wú)助于原始開(kāi)源許可證下的遺留系統(tǒng)。
2.開(kāi)源存在多樣性問(wèn)題
“社區(qū)”這個(gè)術(shù)語(yǔ)在開(kāi)源圈子里被廣泛應(yīng)用,但這并不意味著開(kāi)源文化是理想之境。開(kāi)源開(kāi)發(fā)人員可能是一個(gè)激進(jìn)的群體:粗魯、分心、固執(zhí)己見(jiàn),甚至是刻薄和卑鄙。眾所周知,開(kāi)源軟件存在多樣性問(wèn)題,某些知名人士被指控具有種族主義和性別歧視傾向。當(dāng)個(gè)人以相對(duì)匿名的方式為開(kāi)源項(xiàng)目做出貢獻(xiàn),僅通過(guò)電子郵件或公告欄進(jìn)行交流時(shí),結(jié)構(gòu)不平等可能不那么明顯,但這種匿有時(shí)名會(huì)產(chǎn)生脫節(jié)的感覺(jué),這會(huì)使協(xié)作過(guò)程不如想象中的那樣令人愉快,也不那么包容。
3.社區(qū)的建立和維護(hù)需要時(shí)間
許多企業(yè)將其產(chǎn)品的開(kāi)源版本作為“社區(qū)版本”發(fā)布。這是一個(gè)很好的營(yíng)銷(xiāo)工具,也是一個(gè)收集用戶(hù)意見(jiàn)的好方法,有時(shí)還可以為改進(jìn)產(chǎn)品編寫(xiě)代碼。然而,圍繞這個(gè)項(xiàng)目建立一個(gè)真正的社區(qū)需要時(shí)間和資源。如果用戶(hù)和潛在貢獻(xiàn)者在在線(xiàn)社區(qū)公告欄上提出問(wèn)題,他們希望獲得答案。許多貢獻(xiàn)都是本著開(kāi)源的精神提供的,但構(gòu)建和培育社區(qū)仍然需要一些時(shí)間。當(dāng)它運(yùn)行良好時(shí),其結(jié)果可能是一個(gè)快速發(fā)展的開(kāi)發(fā)團(tuán)隊(duì),將構(gòu)建偉大的代碼,但在這個(gè)過(guò)程中通常有大量的工作要做。這種權(quán)衡的一個(gè)結(jié)果是,更大的企業(yè)項(xiàng)目往往會(huì)主導(dǎo)該領(lǐng)域。他們可以通過(guò)小企業(yè)無(wú)法管理的有償角色為社區(qū)模式提供資金。
4.開(kāi)源導(dǎo)師出奇地少見(jiàn)
許多開(kāi)發(fā)人員通常很樂(lè)意與任何人分享他們的代碼,但這并不意味著他們?cè)敢鈳椭鷦e人學(xué)習(xí)。允許某人訪(fǎng)問(wèn)Git存儲(chǔ)庫(kù)只需要幾分鐘,但是支持他們作為開(kāi)發(fā)人員和貢獻(xiàn)者的成長(zhǎng)是一項(xiàng)重要的承諾。有些項(xiàng)目甚至在他們的貢獻(xiàn)者協(xié)議中包含了一項(xiàng)條款,即貢獻(xiàn)者不應(yīng)該期望能夠加入或得到支持,甚至他們的問(wèn)題也不會(huì)得到回答。從本質(zhì)上來(lái)說(shuō),為開(kāi)源項(xiàng)目做貢獻(xiàn)就像是把水灌入池塘的深處:有大量的代碼行和需要解決的問(wèn)題。你可能會(huì)發(fā)現(xiàn)很少有評(píng)論來(lái)解釋發(fā)生了什么。
5.即使是理想主義者也需要獲得報(bào)酬
大多數(shù)開(kāi)源軟件開(kāi)發(fā)人員都是理想主義者:他們不會(huì)受名利的驅(qū)使,但需要維持生計(jì)。現(xiàn)實(shí)世界有許多限制,與開(kāi)源軟件的免費(fèi)共享精神并不兼容。對(duì)于數(shù)字世界來(lái)說(shuō),稀缺性可能是一個(gè)陌生的概念,但對(duì)于開(kāi)發(fā)人員來(lái)說(shuō),這是一個(gè)非?,F(xiàn)實(shí)的問(wèn)題。
開(kāi)源軟件對(duì)于開(kāi)發(fā)小型堆棧和項(xiàng)目非常有效,因?yàn)樵谶@些項(xiàng)目中,很少有人期望獲得報(bào)酬,但對(duì)于全職的開(kāi)發(fā)人員支持的大型代碼庫(kù)來(lái)說(shuō),可能不太適合。如果有太多用戶(hù)選擇免費(fèi)版本,整個(gè)項(xiàng)目可能會(huì)崩潰。
6.沒(méi)有什么是真正免費(fèi)的
在開(kāi)源社區(qū)中,人們可能會(huì)看到“TANSTAAFL”這個(gè)縮寫(xiě)術(shù)語(yǔ),意思是“世上沒(méi)有免費(fèi)的午餐”。 當(dāng)用戶(hù)下載并使用開(kāi)源軟件之后,他們會(huì)開(kāi)始發(fā)現(xiàn)它的局限性。有時(shí)候,代碼只需要一些小改進(jìn)。有時(shí),開(kāi)源軟件根本沒(méi)有適合的功能。開(kāi)源軟件在免費(fèi)提供時(shí)即使功能不全也很少有用戶(hù)抱怨,但完整地開(kāi)發(fā)開(kāi)源軟件對(duì)開(kāi)發(fā)者來(lái)說(shuō)是一個(gè)巨大的負(fù)擔(dān)。即使免費(fèi)開(kāi)源軟件實(shí)現(xiàn)了99%的目標(biāo),最后的1%的開(kāi)發(fā)工作對(duì)于開(kāi)發(fā)人員來(lái)說(shuō)也可能是一個(gè)非常艱難的過(guò)程。
7.有些項(xiàng)目不應(yīng)該是開(kāi)源的
一位數(shù)據(jù)庫(kù)開(kāi)發(fā)人員表示,從未真正考慮過(guò)開(kāi)發(fā)開(kāi)源項(xiàng)目,他的客戶(hù)是幾家擁有大量數(shù)據(jù)集的大公司。他們有充足的預(yù)算,愿意付費(fèi)支持他完成開(kāi)發(fā)工作。如果客戶(hù)想要獲得源代碼,他非常愿意提供。但他不想經(jīng)歷拆分開(kāi)源項(xiàng)目正式版本的麻煩。
開(kāi)源版本適合于開(kāi)發(fā)人員廣泛使用的代碼,他們可以幫助共同開(kāi)發(fā)代碼。然而,在某些情況下,獲得報(bào)酬進(jìn)行開(kāi)發(fā)才是一種更簡(jiǎn)單、更可持續(xù)的開(kāi)發(fā)軟件的工作方式。
原文標(biāo)題:??7 downsides of open source culture??,作者:Peter Wayner































