Why Funding Open Source is Hard

4 min read Original article ↗

Funding Categories

How do we change the developer mindset towards funding open source?

is a tremendous advocate of open source sustainability. She maintains a list of open source funding options called the Lemonade Stand. In the list, one can find an extensive list of the different ways developers can find funding for their open source projects, along with the pros and cons of each.

Press enter or click to view image in full size

Almost every solution provided on the lemonade stand falls into one or more categories:

  • Donations. Ask for money from others to support the project.
  • Support. Charge for support related products or services.
  • License/Usage. Charge for usage of the project.

Let’s break it down further and learn what is involved in each grouping.

Donations

Asking for donations is by far the simplest form of generating funds. It doesn’t require the developer to change their existing behavior. Many projects have found great success by opening themselves up for funding through Open Collective.

Other projects have found success by utilizing a direct payment approach. Patreon, Gratipay, and Liberapay allow developers to add a “Pay Me” button to their project’s README. BountySource and Gitcoin focus on funding specific issues.

What is required to achieve significant funding through donations?

Raising funds through donations requires a lot of fund raising and building awareness. Sean T. Larkin shared his story of how Webpack reached $400k/year in funding. It was not easy. It was not quick.

Unfortunately, funds don’t start flowing in just by joining Open Collective or by adding a Patreon link to your README.

has had a donation button on his repositories for over a year. He let me know that he has made a total of $0. Zilch. Why? Because those donation buttons are asking for money from other developers, who are also asking for money on their projects. It’s as ridiculous as having a hundred developers stand in a circle and pay the person to their left $1.

Many of my projects are highly impactful and widely used, but of those which I could accept donations, they’re relatively small and/or development is essentially done. Making shirts, hosting meetups, or even doing further development on them is neither reasonable or necessary. At the same time, I think devs should be compensated for the value they create.

- Kent C. Dodds

Donations work for some projects, but for the majority there is little chance of raising any form of sustainable funds unless the developer becomes a public evangelist for their project.

Support

Unpaid support is a given when it comes to open source. Developers find themselves answering questions, handling issues and providing overall support out of the goodness of their hearts and their desire for the project to gain user adoption.

However, as the project grows in popularity, it also requires more support. Some developers decide to monetize their efforts through books, merchandise and paid support.

However, most developers do not go this route. In reality, many smaller open source projects would not benefit from a support role. And if they aren’t large enough, paid training and books are rarely in demand.

License/Usage

Charging for usage of open source through licensing is often the most lucrative approach to open source. An excellent example of this is Mike Perham’s Sidekiq. Sidekiq is a free open source solution, but by offering a pro and enterprise version, the project pulls in over $1mil/year.

The primary question that a developer must ask themselves when deciding on following this funding path is “Do I want to make this project a business?” If the answer is yes and the project has enough traction, this approach is terrific.

However, most developers aren’t business savvy. They prefer building over spreadsheets and marketing.

Are you willing to change roles?

Now that we’ve broken down the solutions into three main categories, we can begin to see a pattern. This pattern also defines the reason why open source sustainability is still a problem today.

To increase financial support for open source projects, the developer must shift their role from being a contributor to a support role, and eventually a business owner. The greater the change, the greater the potential of funding.

It’s my strong opinion that developers should not have to trade in their passion in order to find substantial funding for their open source projects.