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