如何將你的開源項目變成穩定的收入來源
你可能會維護幾個開源項目,有沒有想過從中賺錢?
程序員經常將空閑時間花在個人軟件開發項目上。許多程序員將他們的實驗和創新想法轉化為每個人都可以免費使用的開源項目。GitHub 上的大部分開源項目都是由開發人員為開發人員制作的。換句話說,程序員可以通過節省額外的開發時間來將大多數開源項目與其軟件項目集成。此外,還有許多開源開發人員工具可以讓開發人員的生活更輕松。
程序員經常把開源項目作為一種愛好來工作,就像我一樣。然而,我們在與開源項目合作的同時,還從事著一份軟件工程工作,幫助我們支付賬單。因此,毫無疑問,如果這些項目幫助我們支付賬單,我們可以將更多時間花在我們的開源項目上。
我通過我的開源項目[1]賺了相當多的錢。在這個故事中,我將指導你如何在不失去現有社區的情況下將你的開源項目變成一個收入來源。
確保你的項目解決了一個問題
每一個成功的開源項目背后,都有一個每個人都需要解決的工程問題。例如,zx[2] 項目在三個月內獲得了超過 18k 的 GitHub 星星,它引入了一種使用 JavaScript 編寫類似 Bash 的 shell 腳本的方法。Bash 腳本語言確實很慢,而且對開發人員不友好。當腳本的邏輯變得復雜時,每個程序員都經常與 shell 腳本斗爭,因為 Bash 不是一種通用語言。zx 項目解決了大多數開發者面臨的一個問題。
在你考慮盈利過程之前,你需要確保你的項目是成功的。開源項目的成功取決于開發人員受眾的大小。如果您在開源項目的溝通渠道中經常收到特性請求、反饋和問題,那么恭喜您,您可以繼續下一步。否則,請確保您的開源項目解決了大多數開發人員面臨的問題。此外,請確保維護一個干凈且最新的網站和文檔。
讓它做好用于生產準備!
程序員尋找開源框架和庫,將其納入各種項目中。不是所有的程序員都會把你的開源項目和業余項目整合在一起,他們可能經常試圖把你的項目和企業軟件系統整合在一起。因此,你需要使你的開源項目為生產做好準備,以支持企業的整合。生產就緒指的是設計良好、文檔完善、可維護、可擴展、穩定、不易出錯和功能齊全的軟件模塊。
確保你的開源項目有上述要求。否則,請徹底測試你的項目,重構你的代碼庫,并增加更多的功能以滿足企業級需求。檢查以下故事來驗證你的編碼技能,因為你的開源項目的質量取決于它們。
提高編程技能的 5 個實踐:https://betterprogramming.pub/5-practices-to-improve-your-programming-skills-e2ed9b8463db
在不失去社區的情況下實現商業化
現在,我將指導你從你的開源項目中獲得收入來源。在繼續之前,請務必驗證以上兩點,因為收入流的成功取決于這些關鍵事實。開源項目有許多盈利方法(也被稱為開源商業模式):付費開發者支持、免費增值(付費服務)、SaaS 訂閱(軟件即服務)、眾籌、眾包和基于捐贈的模式。這些模式具有不同的特性,每種模式都有不同的優缺點。
我研究了許多開源盈利模式。最后,我發現基于捐贈的模型非常適合我們個人的開源項目。它不會影響你現有的社區。另一方面,其他盈利方法會直接影響到你的社區,因為這些模式會強制玩家付費,即使你的項目是開源的。基于捐贈的模式接受支付,保留你給予社區的確切自由。
你的項目需要對開發者社區產生一些相當大的影響才能獲得捐贈。你的項目在第一階段可能不會得到更多的捐贈。因此,我們需要一個與主要捐贈模式相一致的后備收入流,以保持您的積極性。如果你能將廣告等純粹的被動收入流與基于捐贈的模式結合起來,那就太棒了。這些都是理論方法。我將解釋我是如何為我的開源項目創造收入流的。
創造你的收入流
現在我們知道如何通過廣告和捐贈建立一個理論上的收入流,讓我們構建一個實用的。首先,你需要選擇你要接受捐贈的地方,我選擇 Patreon 是因為它的簡單性和透明性。將您的捐贈平臺鏈接到項目的網站和代碼庫,最初,請確保添加一些較低的每月捐贈級別,例如 2 美元、5 美元和 10 美元。原因是任何人都可能傾向于為你的努力捐獻這樣的金額。始終在你的每一次發布中感謝你的捐贈者,以激勵他們繼續捐贈訂閱。
第二步是將廣告平臺整合到你的開源項目的網站上。我們總是使用靜態網站生成器來構建開源項目的文檔和網站。選擇一個靜態網站生成器,你可以很容易地放置一些廣告塊。我選擇Docusaurus[3]是因為它的簡單性和靈活性。
選擇一個開源友好的廣告平臺, Google AdSense 不太適合開源項目的網站。EthicalAds[4] 和 Carbon Ads[5] 等平臺專為開源項目而設計。我選擇 EthicalAds 是因為與 Carbon 平臺相比,它提供了更高的收入份額。
總結
我選擇基于捐贈的模式來產生收入流,因為我想確保現有開發者社區的自由。世界上最大的開源組織 Apache 軟件基金會 (ASF) 也使用基于捐贈的模式來支付其費用。聚集在您的開源項目周圍的人每天都做出各種貢獻,使它獲得成功。有些人可能決定通過捐款來為您的開源項目做出財務貢獻。
如果你需要用你的開源項目賺取收入來源--請確保你解決了一個問題,使它可以生產,接受捐贈,整合一個開源友好的廣告平臺,并每天不斷改進你的項目。使這種收入流發揮作用需要時間,我的開源收入流每月產生的金額接近 100 美元,我希望有一天它會賺更多的錢。
本文轉載自微信公眾號「前端全棧開發者」,可以通過以下二維碼關注。轉載本文請聯系前端全棧開發者公眾號。