開源軟件 貢獻意味著什么?

2020-09-08 13:55 更新
如果你是一名開源界的新手,可能會對貢獻的流程心生畏懼。
比如:
    該如何找到正確的項目?
    不懂編碼又想?yún)⑴c怎么辦?
    萬一做錯事情了怎么辦?

其實沒有關(guān)系的啦!條條大路通羅馬,開源項目有太多的路徑可以參與!以下是一些實用的技巧,幫助你快速的獲得經(jīng)驗。

你不具備編碼的能力

對于為開源做貢獻常見的誤解就是:為開源做貢獻必須得提交代碼。事實上,代碼固然重要,但是項目中不需編碼的重要部分經(jīng)常被忽視 。你若做了這部分,對于項目來說可是莫大的貢獻,而這根本就不需要什么撰寫代碼!

avatar

我被大家所熟知是因為為 CocoaPods 做了一些事, 其實大伙并不知道我實際并沒有為 CocoaPods 本身做了什么,我大多數(shù)的工作是諸如撰寫文檔、品牌宣傳之類的。

@orta , “默認(rèn)遷移到開源軟件”

即使你是一位開發(fā)者,非代碼的貢獻對于項目來說也是舉足輕重的,尤其是對于社區(qū)的其他成員來說。用心維系這些關(guān)系能夠讓你有工作到項目其它部分的機會。

avatar

我第一次接觸 Python 開發(fā)團隊(簡稱 python-dev)是在 2002年6月17日,當(dāng)時我是向其郵件列表發(fā)送了一份郵件,是關(guān)于請求通過我的補丁的。我很快就又發(fā)現(xiàn)了開源的 bug,于是決定開始為小組收集郵件摘要,然后他們給了我一個澄清問題的理由,但是更加重要的是,我能夠捕獲到某人指出需要修復(fù)的問題。

@brettcannon , “維護者的故事”

是否熱衷于規(guī)劃事件?

  • 為項目組織研討會或線下分享,一如 @fzamperin 為 NodeSchool 所做的那樣
  • 為項目組織大型會議(假如它有的話)
  • 幫助社區(qū)成員尋找合適的技術(shù)會議,且?guī)椭袑嵙Φ某蓡T提交演講的擬稿

是否偏向于設(shè)計?

  • 重新布置布局以提高項目的可用性
  • 進行用戶研究以重新組織和完善項目的導(dǎo)航或菜單
  • 整理一個風(fēng)格指南,以幫助項目有一致的視覺設(shè)計
  • 創(chuàng)建t恤的藝術(shù)或一個新的標(biāo)志,就像 hapi.js 的貢獻者那樣

你是否熱衷于寫作?

  • 撰寫和改進項目的文檔
  • 能夠以實例來展示項目該如何使用的
  • 為項目撰寫新聞稿,或者到郵件列表高調(diào)布道
  • 為項目撰寫教程,一如 pypa 的貢獻者所做的
  • 翻譯項目的文檔為本土語言

avatar

說真心話, [文檔] 是非常重要的. 目前 Babel 的文檔已經(jīng)很棒了,這也是其殺手锏的特性之一。當(dāng)然,還有一些章節(jié)需要大家的完善,即使是隨便在哪兒增加一個段落都很感激。

@kittens , “貢獻者召集令”

你喜歡組織活動嗎?

  • 鏈接重復(fù)的問題,并建議新的問題標(biāo)簽,使事物井井有條
  • 通過開放的問題,并建議關(guān)閉舊的,就像 @nzakas 為 eslint 做的
  • 把最近開放的問題闡述清晰,以推動討論

享受編碼的樂趣?

  • 找到一個開放的問題并解決它,就像 @dianjin 為 Leaflet 做的
  • 想一想你是否可以幫忙寫一個新的功能
  • 自動化項目設(shè)置
  • 改進工具和測試

熱衷于幫助他人?

  • 回答關(guān)于項目的問題,例如在 Stack Overflow(像 Postgres 的這個示例 )或者 reddit 上
  • 為人們解答公開的問題
  • 幫助緩和討論板或?qū)υ捛?/li>

在編碼方面是否喜歡幫助他人?

其實不必一定是軟件項目!

盡管人們一提起”開源”二字,默認(rèn)就是指開源軟件,其實不盡然,開源可以是任何事情的修飾,而不僅僅是指軟件。比如圖書、食譜、列表、以及任何可以開源的項目類別。

舉例來說:

盡管你是一名軟件開發(fā)者,也可以去撰寫一些文檔去幫助新的入門者。其實項目中那些看起來令人生畏的項目并不是寫代碼,做開發(fā)者總得挑戰(zhàn)自己,其實在做得過程中可以增強信心和獲得全新的體驗。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號