「全職做開源 6 個月,我真的不後悔」

摘要:開源熱潮下,開源開發者的收入始終是影響項目可持續發展的一個核心問題,也曾有許多開源開發者因維持不了生計而中途放棄。而本文作者,在明知這些現象後,仍辭去了高薪工作轉向全職做開源——如今 6 個月後的他,對這個決定依然毫不後悔。

原文連結:https://mfiano.net/posts/2022-09-04-from-common-lisp-to-julia/

作者 | Josh Goldberg

譯者 | 彎月

多年以來,我一直對開源軟體充滿了熱情。因此,2022 年 1 月下旬我正式辭職,並於 2022 年 3 月開始從事全職開源軟體開發的工作。

就目前的情況來看,這是一段令人振奮的旅程。我會很高興地對你說:我會將這份事業繼續下去!

開源工作的好處是,我可以選擇很有趣的技術和/或能夠推動現代 Web 開發向前發展的項目。但我也必須承認,開源存在不足之處:作為一個行業,我們依然沒有找到可持續的資金來支持絕大多數維護者。

我的工作成果

我的工作成果

我有機會與一些了不起的人一起從事有趣的項目。以下是我引以為豪的一些開源工作:

  • TypeScript ESLint:錯誤修復、改進文件、添加新功能。

  • 對自己在自動化規則文件方面所做的工作尤其滿意

  • TypeStat:錯誤修復、改進文件、添加新功能。

  • Stryker:添加方法表達式修改器。

  • eslint-plugin-expect-type:接管維護工作,並修復了一些 bug。

  • TypeScript:修復了一些 bug。

  • 發佈 learningtypescript.com,並撰寫了幾十篇有關 TypeScript 的文章。

  • 發佈 chooseyourframework.dev,包括 EightBittr 的一整套重構和改進。

  • 開源 Refined Saved Replies Chrome 擴展。

此外,我重新開始在 Twitch 上直播,並將這些視訊上傳到了我的 YouTube 頻道。

下面是我於 2022 年 3 月之後發送的所有合併拉取請求:https://github.com/pulls?q=is%3Apr+author%3AJoshuaKGoldberg+is%3Amerged+created%3A2022-02-28..2023-01-01+is%3Apublic

籌集資金十分困難

籌集資金十分困難

截止到目前,雖然我完成了所有這些工作,但每月只能獲得大約 600 美元的開源資助:

  • 我自己的 GitHub 主頁獲得的資助:每月 200 美元;

  • TypeScript ESLint 的資助:每月 400 美元。

美國聯邦規定的最低收入為每小時 7.25 美元,即每月 1200 美元,也就是說我全職工作收入的每月 600 美元,大約是最低工資的一半。以我 2021 年的基本工資來計算,當時一天的薪水甚至高於我現在一個月的開源收入。

為了將個人收入提高到可以接受的水平,我想盡了各種辦法,比如為私人公司提供諮詢服務、發佈書籍《Learning TypeScript》以及偶爾審核 pullrequest.com 上的拉取請求。但這些兼職佔用了開源工作的時間和精力,導致我的工作進入了一個惡性循環:作為開源維護者,我無法賺取可持續的收入,所以我必須從事兼職工作,但兼職工作會佔用開源工作的時間,導致我無法提升自己並獲得資助。

幸運的是,隨著我個人和我的項目受到越來越多的關注,我收到的資助也在增加。我的目標是到 2022 年底將收入提升到每月 1000 美元。

經驗教訓

經驗教訓

此次全職開源開發的冒險經歷讓我學到了很多經驗教訓,以下是三個我一直在努力的領域。

平衡激情和優先級

有趣的開源項目有很多,從可愛的業餘項目到具有很高影響力的開發工具。起初,我強忍住了跳來跳去的衝動,試圖強迫自己從事我認為影響力和知名度都非常高的項目。然而,我的內心卻不贊同:我發現只有從事夢寐以求的工作,效率才能達到巔峰。

這些天來,我總結了一份我感興趣的項目清單,並經常在這些項目之間來回穿梭。但是,如果遇到一些時間非常緊迫的問題,比如某個嚴重的 bug,我就會強迫自己專心做好一個項目。

宣傳自己

我其實不喜歡吹牛或主動提要求,也不喜歡花寶貴的時間在網際網路上乞討(比如寫這篇文章)。我的直覺告訴我,如果我從事具有重大意義的工作,並出色地完成了,人們就會資助我。

然而,現實很殘酷。我必須積極地宣傳自己,否則就只能默默無聞。而且,當其他人知道我是誰以及我在做什麼時,他們就可以向我訴說自己的想法,並讓我幫助他們解決痛點。積極地宣傳自己可以產生連鎖反應,因為隨著越來越多的人了解我,口口相傳的效果也會越來越好。

善待自己

獲得他人的資助比為公司工作更直接。我覺得這種方式能在我們之間建立感情上的連接。有一段時間裡,我不願意喝好咖啡,不願意出去吃飯,也不願在自己身上花任何錢。我覺得,他人資助的錢是為了讓我從事開源工作,我又怎麼能奢侈浪費呢?

但是對我自己來說,這種心態既不健康也不公平。我不應該因為收入來源的變化而放棄生活的樂趣。如果我將自己限制在最基本的生活消費上,那麼就無法創作出最好的作品。

當然,我也不會隨意揮霍我獲得的資助。

接下來的打算

接下來的打算

如果你認為我的項目列表很有趣,那麼敬請期待接下來六個月會發生什麼吧。我的目標是到 2023 年春季之前完成以下工作:

  • 與其他開發人員通力合作,將 TypeScript ESLint 升級到一個新版本6.x。

  • 了解 TypeScript ESLintx 的內部結構,並著手解決大規模性能問題。

  • 進一步完善TypeStat,使其穩定,並應用到一些常見的 React 項目。

  • 標準化工具,並解決我的一些小型程式碼庫中的錯誤和功能,其中包括emojisplosion、konamomijisplosion、console-fail-test、eslint-plugin-expect-type 等。

  • 繼續撰寫文章,解答常見的 TypeScript 問題。

還有一些未知的項目。開源 Web 開發的神奇之處就在於整個大環境都在不斷變化中。我非常期待接下來幾個月內會出現哪些技術創新。

支持我

支持我

上述所有偉大的目標都需要有所付出。我非常感謝大家給予我的支持,也非常感謝你們支持全職開源開發。你可以通過以下渠道支持我:

  • github.com/sponsors/JoshuaKGoldberg:你可以支持通過 GitHub 提供資金支持。

  • opencollective.com/typescript-eslint:支持 TypeScript ESLint 維護團隊。

  • learningtypescript.com:可以看看我的書籍《Learning TypeScript》,如果你喜歡,請給五星好評。

  • twitch.tv/JoshuaKGoldberg,twitter.com/JoshuaKGoldberg:請關注/點贊/訂閱我的頻道。

  • 如果你在計劃舉辦會議、聚會或播客,也可以聯繫我。

感謝你的閱讀,開源快樂!

相關文章

「生成式技術」正在顛覆人類創作!

「生成式技術」正在顛覆人類創作!

整理 | 王啟隆 在過去的半年裡,AI 寫小說、繪畫和剪視訊等熱點新聞火爆全球,現在只需要在鍵盤上敲幾個關鍵詞,AI 就能在燒著我們顯示卡的...

UNIX 工作站的大規模滅絕

UNIX 工作站的大規模滅絕

行業快速迭代下,軟硬體的淘汰速度似乎遠超我們的想象。 連結:https://www.osnews.com/story/135605/the-...

楊致遠離開雅虎 | 歷史上的今天

楊致遠離開雅虎 | 歷史上的今天

整理 | 王啟隆 透過「歷史上的今天」,從過去看未來,從現在亦可以改變未來。 今天是 2023 年 1 月 17 日,在 1706 年的今天...