您當(dāng)前的位置是:  首頁(yè) > 資訊 > 文章精選 >
 首頁(yè) > 資訊 > 文章精選 >

如何開始第一個(gè)開源項(xiàng)目?

2020-04-27 13:48:38   作者:Mahdhi Rezvi   來源:CSDN   評(píng)論:0  點(diǎn)擊:


  根據(jù)Sayan Chowdhury的說法,以下是人們開始開源之旅時(shí)提出的常見問題:
  • 如何開始開源之旅?
  • 我知道x、y、z語(yǔ)言,我應(yīng)該參與哪個(gè)項(xiàng)目?
  • 如何篩選出符合我技能水平的項(xiàng)目?
  在這篇文章中,我將嘗試以一種非常簡(jiǎn)潔的方式回答這些問題。我還將提供一些資源,可能會(huì)幫助到你開始第一個(gè)開源項(xiàng)目貢獻(xiàn)。
  什么是開源軟件(OSS)?
  開源軟件顧名思義,源代碼是公開的,大家可以修改和添加。這些軟件是遵守各種各樣的許可方式發(fā)布的,如BSD、MIT等。閱讀幾行由優(yōu)秀程序員編寫的代碼會(huì)自然地提高你的編碼知識(shí),并且能夠幫助你了解優(yōu)秀的編碼實(shí)踐。
  開源JavaScript組件
  你可以選擇從對(duì)開源社區(qū)做一些小貢獻(xiàn)(不用完整的項(xiàng)目)開始。比如說從小的、獨(dú)立、公開可用的JavaScript組件開始。它們可以是簡(jiǎn)單的JS/NodeJS,也可以是使用React、VueJS、Angular或任何其他流行的庫(kù)/框架構(gòu)建的基于框架的組件。
  Bit.dev是一個(gè)很受歡迎的組件中心,有超過34,000個(gè)開源JS組件。這是一個(gè)好的辦法,從小的開源項(xiàng)目做起,逐漸增加你的開源貢獻(xiàn)。它為組件的使用者提供了使用特定組件而不是整個(gè)庫(kù)的自由。
  無論何時(shí)你構(gòu)建了一個(gè)值得共享的可重用組件(可能是作為私有項(xiàng)目的一部分),你都可以使用Bit在自己的組件集合中發(fā)布和為它提供文檔。
  在Bit.dev中探索共享的React組件
  如何為開源軟件做貢獻(xiàn)?
  很多人認(rèn)為對(duì)于開源軟件的貢獻(xiàn)都是關(guān)于編碼的。不僅如此,你還可以參與線上、線下推廣開源項(xiàng)目活動(dòng),修復(fù)項(xiàng)目文檔,編寫或翻譯文檔等,這些都是為開源軟件做貢獻(xiàn)的方式,這些都可以幫助改進(jìn)開源項(xiàng)目。
  下圖列出了一些可以為Mozilla開源項(xiàng)目做出貢獻(xiàn)的途徑。
  圖片來源:Mozilla.org
  為什么要做貢獻(xiàn)?
  你要明白,為開源項(xiàng)目做貢獻(xiàn)的可以提升你的技術(shù)能力。初學(xué)者可以從一些小事開始,比如修復(fù)Bug、發(fā)送pull請(qǐng)求、編寫軟件文檔等參與。
  它們還允許初學(xué)者學(xué)習(xí)編寫“干凈代碼”,一種可讀性和可維護(hù)性更強(qiáng)的代碼。對(duì)于編程來說,有很多不同的標(biāo)準(zhǔn)可以遵循,團(tuán)隊(duì)不同,遵循的標(biāo)準(zhǔn)可能不同。當(dāng)你在開源項(xiàng)目上工作時(shí),應(yīng)該遵守項(xiàng)目的規(guī)范。
  參與開源貢獻(xiàn)還有另一個(gè)好處是共同打造社區(qū)。你有機(jī)會(huì)成為由志同道合的人組成的社區(qū)的一部分。如果你是一個(gè)自由職業(yè)者,同事你又是個(gè)積極的社區(qū)貢獻(xiàn)者,你很有可能被潛在的老板注意到。
  在做貢獻(xiàn)之前的注意事項(xiàng)
  按照Maryna的說法,在做出貢獻(xiàn)之前,你應(yīng)該記住以下三件事。
  • 編程語(yǔ)言:你應(yīng)該選擇一種編程語(yǔ)言來查找開源項(xiàng)目,確保它符合你的技能和品味。
  • 項(xiàng)目類型:一旦你選擇了你想使用的語(yǔ)言,你應(yīng)該把注意力放到你想要做出貢獻(xiàn)的項(xiàng)目類型上。Github的所有項(xiàng)目都按照Topic歸類到不同的文件夾中。主題的一些例子有“安全”、“虛擬現(xiàn)實(shí)”、“文本編輯器”和“CSS預(yù)處理器”等。你可以滾動(dòng)瀏覽這些類別,選擇你感興趣的主題。
  • 項(xiàng)目的規(guī)模 :你應(yīng)該關(guān)注項(xiàng)目的規(guī)模,比如說,像VLC這樣的項(xiàng)目不適合初學(xué)者,因?yàn)樗浅}嫶,?dāng)你開始時(shí),建議不要用大型開源項(xiàng)目。請(qǐng)務(wù)必注意項(xiàng)目標(biāo)簽,尤其是那些被貼上了“僅限新手”、“初學(xué)者”、“容易”的項(xiàng)目標(biāo)簽。
  我準(zhǔn)備好了,接下來做什么?
  你已經(jīng)了解了對(duì)開源軟件做貢獻(xiàn)時(shí)的基本事項(xiàng),接下來讓我來幫助你開始使用一些資源,這些資源可以指導(dǎo)你在你最喜歡的編程語(yǔ)言上找到適合初學(xué)者的項(xiàng)目。
  First Timers Only(僅限新手)網(wǎng)站
  這個(gè)網(wǎng)站上有很多被認(rèn)為是“適合新手”的開源項(xiàng)目,提供一些教程,幫助你熟悉GitHub上的貢獻(xiàn)工作流程。它還提供了許多小的附加功能,這些功能將幫助你在開源貢獻(xiàn)方面邁出滿意的第一大步。
  https://www.firsttimersonly.com/
  我們?cè)赥witter上詢問人們,當(dāng)他們第一次為開源項(xiàng)目做貢獻(xiàn)時(shí),他們的感受是什么;卮鹗牵
  是的,很可怕。但是很值得!
  OpenSource.com
  這個(gè)網(wǎng)站包含了一個(gè)“適合新手”的開源項(xiàng)目列表,你可以從中選擇一個(gè)開始。它還提供了更多的資源,如OpenHatch,你可以在其中找到更多對(duì)初學(xué)者友好的項(xiàng)目。
  https://opensource.com/life/16/1/6-beginner-open-source
  Twitter Profiles
  有許多推特機(jī)器人被設(shè)計(jì)用來轉(zhuǎn)發(fā)帶有諸如“僅限新手”和“適合新手”等標(biāo)簽的推文。這些機(jī)器人能很好地讓這些推文定期出現(xiàn)在你的主頁(yè)上,這樣你就可以在瀏覽你的推特訂閱源的同時(shí)決定要參與貢獻(xiàn)的項(xiàng)目。
  下面是兩個(gè)常見的推特資源:Your First PR、first-timers-only
  Github
  Github有很多開源項(xiàng)目,目前有一些對(duì)初學(xué)者友好的問題可以解決的項(xiàng)目。它們要么按編程語(yǔ)言排序,要么按難度級(jí)別排序:
  Awesome First PR Opportunities
  Beginner Projects
  一旦你選定了你想要做貢獻(xiàn)的項(xiàng)目,那么就是開始行動(dòng)的時(shí)候了。這里有兩個(gè)資源:
  GitHub項(xiàng)目新手貢獻(xiàn)指南
  僅限新手
  有幾個(gè)組織舉辦的比賽能夠激勵(lì)你參與開源貢獻(xiàn),例如Hacktoberfest和Hacktitude。
  Hacktoberfest是一個(gè)由DigitalOcean和DEV運(yùn)營(yíng)的長(zhǎng)達(dá)一個(gè)月的開源軟件慶典。Hacktoberfest對(duì)全球社區(qū)的所有人開放。一旦你完成了4份PR提交,你就會(huì)收到T恤和其他商品作為獎(jiǎng)品。
  相信看完文章,你有了一些準(zhǔn)備了,希望未來你能為開源項(xiàng)目做貢獻(xiàn),為社區(qū)盡自己的一份力量。
  原文鏈接:https://blog.bitsrc.io/useful-tips-for-a-successful-open-source-project-a505d05aad07

 
 
【免責(zé)聲明】本文僅代表作者本人觀點(diǎn),與CTI論壇無關(guān)。CTI論壇對(duì)文中陳述、觀點(diǎn)判斷保持中立,不對(duì)所包含內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。請(qǐng)讀者僅作參考,并請(qǐng)自行承擔(dān)全部責(zé)任。

相關(guān)閱讀:

專題

CTI論壇會(huì)員企業(yè)