GSoC 2023 報名開啟:和 WasmEdge 一起構建雲端計算的未來吧

語言: CN / TW / HK

最近,Google Summer of Code 2023 公佈了入選的開源組織。 通過 CNCF Mentoring 平臺,WasmEdge 成功入選 GSoC 2023。 GSoC 2023 已經在3月20日正式開放個人申請,快來申請 WasmEdge 的兩個 GSoC 專案, 一起構建雲端計算的未來。

什麼是 GSoC?

Google Summer of Code 是谷歌發起的,用於將新貢獻者引入開源社群的線上指導計劃專案。在過去的18年裡,來自112個國家的 19000 多名開發者 18000 名導師的指導下,為開源專案做了貢獻。18歲及以上的學生或開源新貢獻者將在 GSoC 專案中與導師一對一搭檔,解決開源專案的真實問題。通過 GSoC,開源專案的貢獻者可以獲得真實的軟體開發經驗,並在開源世界中留下自己的印記。當然,貢獻者的努力和時間也會得到金錢上的回報!

通常來說,年滿18週歲的開發者都可以申請 GSoC。

WasmEdge 介紹

WasmEdge 是一個WebAssembly 執行時,特別為伺服器端和雲原生應用優化。它提供了許多對雲端計算至關重要的獨特的功能。例如,支援

  • 完整的 WebAssembly 規範,以及新興的規範,如執行緒、GC 和元件模型。
  • 高階 networking 如 HTTP/S 客戶端和伺服器,資料庫連線,訊息佇列連線。
  • 基於流行框架的AI推理,如 Tensorflow,OpenVino,PyTorch
  • High level 語言應用,包括 JavaScript、Python、PHP和 Ruby。開發者可以執行完整的 node.js 應用程式。
  • 多種 APIs 用 Rust, Go,C/C++, JavaScript 建立 Wasm 應用。
  • 多種 SDKs,將 WasmEdge 嵌入到現有的以其他語言編寫的應用程式。

此外,WasmEdge 提供了一個靈活的外掛架構 允許開發者為其新增更多功能,並通過廣泛的開源合作伙伴充分發掘眾多整合和分發渠道。這次的 GSoC 也有個新增 Plugin 的任務。訪問我們的技術亮點,發現 WasmEdge 的全部潛力吧。

WasmEdge 得到了雲原生生態中主要開發者工具和部署平臺的支援。例如,WasmEdge 與 Docker Desktop 整合並分發,覆蓋超過 1000 萬開發者。 並且是 Fedora、Red Hat Linux 和 OpenShift 容器平臺上的預設 WebAssembly 執行時。

加入我們,共建雲原生技術棧的未來!

WasmEdge 此次參與 GSoC 的兩個專案

  1. 為 WasmEdge 新增一個 zlib 外掛

在 Wasm 中編譯和執行許多現有的 C/C++/Rust 應用程式需要 zlib。最值得注意的是,zlib 是 Python 埠到 Wasm 所必需的工具。 VMWare Wasm Labs 團隊在他們的 Python Wasm 執行時中使用來自 Singlestore 的 zlib 埠。所以,zlib 支援是一件很不錯的事情。

在 WasmEdge 中,可以通過外掛系統的方式實現 zlib 支援。這樣,可以編譯任何現有的 zlib 應用程式到 Wasm 並在 WasmEdge 中執行。WasmEdge 的外掛可以用 C、C++ 和 Rust 來編寫。我們正在尋找的學員應該具有 C、C++ 或 Rust 的應用知識,並且願意學習和理解 WasmEdge 的外掛系統。

檢視原始 GitHub Issue

  1. 完成 WasmEdge 序列化

WasmEdge 支援直譯器模式與 AoT 編譯。但是,WasmEdge 僅支援輸入 WebAssembly 檔案的二進位制格式。為了實現文字格式的 WebAssembly 載入器功能,序列化 WebAssembly 模組的實現是必要的。在此指導中,學員應在 WasmEdge repo 的 dev/serialize 分支中完成已有的序列化功能。

我們正在尋找的學員應該具備 C、C++ 和 WebAssembly 的應用知識。

檢視原始 GitHub Issue

申請 GSoC 的建議

  1. 一封清晰明瞭的個人介紹信將幫助導師更快地瞭解你
  2. 在 Proposal 裡寫明你針對這個專案的工作計劃的里程碑以及時間線
  3. 你可以通過每個專案所在的 github issue 與 mentor 討論你的想法
  4. WasmEdge book 是你入門 WasmEdge 的好幫手。

下一步就是在4月4號之前,遵循 GSoC 的說明提交你的申請吧。如果你有任何問題,歡迎加入 WasmEdge discord 討論群進行討論。