GitHub Sponsors and OSS Sustainability

Recently I received an invite to the GitHub Sponsors program so I figured I’d make a sponsorship page. Building my sponsorship profile was fun!

My Sponsorship Profile.

Having to define dontation tiers was an interesting exercise because I had to figure out reasons that would convince (will they?) people that the donation is worth it somehow. What can I offer in my spare time? What are supporters getting in return? Is it valuable?

Will it work?

Getting people to donate is a very hard thing to do, and it is definitely harder for those who are no influencers because they lack visibility.

Not to mention that asking for a donation feels a bit like asking strangers on the street for money, maybe for a service that you deliver to somebody else. 🙃

Overall, I have a job and I am lucky enough to not have to rely on OSS funding to make a living. I work on side projects and OSS at random times and for fun, so much so that I started a (very WIP) personal Open Source Contributor Manifesto and Policies to communicate this to others:

Open Source Contributor Manifesto and Policies.

If you want to pursuit the OSS funding path my recommendation would be to invest in personal branding first.

Alternatives to donation-based systems

GitHub Sponsors and donation based platforms are great for some, but ultimately I think that the path to OSS sustainability is to reward developers based on usage stats (installs or consumers/licenses).

For example I have this tiny project that has 24k downloads a month. It is definitely providing value, so how could this translate to a few bucks? 🤷‍♂️

Non-profitable OSS with 24k monthly download.

A very controversial solution that I have had in mind for a while is paid packages.

Library owners could make a buck from every user of their library by integrating with a centralized service that would require customers to provide a license token (in the form of environment variable) when they install a library. When users haven’t paid for the library, the install would fail.

$ PAID_PACKAGES_TOKEN=123 pip install <package-name>
🔴 PAID PACKAGES: Error
   <package-name> is a paid package.
   In order to use it please donate $1 a month to it.
   https://paidpackages.io/support/package-name

Core members of packages (maintainers) would do revenue sharing or collect funds under an organization. Occasional contributors would either get some kind of credit or get to use the library for free.

You can read more about this idea on GitHub.

Mine Cryptocurrencies

Another controversial idea I came up with is that, when in dev mode, libraries could mine cryptocurrencies in an unobtrusive manner.

This would happen in a singleton manner where mining is done per project and funds are distributed among the packages in that project.

The miner process would be spawned alongside the main running process for the project eg. a node process that runs webpack.

Support and Training

Selling support and training are probably the most viable options for people who want to live off of Open Source Software. I doubt that this is a viable option for the ones who work on OSS in their spare time. The tough truth is that many OSS contributors have a full time job!

Getting Hired

There are companies that use and produce Open Source Software all the time. An example are ZEIT or Gatsby. Getting a job at such companies could potentially mean that you wouldn’t have to work on OSS in your spare time anymore.

Crowdfunding

Starting a campaign on crowfunding sites could be a good way to boostrap FOSS development.

A successful example of this model is ProseMirror’s campaign on Indiegogo. They managed to raise $50000 to support the development of the project.

npm Inc.

npm Inc. is in a unique position because they own the biggest and most popular package registry and because they don’t yet provide a service to package owners for monetizing their software.

I really hope that they are monitoring the donation based space and eventually will come up with a better solution for everybody (even the small fish) that is not yet another donation based platform!