2

You may maintain several open source projects. Have you ever thought about making money from them?

Programmers often spend their free time on personal software development projects. Many programmers turn their experiments and innovative ideas into open source projects that everyone can use for free. Most of the open source projects on GitHub are made by developers for developers. In other words, programmers can integrate most open source projects with their software projects by saving additional development time. In addition, there are many open source developer tools that can make developers' lives easier.

Programmers often work on open source projects as a hobby, just like me. However, while working with open source projects, we are also engaged in a software engineering job to help us pay the bills. Therefore, there is no doubt that if these projects help us pay the bills, we can spend more time on our open source projects.

I made quite a lot of money my open source project In this story, I will guide you how to turn your open source project into a source of income without losing the existing community.

Make sure your project solves a problem

Behind every successful open source project, there is an engineering problem that everyone needs to solve. For example, the zx project received more than 18k GitHub stars in three months, and it introduced a way to write Bash-like shell scripts using JavaScript. The Bash scripting language is really slow and unfriendly to developers. When the logic of scripts becomes complicated, every programmer often struggles with shell scripts because Bash is not a universal language. The zx project solves a problem faced by most developers.

Before you consider the profitability process, you need to make sure that your project is successful. The success of open source projects depends on the size of the developer's audience. If you often receive feature requests, feedback, and questions in the communication channels of open source projects, congratulations, and you can continue to the next step. Otherwise, make sure that your open source project solves the problems most developers face. In addition, make sure to maintain a clean and up-to-date website and documentation.

Make it ready for production!

Programmers look for open source frameworks and libraries and incorporate them into various projects. Not all programmers will integrate your open source projects with side projects. They may often try to integrate your projects with enterprise software systems. Therefore, you need to prepare your open source project for production to support enterprise integration. Production-ready refers to software modules that are well-designed, well-documented, maintainable, scalable, stable, error-free, and fully functional.

Make sure your open source project has the above requirements. Otherwise, please thoroughly test your project, refactor your code base, and add more features to meet enterprise-level needs. Check the following stories to verify your coding skills, because the quality of your open source project depends on them.

5 practices to improve programming skills: https://betterprogramming.pub/5-practices-to-improve-your-programming-skills-e2ed9b8463db

Commercialize without losing the community

Now, I will guide you to get a source of income from your open source projects. Before proceeding, be sure to verify the above two points, because the success of the revenue stream depends on these key facts. There are many profit methods for open source projects (also known as open source business models): paid developer support, freemium (paid services), SaaS subscriptions (software as a service), crowdfunding, crowdsourcing, and donation-based models. These modes have different characteristics, and each mode has different advantages and disadvantages.

I have studied many open source profit models. Finally, I found that the donation-based model is very suitable for our personal open source projects. It will not affect your existing community. On the other hand, other monetization methods will directly affect your community, because these models will force players to pay, even if your project is open source. Accept payment based on a donation model, retaining the exact freedom you give to the community.

Your project needs to have some considerable impact on the developer community in order to receive donations. Your project may not receive more donations in the first phase. Therefore, we need a back-up income stream consistent with the main donation model to keep you motivated. If you can combine purely passive income streams such as advertising with a donation-based model, that would be great. These are all theoretical methods. I will explain how I create revenue streams for my open source projects.

Create your income stream

Now that we know how to build a theoretical revenue stream through advertising and donations, let us build a practical one. First of all, you need to choose where you want to accept donations. I chose Patreon because of its simplicity and transparency. Link your donation platform to the project’s website and code base. Initially, make sure to add some lower monthly donation levels, such as $2, $5, and $10. The reason is that anyone may be inclined to donate such an amount for your efforts. Always thank your donors in each of your releases to inspire them to continue to donate and subscribe.

The second step is to integrate the advertising platform into your open source project's website. We always use static website generators to build documentation and websites for open source projects. Choose a static website generator and you can easily place some advertising blocks. I chose Docusaurus because of its simplicity and flexibility.

Choose an open source and friendly advertising platform, Google AdSense is not suitable for open source projects. EthicalAds and Carbon Ads are designed for open source projects. I chose EthicalAds because it provides a higher revenue share compared to the Carbon platform.

Summarize

I choose a donation-based model to generate revenue streams because I want to ensure the freedom of the existing developer community. The Apache Software Foundation (ASF), the world's largest open source organization, also uses a donation-based model to pay for its expenses. The people gathered around your open source project make various contributions every day to make it a success. Some people may decide to make a financial contribution to your open source project through donations.

If you need to use your open source project to earn a source of income-make sure you solve a problem to make it produceable, accept donations, integrate an open source-friendly advertising platform, and continuously improve your project every day. It takes time to make this revenue stream work. My open source revenue stream generates close to $100 a month, and I hope it will make more money one day.


杭州程序员张张
11.8k 声望6.7k 粉丝

Web/Flutter/独立开发者/铲屎官