「是時候為開源做貢獻了」
Nilesh Vaghela 是 AWS 的 社區英雄 ,也是一家雲計算開源公司 ElectroMech Corporation 的創始人。據 Nilesh 說,為開源做出貢獻本身就是一種有意義的事。但是它需要人們的投入和奉獻,而這個過程涉及許多步驟,從選擇項目到確保你的貢獻成果獲得關注。在與 OSFY的 Abbinaya Kuzhanthaivel 的對話中,他分享了一些關於開發人員如何幫助提高印度對開源的貢獻的技巧。
問:你能告訴我們一下你目前的角色和對開源的貢獻嗎?
答: 我目前是一名從事自動化工作的架構師。我領導著多個團隊,並且同時主要在開源安全服務平台 Invinsense 上作出貢獻。我在 1998 年初創建了開源小組,當時已經有大約 1500 名成員。我現在管理的一個小組 (https://groups.google.com/g/vglug) 自 2014-15 年以來一直非常活躍。
問:你是如何開始在開源項目中工作的?
答: 我是一名有著從業資格的機械工程師,當時我在我的公司 ElectroMech Corporation 負責數據機和 UPS 系統。我慢慢地被拖入負責 PC、網路和 Linux 等等。1996 年,我在核科學中心看到超過 150 台計算機伺服器在 Linux 上運行時廣受啟發,之後便開始嘗試。自此我將我的公司完全轉變為專註於培訓和支持的開源公司。
我可以自豪地說,我是最早一批使用開源的人 —— 幫助客戶了解什麼是開源、它有什麼好處、什麼是免費的、安全或代碼問題等等。我們在 Vadodara 得到了至少四五個客戶,並且最終通過黃頁上的廣告宣傳自己。我們與 Red Hat 合作並且關係一直持續到現在。
問:自那以來你認為開源發展如何?
答: 我可以說,早些時候,開源是一種令人著迷的強烈愛好,吸引人們參與其中。當一些來自西伯利亞的貢獻者致力於改善水資源短缺問題時,世界各地的用戶都說他們的產品有多麼簡單易用,這給我留下了特別深刻的印象。它更像是一項企業社會責任(CSR)活動。人們和專家創建一個委員會來管理和推進項目。人們會因為對技術的熱愛而加入進來,沒有任何期望。
那時我並不相信開源可以商業化,但它是當今大多數創新和技術的驅動力,而且越來越多的企業正在採用它。我們期待在貢獻和使用開源方面取得很好的平衡,因為我們有個人、社區和大公司參與進來。這才是開源真正的未來和力量。
問:你可以分享一些自己遇到的困難嗎?
答: 最初我是單槍匹馬乾,但一旦人們知道我的意圖是好的,他們就會加入我。我在沒有任何期望的情況下創建了很多社區,但確實在聲譽或名望方面間接地獲得了回報;有人理解我是技術達人,並長期給我項目。在早期,人們剛開始加入社區並且不需要付出很多精力就可以做出貢獻。因為我的目標不是做生意,因此可以說我沒有真正面臨什麼障礙。
問:作為社區領袖,你的領導格言和經驗教訓是什麼?
答: 首先,如果你想建立一個社區,那就保持中立,不要抱有偏見。雖然看起來好像是你作為領導者正在管理一個社區,但請記住,加入社區的人都是平等地做出貢獻的。永遠不要讓成員失去動力。在發表評論和回答問題時要有禮貌。不管是什麼問題,如果你不想回答,那就選擇沉默。但別讓人們停止提問,而是幫助他們建立專業知識。
第二,不要讓社區摻雜商業。不要讓社區的目標和你個人企業的目標產生混淆和互相匹配。將它們嚴格區分開來。
始終嘗試鼓勵人們參與,而不是作為專家提供指導。如果你發現人們有興趣領導項目並採取主動,請給出舞台讓他們發揮。邀請他們參與社區活動。這將幫助你培養更多的社區領袖。此外,讓你的社區保持簡單,不要在初始階段讓贊助商參與進來。
問:你從誰那裡得到了靈感?
答: 開源運動之父 Richard Stallman 是我的靈感來源,我一直很欽佩他的項目。
除了他之外,我還有一個有趣的事要分享,它激勵著我從事開源工作。在我開始從事開源工作的時候,核科學中心的大部分軟體都是基於 Windows 操作系統的。然而,許多科學家希望使用基於 Linux 的軟體。在兩三個月內,他們實際上創建了 Linux 驅動程序。這就是讓我著迷的地方——用戶可以創建這些驅動程序,這在專有軟體中是不太可能發生的。我真的很喜歡開源賦權用戶這一點。
問:你對印度開源格局以及改進空間有什麼看法?
答: 印度是使用開源的人最多的國家(LCTT 校註:或應加上「之一」),我們正致力於成為貢獻者。有這麼多開發者,印度卻仍然沒有軟體巨頭。我們擁有的主要是服務提供者,而不是創新者。更多的人應該成為開源的貢獻者,去開發具有國際標籤的東西。
為開源做貢獻的想法應該從學校和大學抓起。幸運的是,古吉拉特邦政府已經在 8 年級到 10 年級里推出基於 Linux 的課程。教育年輕一代並讓他們了解開源模型很重要。
其次,我們要培養好的導師。當人們開始貢獻時,找到一位在這個項目中工作的開源導師很重要。導師給出了一個小任務,嘗試代碼然後提交。如果一切順利,成員的貢獻會逐漸增加。不幸的是,在印度導師很少。我們需要有很多導師,或者可以與世界各地的導師建立聯繫。
第三是要鼓勵那些踴躍貢獻的人。讓人們發現,一旦你成為了一位廣受認可的開發人員或為開源開發做出貢獻的人,你在職業發展和業務上也會有所突破。
通過遵循這些簡單的方法,印度可以成為開源的主要貢獻者。
問:你如何看待為開源做出貢獻時編程方面的要求?
答: 根據我的經驗,如果你知道計算機內部的知識,如何開發應用程序,你應該維護什麼樣的代碼標準,以及如何管理團隊和其他最佳做法,你可能不必擔心編程專業知識。
在設計、安全維護和整合方面還有其他角色可以擔任。看看你合適什麼。通過做你喜歡的事情來不斷提升加強自己的技能。如果你仍然對編碼感興趣,那麼你就在其他開發人員的支持下去學習。
問:你如何確定一個你想參與的項目?
答: 你需要了解你最感興趣的幾個領域,然後對圍繞這些領域發生的項目進行研究。你需要弄清楚哪些領域有招募更多志願者的需求或職位空缺。 你可以從小處著手練習,然後積累專業知識。
避免隨大流;重要的是你的個人興趣。例如,因為現在 DevOps(開發運維一體化)的需求量很大,你便可能更傾向於選擇 DevOps 項目。不要犯這個錯誤。
你可以在雲原生基金會(CNCF)、Apache、Fedora、Red Hat 等平台上找到開源項目。通過這種方式,你還可以找到已經在從事項目並可以給出適當指導的導師。
問:每個項目有自己的目的和目標受眾,有時它們甚至與開源目標不一致。那麼,在開始做出貢獻之前要核實什麼?
答: 我同意,當有人開始一個開源項目但隨後又將其商業化時,你會感到為開源作出貢獻也變得頗有難度。但這樣的風險總是會有的,不應讓你對此感到挫敗。
首先試著去了解該小組 —— 小組中的貢獻者有多受歡迎,他們貢獻了多長時間,以及他們的聲譽如何。一旦你加入,觀察每一個人和每一件事是關鍵。嘗試至少學習三到六個月,並了解一切是如何運作的。如果你發現他們的意圖不對,你可以隨時離開這個項目。但如果你覺得沒問題,那就繼續做貢獻吧。
你可以看看他們是否有某些許可證,例如 GPLv3。你還可以查看未修改的許可證版本,例如 Apache 開源許可證。
問:你覺得大公司會接受應屆生投稿嗎?
答: 是的,當然。公司也喜歡指導新人。他們通常不允許你直接貢獻,但可能先會給你一個小任務。導師會首先嘗試了解你擁有什麼技能以及你的能力如何。一旦他們認可你具備所需的技能,他們將繼續指導你或根據你的技能將你分配給其他導師。初始階段非常關鍵。很多公司都會做一些篩選,只有在你證明了自己的能力之後,你才會被允許做出貢獻。
問:貢獻者在接手項目時必須克服的最初挑戰是什麼?
答: 首先,你應該非常認真地對待你的貢獻。沒有書面承諾,貢獻者可能傾向於對工作掉以輕心。這種想法是完全錯誤的。嘗試每天投入 8-10 小時或任何可行的時間。如果你因為覺得沒有立竿見影的回報而不願投入其中,那麼你就不是一個好的貢獻者。
在最初階段始終嚴格遵守導師的指導。這對於健康的貢獻非常重要。有時你可能會認為自己擅長某事,而你的導師可能不會根據該技能給你分配項目。在這種情況下只需找你的導師,問他你應該做什麼,你的角色是什麼,以及你可以如何貢獻。
問:許多開發人員在提交項目貢獻後沒有得到回復。如何讓自己提交的東西被人注意到呢?
答: 寫一篇關於你計劃作出貢獻的項目的小博客,包括你喜歡的方面,你不喜歡的地方,以及可以改進的地方。這種積極的推廣方式可以幫到你很多。
成為小組的一員並參與與該項目相關的活動。作為貢獻的替代,首先嘗試參與到團隊中去,這將增加你被採納為貢獻者的機會。
一旦你對項目有了更好的了解,你的工作不僅會被接受,而且你將能夠更好地適應該項目。
問:你如何克服你的貢獻不被接受的情況?
答: 就是理解發生這種情況的原因有很多 —— 也許你沒有在合適的項目中,或者你沒有做出正確的貢獻。如果項目是國家驅動的,你的請求可能不會被接受。因此,如前所述,請記得列個清單。如果你的貢獻沒有被接受,請不要擔心,因為要麼你不適合該項目,要麼該項目不適合你。
我會建議嘗試找四到五個項目,並且至少有一個項目會接受你所做的工作。
問:你對我們的讀者有何想說的?
答: 開源是當今大多數創新背後的驅動力。讓我們根據自己的能力和技能試著做出貢獻,而不是僅僅使用開源。貢獻可以是代碼、文檔、測試、博客、金錢等。是時候做出貢獻了。
問:ElectroMech 公司有招人的計劃嗎?
答: 我們在雲計算 DevOps(開發運維一體化)方面有需求,正在招聘雲架構師、Python 開發人員、Linux 架構師和安全專業人員。
via: https://www.opensourceforu.com/2022/06/its-time-to-contributing-to-open-source/
作者:Abbinaya Kuzhanthaivel 選題:lkxed 譯者:XiaotingHuang22 校對:校對者ID
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive