譯者 | 伊桑
毫無(wú)疑問(wèn),開(kāi)源哲學(xué)在編寫(xiě)代碼和生產(chǎn)軟件方面的優(yōu)點(diǎn)。現(xiàn)代計(jì)算核心的許多軟件包,從linux操作系統(tǒng)到MySQL,都是使用開(kāi)放共享和協(xié)作開(kāi)發(fā)的模式創(chuàng)建的。四十年來(lái),在開(kāi)放哲學(xué)的滋養(yǎng)下,偉大的代碼解決了任何關(guān)于開(kāi)源思想是否有效的問(wèn)題。
盡管開(kāi)源有其巨大之處,但它也并非沒(méi)有缺點(diǎn)。現(xiàn)在開(kāi)源已經(jīng)成為主流,讓我們考慮一下它的一些缺點(diǎn),與其說(shuō)是哲學(xué),不如說(shuō)是日常現(xiàn)實(shí)。以下是開(kāi)發(fā)人員在為開(kāi)源項(xiàng)目做出貢獻(xiàn)時(shí)可能會(huì)再三考慮的七個(gè)原因。
1、開(kāi)源不適用于云
今天的許多開(kāi)源許可證都產(chǎn)生于在云之前,當(dāng)時(shí)用戶(hù)通過(guò)下載并在桌面上運(yùn)行軟件來(lái)訪問(wèn)軟件。自那以后,云公司已經(jīng)找到了在保持其代碼更改所有權(quán)的同時(shí),釋放開(kāi)源風(fēng)氣的方法。一家大型云公司的一位開(kāi)源經(jīng)理頗為靦腆地告訴筆者,他們分發(fā)軟件,因此不需要共享源代碼。
正如Drupal(php語(yǔ)言編寫(xiě)的開(kāi)源內(nèi)容管理框架)公司CEO,在一次接受采訪時(shí)所說(shuō),“云技術(shù)的快速應(yīng)用實(shí)際上可能會(huì)阻礙開(kāi)源活動(dòng)”、“它將開(kāi)源開(kāi)發(fā)者的大量收入轉(zhuǎn)向了云供應(yīng)商”。
這里有幾十個(gè)云供應(yīng)商創(chuàng)建開(kāi)源項(xiàng)目的特殊版本以在云中轉(zhuǎn)售的例子。亞馬遜Web服務(wù)和Elasticsearch的創(chuàng)建者之間的分歧就相當(dāng)明顯。當(dāng)雙方無(wú)法達(dá)成協(xié)議時(shí),最后鬧掰,彼此單干了,現(xiàn)在有兩個(gè)有效版本的Elasticsearch代碼庫(kù)。
一些開(kāi)源擁護(hù)者正在通過(guò)制定更嚴(yán)格的許可證或修正案(如公共條款)來(lái)抵制云合作選項(xiàng)。我們可能會(huì)看到未來(lái)的改進(jìn),但這些改進(jìn)無(wú)助于原始開(kāi)源許可證下的遺留系統(tǒng)。
“公共條款”許可條件v1.0如下:
本軟件由許可方根據(jù)以下定義的許可證提供給您,但須滿(mǎn)足以下條件。在不限制許可證中的其他條件的情況下,授予許可證下的權(quán)利不包括,許可證也不授予您銷(xiāo)售軟件的權(quán)利。就上述內(nèi)容而言,“出售”是指行使許可證授予您的任何或所有權(quán)利,以收取費(fèi)用或其他代價(jià)(包括但不限于托管或咨詢(xún) / 支持軟件相關(guān)服務(wù)的費(fèi)用)向第三方提供其價(jià)值完全或?qū)嵸|(zhì)上來(lái)自軟件功能的產(chǎn)品或服務(wù)。許可證要求的任何許可證通知或歸屬也必須包括本通用條款許可條件通知。
2、開(kāi)源存在多樣性問(wèn)題
社區(qū)這個(gè)詞在開(kāi)源圈子里被廣泛使用,但這并不意味著開(kāi)源文化就是某種香格里拉。首先,開(kāi)源開(kāi)發(fā)者可能是一個(gè)激進(jìn)的群體:粗魯、分心、固執(zhí)己見(jiàn),甚至是徹頭徹尾的卑鄙。眾所周知,開(kāi)源存在著多樣性問(wèn)題,一些知名人士,諸如自由軟件運(yùn)動(dòng)的精神領(lǐng)袖斯托爾曼就被指控種族主義和性別歧視。
其次,當(dāng)個(gè)人以相對(duì)匿名的方式參與開(kāi)源項(xiàng)目,僅通過(guò)電子郵件或公告欄進(jìn)行交流時(shí),結(jié)構(gòu)性不平等可能不太明顯。但有時(shí)這種匿名會(huì)產(chǎn)生脫節(jié)的感覺(jué),這會(huì)使協(xié)作過(guò)程不如想象中的那樣令人愉快,也不那么包容。
3、社區(qū)建設(shè)和維護(hù)需要時(shí)間
許多企業(yè)公司將其產(chǎn)品的開(kāi)源版本作為“社區(qū)版”發(fā)布。這是一個(gè)很棒的營(yíng)銷(xiāo)工具,也是收集想法的好方法,有時(shí)也是改進(jìn)產(chǎn)品的代碼。然而,圍繞該項(xiàng)目建立一個(gè)真正的社區(qū)需要時(shí)間和資源。如果用戶(hù)和潛在貢獻(xiàn)者向在線社區(qū)公告欄發(fā)布問(wèn)題,他們希望得到答案。是的,許多貢獻(xiàn)都是本著開(kāi)源的精神自由做出的,但培育社區(qū)仍然需要時(shí)間。當(dāng)它運(yùn)行良好時(shí),結(jié)果可能是一個(gè)正在構(gòu)建偉大代碼的新興團(tuán)隊(duì),但在這一過(guò)程中通常有大量工作要做。這種權(quán)衡的一個(gè)結(jié)果是,較大的企業(yè)項(xiàng)目往往會(huì)主導(dǎo)該領(lǐng)域。他們可以通過(guò)小型公司無(wú)法管理的有償角色為社區(qū)模式提供資金。
4、開(kāi)源Mentors出奇的少
類(lèi)似地,許多開(kāi)發(fā)人員很樂(lè)意與任何人分享他們的代碼,但這并不意味著他們想幫助其他人真正學(xué)習(xí)。讓某人訪問(wèn)Git存儲(chǔ)庫(kù)需要幾分鐘的時(shí)間,但支持他們作為開(kāi)發(fā)人員和共同貢獻(xiàn)者的成長(zhǎng)是一項(xiàng)重要的承諾。有些項(xiàng)目甚至在其出資人協(xié)議中包含了一項(xiàng)條款,即出資人不應(yīng)期望獲得入職或支持,甚至不應(yīng)期望得到回答。
從本質(zhì)上講,為一個(gè)開(kāi)源項(xiàng)目做出貢獻(xiàn)就像是一個(gè)“大灌籃”:這里有大量的代碼行和一個(gè)問(wèn)題需要您解決。你會(huì)發(fā)現(xiàn)很少有評(píng)論來(lái)解釋發(fā)生了什么。謝謝,祝你好運(yùn)!
5、理想派也需要薪水
大多數(shù)開(kāi)源開(kāi)發(fā)者都是理想主義者,他們不受名聲和財(cái)富的驅(qū)使,但他們?nèi)匀恍枰谖蓓斚鲁燥埡退X(jué)。現(xiàn)實(shí)世界有許多物理限制,與開(kāi)源的自由共享精神不兼容。對(duì)于數(shù)字世界來(lái)說(shuō),“匱乏”可能是一個(gè)陌生的字眼,但對(duì)于現(xiàn)實(shí)生命形式來(lái)說(shuō),這是一個(gè)非常真實(shí)的物質(zhì)問(wèn)題。
對(duì)于小型堆棧和激情項(xiàng)目而言,開(kāi)源非常有效,因?yàn)樵谶@些項(xiàng)目中,沒(méi)有人期望得到報(bào)酬,但對(duì)于全職程序員支持的大型代碼庫(kù)來(lái)說(shuō),它可能不太適合。如果有太多用戶(hù)選擇免費(fèi)版本,整個(gè)項(xiàng)目可能會(huì)崩潰。
6、沒(méi)有什么是真正免費(fèi)的
在開(kāi)源環(huán)境中待久了,你可能會(huì)遇到縮寫(xiě)詞TANSTAAFL(There Ain't No Such Thing As a Free Lunch.),即“天下沒(méi)有免費(fèi)午餐”。理查德·史泰爾曼喜歡說(shuō),他想創(chuàng)建一個(gè)“像演講一樣自由,但不像啤酒那樣免費(fèi)”的軟件
在用戶(hù)下載并使用開(kāi)源軟件后,他們將開(kāi)始發(fā)現(xiàn)其局限性。有時(shí),代碼只需要一些小的改進(jìn)。有時(shí),它根本沒(méi)有提供正確的功能。沒(méi)有人想抱怨杯子只有半滿(mǎn),尤其是當(dāng)價(jià)格為零時(shí)。但是,在最后期限內(nèi)填滿(mǎn)剩余的半杯,可能會(huì)給開(kāi)發(fā)商帶來(lái)巨大的負(fù)擔(dān)。即使當(dāng)自由代碼讓你99%的時(shí)間達(dá)到目標(biāo)時(shí),最后的1%也可能是一個(gè)非常艱難的過(guò)程。
7、有些項(xiàng)目不應(yīng)該是開(kāi)源的
有位數(shù)據(jù)庫(kù)開(kāi)發(fā)人員告訴筆者,他從未真正考慮過(guò)開(kāi)源項(xiàng)目。他的客戶(hù)是一些擁有大量數(shù)據(jù)集的大公司。他們有預(yù)算,愿意付錢(qián)給他做這項(xiàng)工作。如果客戶(hù)想閱讀源代碼,他非常愿意讓他們閱讀。但他不想經(jīng)歷拆分項(xiàng)目正式、開(kāi)放版本的麻煩。
開(kāi)放源代碼版本適用于廣泛的開(kāi)發(fā)人員使用的代碼,他們可以幫助共同開(kāi)發(fā)代碼。但在某些情況下,金錢(qián)交換,是組織軟件研發(fā)工作的一種更簡(jiǎn)單、最終更可持續(xù)的方式。
原文鏈接:www.infoworld.com/article/3679870/7-downsides-of-open-source-culture.html