贡献开源项目没那么简单,你要负责到底
從長遠(yuǎn)角度來看,開源貢獻(xiàn)必須是一條雙行道。然而最近的統(tǒng)計顯示,公司對開源項目的貢獻(xiàn)遠(yuǎn)遠(yuǎn)低于企業(yè)對開源代碼的使用。隨著越來越多的公司加大對開源項目的貢獻(xiàn)力度,這里有必要揭穿開源貢獻(xiàn)一些常見的誤解。
1. 開源早已賺足了眼球
1964年,一位名叫Kitty Genovese的年輕女子成為公眾冷漠態(tài)度的受害者,這一現(xiàn)象引發(fā)了一場“旁觀者效應(yīng)”的大討論。簡單地說,這一術(shù)語描述的現(xiàn)象就是表明人們在周圍有足夠旁觀者存在的時候自己不愿主動采取措施。
如果你明白上面所說的話,你就能想象得出是什么在一定程度上促成了Heartbleed的發(fā)生,這對互聯(lián)網(wǎng)是一種威脅。開源軟件在IT行業(yè)可以提供足夠的眼球,原則上這些眼球是用來發(fā)現(xiàn)安全漏洞和缺陷的。然而,很多人利用這個想法采取了極端手段,在很多企業(yè)嚴(yán)重依賴的開源項目上做手腳,造成難以想象的后果。
由一小群志愿者在沒有大量捐款或外部貢獻(xiàn)的情況下維護(hù)著OpenSSL項目,使其形成了一個網(wǎng)絡(luò)安全的核心部位。從本質(zhì)上說,它已成為一個“旁觀者效應(yīng)”的受害者,因為很多人都相信會有人去貢獻(xiàn)這個項目以確保它是安全的。正如Lou Shipley告誡的那樣:“開源必須是一條雙行道。”
2. 貢獻(xiàn)的唯一方式就是編寫代碼
很多公司都極度缺乏開發(fā)人員和工程師,以至于在給開源社區(qū)做貢獻(xiàn)的時候出現(xiàn)人員緊張局面。因此,當(dāng)問及他們在貢獻(xiàn)缺乏的事情的時候他們總是給一個歉意的答復(fù)。然而,給代碼并不是唯一的方式。一些其它的貢獻(xiàn)方式包括:
- 發(fā)現(xiàn)問題并報告問題。
- 修復(fù)簡單漏洞。
- 幫助構(gòu)建更完善的文檔。
- 組織或贊助聚會。
- 為標(biāo)準(zhǔn)委員會做點事。
- 捐款——OpenSSL只有幾千美元的捐贈項目,但它卻為成千上萬的企業(yè)帶來收益。
此外你可以查看Barbara Shaurette所寫的各種為社區(qū)做貢獻(xiàn)的其他方式。
3. 項目上傳完即萬事大吉
一旦你上傳項目到Github或類似的網(wǎng)站,你不能認(rèn)為你的事情就結(jié)束了,更不能認(rèn)為你的項目代碼現(xiàn)在已經(jīng)開源了。“除非你能明確地提供一個許可證,因為你可能跟這個項目代碼還有著所有權(quán)利和責(zé)任等事項。通過Black Duck的掃描軟件,我們發(fā)現(xiàn),去年在Github上有超過四分之三的項目沒有提供相關(guān)的、有效的許可證。這很難讓別人在你的工作上建立相關(guān)貢獻(xiàn)。一旦你開始這個項目,那么你需要聲明一個許可證,別人才能相信它是真正的開源的。
更多細(xì)節(jié)可以在Black Duck和GitHub的網(wǎng)站閱讀。
4. GPL要求你簽字放棄版權(quán)
有一個很流行的說法,GPL和受歡迎的版權(quán)許可讓你分配你的版權(quán)給第三方(FSF或其他人)。下面是General Counsel在這個問題上的闡述:
雖然GPL要求共享源代碼,但是作者不需要分配或轉(zhuǎn)讓版權(quán)給任何實體單位。根據(jù)GPL的規(guī)定,你可能需要合并在GPL許可證下面的所有工作,并且是免費的。然而,你不需要分配你的版權(quán)。公司可以從戰(zhàn)略意義上釋放某些GPL許可證下的代碼,這么做的目的是希望別人采用代碼并改進(jìn)代碼質(zhì)量。同時,相同的公司可以允許同樣的代碼給OEM,例如,收取費用,只要它不包含其他第三方GPL代碼。
5. 構(gòu)建社區(qū)就會有貢獻(xiàn)者
許多公司戰(zhàn)略性的使用他們的開源貢獻(xiàn)來建立一個技術(shù)社區(qū)。然而,他們只是幻想著能夠抓住這一夢想“構(gòu)建一個社區(qū),貢獻(xiàn)者就會來”。事實上,這個社區(qū)不可能成為一個正式的開源社區(qū),因為你已經(jīng)將項目上傳到Github,并提供了一個許可證。Ohloh——是Black Duck 開放中心,其統(tǒng)計結(jié)果表明大多數(shù)項目并沒有強大的社區(qū)利益,無法激起貢獻(xiàn)者的興趣。
構(gòu)建一個開源社區(qū)和構(gòu)建一個其它社區(qū)并沒有太多的區(qū)別。你需要創(chuàng)建的是一個愿景,最初階段投入足夠的努力讓這個社區(qū)運作起來,通過文檔和高質(zhì)量的代碼讓項目更容易被理解,接觸相關(guān)社區(qū)的成員,而且,最重要的是,將項目的價值傳達(dá)給公眾。
文章來源:OpenSourceDelivers
總結(jié)
以上是生活随笔為你收集整理的贡献开源项目没那么简单,你要负责到底的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 休闲度假村(很美的15个休闲度假村)
- 下一篇: 安卓常用布局学习