著名 JavaScript 編譯器 Babel 沒錢了,而建立者認爲維護者在「高薪摸魚」。
近日,JavaScript 編譯器 Babel 的一則聲明成爲了開源社區的議論焦點。擁有數百萬用戶,Facebook、Airbnb 以及 Netflix 等大型公司都在使用的 Babel 的維護團隊在官方博客宣佈:咱們「沒錢了」。git
博客地址:https://babeljs.io/blog/2021/...github
以「咱們沒錢了,須要捐款」爲核心思想,整篇博文分爲五個部分,提煉一下就是:babel
博客中提到,如今 Nicolò、Henry、Jùnliàng 薪水暫時是每個月 6000 美圓,儘管你們拿的薪水都不高,但目前看來,Babel 的資金餘額也只夠維持到 2021 年末。框架
Babel 項目開始於 2014 年,就主要功能來說,它能幫助用戶在最新版本的 JavaScript 中編譯代碼,當用戶支持的環境沒法支持某些特性時,將這些特性編譯爲支持的版本。工具
因爲該項目是開源的,任何人均可以避免費使用、下載以及修改。做爲一個社區驅動的項目,不少公司和項目都在使用 Babel,並由志願者團隊進行維護。優化
GitHub 項目地址:https://github.com/babel/babelspa
Babel 已經實現了對不少新的 ECMAScript 提議的支持,跟進每一個新發布的 TypeScript 和 Flow 版本,並設計了新的特性以生成更小的編譯輸出。此外,Babel 已經集成到了 JavaScript 生態系統中各種框架中,如 React、Next.js、Vue、Ember 和 Angular。Babel 支持自定義插件和各類場景中的優化,如 CSS-in-JS、GraphQL 或跨大量代碼庫的本地化。插件
在博客中,團隊也提到了即將發佈的 Babel 8 版本。然而,對於 Babel 這款底層工具,不少人使用它但不其實不太瞭解它,更別提贊助項目資金了。設計
從 Babel 官網可見,該項目當前有 6 名核心維護者,包括 Brian Ng、Henry Zhu 等,這個小團隊承擔了 Babel 的維護工做。code
爲何會出現資金耗盡的狀況呢?這就要從 2018 年提及,當時 Babel 團隊進行了一次實驗:全職對項目進行維護,並支付維護成員相應薪水。
Henry Zhu 從 Adobe 辭職,開始了在 Babel 的全職工做。到了 2019 年 11 月,Babel 已經成功支付了 Henry Zhu 一年多的薪水(每個月 11000 美圓),並開始向其餘三位兼職成員支付薪水,分別是 Jùnliàng、Kai 和 Nicolò,最初每個月 2000 美圓。而且,Babel 還但願後期增長預算,將三位兼職成員轉爲全職。
幾年過去了,Babel 團隊發現「全職維護之路彷佛行不通」,並在充分考慮目前所收捐款的狀況以後意識到須要作出一些調整。目前,雖然 Babel 團隊依然向 Henry Zhu、Jùnliàng 和 Nicolò 這三位成員支付薪水,但在博客中表示:「已經快沒有錢給維護者發薪水了」,並尋求支持。
其實,從一開始,Babel 團隊就知道沒有足夠的薪水支付給全職維護成員。因此,成員 Henry Zhu 花費了大量時間積極尋求持續的資助,好比作會議演講或遊說公司贊助。但 2020 年,Babel 團隊的融資受到了很大的影響,丟掉了一些大的贊助商。成員 Kai 也不得不放棄維護工做,另找一份全職工做。以後,Babel 但願能夠收到更多的捐款以發給 Jùnliàng 和 Nicolò 更多的薪水,但這一願望也落空了。
Babel 團隊寫道:
咱們堅信,開源工做應是一條行得通和可持續的職業道路。但如今,咱們不得不面對一個殘酷的事實:幾個月後就沒錢了。
此外,Babel 團隊也正在向一些公司尋求贊助。Nicolò 補充道:
不少公司都依賴咱們的軟件,因此確保 Babel 項目獲得維護並永遠維持下去符合他們的利益。
這則聲明一經發布,迅速引起了社區熱議。Nicolò 表示,截止當地時間週三,團隊已經收到了 4 萬多美圓的捐款。
但 Babel 建立者 Sebastian McKenzie 的推文,又引起了一波更加激烈的討論。
Sebastian McKenzie 如今是另一家公司 Rome 的負責人,已經再也不從事該項目的維護工做。他發了一條推特內涵核心團隊成員 Henry Zhu 居其位而不謀其事:
之因此沒有錢,是由於有人拿了 13 萬美圓的年薪,實際上並未從事項目工做。
但 Sebastian McKenzie 隨後刪除了推文,並對本身形成的影響感到抱歉。
我不應公開提到 Henry,而應該私下溝通。由於過於沮喪發了那條推文,表達也過於粗糙,這些都是很差的行爲。
項目資金緊張,歸責於某我的,合理嗎?面對 McKenzie 對 Henry Zhu 的指責,包括 Vue 建立者尤雨溪(Evan You)在內的獨立開發者都出面聲援。
維護項目不止意味着 push commit,還要管理團隊、尋求資金來源,同時擔負着精神壓力。」
一位將維護工做徹底移交出去的建立者,顯然不該該如此責備項目成員。「若是 Henry Zhu 當時不接管 Babel,那這個項目可能已經不在了。」
JavaScript 代碼檢查工具 ESLint 建立者 Nicholas C. Zakas 表示,雖然 Henry Zhu 並不是 Babel 的建立者,但他也是 Babel 一路走來的見證者,而且爲此放棄了在業界獲取更多報酬的機會。「咱們總不能要求維護者始終拿着跟大學畢業生同樣甚至更少的薪水。」
同時,Nicholas C. Zakas 也坦承,開源項目運轉不易:「在 ESLint,咱們一直爲維護者提供的薪資都是比較保守的,由於沒有太多的錢來支付勞務費用。贊助商經常忽然消失,咱們也不想讓任何人失業。」
有開發者認爲,Henry Zhu 一直以來的維護工做都是優秀的,指責他是一種野蠻行爲。
問題來了,這錢捐仍是不捐呢?
開源前哨
平常分享熱門、有趣和實用的開源項目。參與維護 10萬+ Star 的開源技術資源庫,包括:Python、Java、C/C++、Go、JS、CSS、Node.js、PHP、.NET 等。