提名 Apache ShardingSphere Committer,說說方法

  • 2022 年 7 月 14 日
  • 筆記

文章首發在公眾號(龍台的技術筆記),之後同步到部落格園和個人網站:xiaomage.info

就在前幾天,收到了 Apache ShardingSphere Vote 我成為 Committer 的郵件,心情非常高興,被提名代表自己的貢獻得到了充分的認可;在這裡,非常感謝 ShardingSphere 團隊給予我的幫助!

寫這篇文章,主要是記錄自己貢獻 ShardingSphere 這段時間內,程式碼提交的心路歷程。讓大家找到對的道路,能夠和我一樣,成為 Apache 項目的 Committer。

熟練使用

如果有個人告訴我他想貢獻一個項目,但是連怎麼使用都不知道,那我一定覺得他在和我開玩笑。

與 ShardingSphere 結緣是在 21 年,當時在集團內推廣 ShardingSphere,並結合業務做了眾多個性化功能;在訂製的過程中,發現了一些問題,並且嘗試去解決。

也就是這個使用與訂製的過程中,對 ShardingSphere 的設計理念和源碼有了深入了解,而這也是驅動自己進行程式碼貢獻的前提。

擺脫畏懼

如果對 Apache 開源項目沒有貢獻過的小夥伴,可能提到 PR(Pull Request) 程式碼都會比較陌生,有種不明覺厲的感覺。

以我舉例,在對 ShardingSphere 進行貢獻前,覺得能對 Apache 項目產生貢獻的,都是那種技術大拿,壓根沒有想過自己可以提交 PR。

其實這是一種很錯誤的想法,剛開始貢獻 Apache 項目不一定是要貢獻核心程式碼,可以從簡單的測試用例或文檔修復等任務做起;這樣可以快速幫助你熟悉貢獻流程,為後續的程式碼貢獻做鋪墊。

成為 Apache Committer 的第一步,是跨過心裡的那道坎,從想像轉換為實際行動。

參與開源

如果你想參與開源項目,ShardingSphere 會是個不錯的選擇。添加 ShardingSphere 社區經理微信:ss_assistant_1,拉你進官方交流群,群里會不定期發布 Issue 任務列表,可以根據個人想法認領嘗試。

選擇 ShardingSphere 在我看來,有以下好處:

  • Apache 頂級項目:GitHub 16.3 K Star,5.7 K Star,410+ contributor;
  • 廣泛應用:截止目前登記,已有 217 家企業生產環境應用;深入研究後,公司應用遇到問題可以快速定位;
  • 社區活躍度:ShardingSphere 會有專人在微信交流群、中文社區和 GitHub 上進行問題答疑,如果你在貢獻的過程中有問題,他們都會耐心解答,沒有任何架子;
  • 項目迭代進度:Fork 後的項目,隔個幾天不更新,Fetch upstream 程式碼時,基本都是幾十上百的提交。

//images-machen.oss-cn-beijing.aliyuncs.com/image-20220712194405470.png

除去 ShardingSphere 官方發布的任務,也可以閱讀接入端、分散式治理,內核、數據遷移、事務、DistSQL 等相關源碼,找到自己感興趣的內容深入研究。

成為 Committer 能收穫什麼

Apache 專屬郵箱

提名後,Apache 會根據你提供的資訊創建專屬 Apache 郵箱。比如我的 ID 是 machen,對應的郵箱是:[email protected]。

擁有 Apache 郵箱是一件非常酷的事情,代表著頂級開源組織對你能力的認可,也會對你未來找工作有一定的幫助。

想像一下,小夥伴們瀏覽 Apache 網站時看到了你的名字,或者和面試官發郵件時,他們會不會有種不明覺厲的感覺,形象瞬間就高大上了有木有!

郵箱地址全局唯一,可以在 Apache 官網上查詢,如果已被佔用將不能註冊。地址://people.apache.org/committer-index.html。

Jetbrains 正版全家桶

Jetbrains 為所有 Apache 貢獻者提供了全品類的免費許可證,根據 Apache 郵箱在 Jetbrains 官網申請永久免費許可證。

//images-machen.oss-cn-beijing.aliyuncs.com/image-20220712182547563.png

申請後,Jetbrains 會向你的郵箱發送邀請鏈接。讓我比較感慨的有這一句話,感覺所做的事情是很有意義的。

We hope that our software will be useful for your work on the Apache Software Foundation projects. Thank you for your contribution to Open Source Software!

我們希望我們的軟體將對您在 Apache 軟體基金會項目中的工作有用。感謝您對開源軟體的貢獻!

ShardingSphere 倉庫寫許可權

普通開發者只能對 ShardingSphere 倉庫發起 PR,而 Committer 角色會擁有倉庫寫入許可權,即合併 PR 的許可權。

文末總結

Apache ShardingSphere 是一款開源分散式資料庫生態項目,旨在碎片化的異構資料庫上層構建生態,在最大限度的復用資料庫原生存算能力的前提下,進一步提供面向全局的擴展和疊加計算能力。其核心採用可插拔架構,對上以資料庫協議及 SQL 方式提供諸多增強功能,包括數據分片、訪問路由、數據安全等。

如果大家對 Apache ShardingSphere 有任何疑問或建議,歡迎在 GitHub issue 列表提出,或可前往中文社區交流討論。

GitHub issue://github.com/apache/shardingsphere/issues

貢獻指南://shardingsphere.apache.org/community/cn/contribute/

中文社區://community.sphere-ex.com/

Tags: