Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Patreon for open source?
60 points by hackathonguy on June 9, 2016 | hide | past | web | favorite | 60 comments
Hey guys,

I'm participating in an hackathon and had this idea: users of open source github repos can contribute $X for every commit the developer contributes, with a monthly cap. It's a recurring donation based on development activity.

Give some love to open source devs.

What do you guys think?

As others have pointed out, platforms to fund work on open source projects already exist, and the best part is: they're open source themselves, so you can contribute! In fact I was the top developer of Gratipay for a year myself, and now I've created a fork called Liberapay (the reasons were the legal difficulties Gratipay faced in the US, and the decision its founder made to turn it into a non-neutral platform).


https://liberapay.com/ https://github.com/liberapay/liberapay.com (Python)

https://gratipay.com/ https://github.com/gratipay/gratipay.com (Python)

https://salt.bountysource.com/ https://github.com/bountysource/core (Ruby)

https://snowdrift.coop/ (not operational) https://git.snowdrift.coop/sd/snowdrift (Haskell)

Are there collaborative translation services for open source apps and products? One could of course use google translate, but it would be nice if the translation is done by humans who actually use the product/service they are translating.

In addition to the others listed, there is also https://crowdin.com

Paying per commit seems as sensible as paying per LOC (related story: [1]). Simple recurrent monthly donations as one can easily set up (eg. on Flattr) make more sense, in my opinion.

[1] http://www.folklore.org/StoryView.py?story=Negative_2000_Lin...

I have an anecdote to support your comment: One of the more valuable tools I've worked on was random_compat. Over 6 million Packagist downloads and has been integrated in all the major frameworks that still support PHP 5.



Despite being incredibly useful tool, there isn't a lot of active development going on. It just works, and when it doesn't, it's because your operating environment is borked.

Paying per commit wouldn't make sense for us. We have very little technical debt.

Patreon has a feature to limit the number of payments per month for "per creation" campaigns.

It's good for keeping track of exactly how much you'll be spending.

Anecdote: 3 of the 10 campaigns I've "pledged" to use per creation, the rest are monthly.

Yup, that makes sense. Do you have an idea for a better indicator of development activity we can tie into? I thought about telling the contributor how many commits the team makes on an average month, and capping the maximum contribution they'd like to make.

Issues closed is probably a better metric, though there's no actually good metric for software development.

"Released Versions" would be a metric more in line with other creative arts on Patreon (finished comics, finished short stories, finished songs, ...). You can still game what constitutes a "released version", for instance including every patch release kicked off by a CI system, but if you stick towards something more like semver's definition of a minor release as your goal you have something of a benchmark idea of what constitutes a "finished release".

Almost as bad as paying a developer per hour

"Give some love to open source devs."

It turns out that many users of open source projects (especially libraries and packages) are other developers !

It is hard to find a piece of modern software which doesn't depend on some open source libraries. Those libraries might depend on other libraries and so on. Just do an `npm ls --depth=4` in a node-based project to see what a nice tree that is. Same thing with cocoapods, carthage, rubygems, pip, cargo, leiningen, etc.

In my view, money should follow the project structure - developers should donate part of the money they receive to the project dependencies and the devs of the dependencies should do the same thing, recursively and that's how you really spread the love !

I've started working on a prototype a year ago, but got discouraged after someone showed me that there are literally hundreds of projects trying to 'spread the love' and as a consequence no love is being spread :)... so I kind of gave up on it for now, but still think this is how it should be done.

I like the idea of using Patreon for Open Source, but I dislike the idea of tying it to the number of commits, because it creates the wrong incentives.

I've also got the impression that most patrons rather prefer a predictable, monthly amount over a varied amount, even if it comes with a cap.

That's why I like Flattr's model - my monthly budget is consistent, even if I occasionally tip projects outside of my regular contributions.

which is also how Patreon works -- you choose how much you pay per month

Here's my idea for getting more money to open source. Someone please implement it, I'm too busy right now.

Central repository (database with website and API frontends) that contains links to donation pages for all open source software. This is crowdsourced information. So if you search for "spark", apache spark appears with link to donation page, and of course more obscure packages will be added as well.

Then a CLI tool is written that scans your code base. This is an open source tool, so for node it will look in NPM packages, for C projects it will look at the make files, etc. Developers can write custom code to detect their own packages if it's not standard.

The output of the CLI tool calls an API at the central repository that creates a report, so you can go to the URL and see all the open source packages you use and links to donate to them.

Now, here is the final piece that would make it so much better, but is more difficult: the central repository itself is a non-profit organization, so instead of having to go to each library's donation page, you donate directly to the central repo (perhaps a set amount every month), and once a month the central repo donates all of the amounts taken in. So if you only want to donate $10 a month, but use 500 open source projects, that's OK, because once a month the central repo will add up all the donations and donate one lump sum. Of course you can change the ratios of donations if you want, so some projects get more of your donation per month than others, and you can remove projects you don't want to donate to even if you use them.

In this way, individuals and companies can fairly compensate all the developers of the open source software they use, easily and fairly, in the amount they can afford.

At the end of the year, you only have to write off your donations to the central repo, and not the hundreds of open source projects, as the central repo is a non profit.


I think this is a great idea. I would love to build it, but don't think I have the breadth of knowledge necessary. Does anything already exist like the CLI tool to determine what OS packages are in your project?

Stackshare could be a basic source, as an example, check Airbnb:


(so a company imports its Stackshare profile & you make a list of the open source projects they're using, and if you have donation information from those projects you show it)

That's a superb idea, but I think that would happen after first getting the basic donation information. I will set up a website to gather this with a description of what the project is trying to accomplish, and see if it gets any traction.

I think http://donate.money would be a great place for this.

Yes, let me know, I'll be happy to help and/or continue the brainstorming You can ping me: matias AT insaurral.de :D

Thanks! I'll shoot you an email

I think the first step is a website that has all of the donation information. This has a search engine to query projects, and the ability to submit / edit information like a wiki. This step needs to happen first. Once this is working, you can start building tools off of this information, like the rest API and the scanning tool.

Nice idea!

I am not sure about Snowdrift. Although the project has an interesting take on crowd funding, it has been in development since late 2013 and does not seem to be making any significant progress. As far as I can tell, it is still in alpha stage and without a working payments system.

https://gratipay.com/ exists already, and it's mostly (all?) open-source as well.

Patreon is more popular, though, and used by a lot of artists. You'll need more arguments than "well it exists too" to convince users to sign up for both.

It seems to not be there now, but some months ago, patreon's entry page listed out the types of "creators" that one could sign up as. As I recall, this list seemed to take actual pain to not mention open source software, among an otherwise exhaustive list of creative endeavors including not just art, music, writing, but technical endeavors as well as such as research. I always took this to mean "programmers not welcome". This was about the time that there was a mass exodus of bloggers from Gittip (what gratipay was called at that time) to Patreon so they almost seemed related.

edit: finally got through their registration. You get: "Which category fits what you make best?"

Video & Film




Drawing & Painting








Crafts & DIY

Dance & Theater

.. it's clear that programmers (unless you're a game programmer) are not welcome.

patreon engineer here! we are very welcoming of open source programmers, and have quite a few on the platform. Many of them, we actually use their code in prod (and pledge a fair amount).

it's pretty impossible to have an exhaustive list of all the kinds of things you can create.. so we've been talking about ways to let people put in their own categories for a while now, but that also has its own set of UX complications.

good to know! thanks

I'm not so sure, there are compelling arguments for both "Writing" and "Crafts & DIY." I think I prefer the latter.

$Manager: What are you working on today?

$Programmer: The usual Cratfting/DIY.

$Manager: OK, sounds good.

I would't take too much stock in that category list, their category system does not work that well. I know they are working a category overhaul (source: I'm the guy behind Graphtreon)

I'm using Patreon for Cachet[0] and it works well enough that people can donate, but discovery lacks for projects which aren't media based. Also, I can't setup another Patreon page under the same account, so what about filling in the voids there?

The idea works, the implementation could be improved.

[0] https://patreon.com/jbrooksuk

You could bring your work over to Baqqer. You can create multiple projects and have each one funded individually. Also trying to make discovery and community more robust is part of our core values. Hit me up if you decide to check it out, I'd appreciate your feedback.

patio11 has written before on why tips or especially "donations" are a bad idea, or at least not the best idea:



businesses have a much greater incentive to ensure continued development of projects than individuals. Personally there's at most a handful of projects I would support with my own money, but my employer's money would be very well spent supporting at least a dozen different OS projects.

What I'd really like to see is some sort of business account for Patreon or one of the others. Lots of companies use open source projects as an integral part of their day-to-day work, yet it does not seem straightforward to set up a monthly contribution to this work for a company. Obviously, they can use one-time grants to the Apache Software Foundation or someone else, but sometimes it is really just a single developer or a couple of developers that develop a crucial software package (webpack and others). Would be great if a company could support this easily as well.

I don't actually know how well it works, but there is exactly ONE way that I've managed to financially support open source software: offer a version with licenses.

For example, my company pays for OpenVPN Access Server not because it offers a ton of value over OpenVPN (it really doesn't, for our use case), but because they provided a way for me to give them money that's acceptable within a corporate budget.

Do your prior work investigation and try to take the good and avoid the bad.

Some prior work from top of my head:

- Bountysource - Gratipay - Patreon - Flattr

Woah - received some amazing feedback here! Thanks everybody.

So I'll definitely look at all the other, similar/identical products. Another takeaway is that this idea probably won't work on a per-commit basis - what's a good way to make sure recurring contributions correspond with actual development activity?

Might work better if you build a unit test and create a bounty for it.

I already donate to Vue and Laravel via Patreon. Per-commit seems like a return to the line-of-code as a metric that was disastrous for obvious reasons.

Yeah, Vue.js is quite successful on Patreon: https://graphtreon.com/creator/evanyou

There is [Gratipay](https://gratipay.com/~Gittip/) which is based on donations. You might look into that as well. A commit I think is not representing anything apart from the fact that it is a (hopefully) compound piece of code. You might want to pay for finished user stories which are estimated properly.

> $X for every commit

Even if you're supposedly giving money to reputable developers that are the percentile less likely to commit fraud, there's still a risk of it happening.

A more reasonable approach would be a monthly or a "version" contribution.

Even better than that would be a "fund" where you pledged your money to developers/projects, and it would be distributed equally or by a clear metric.

There is no perfect metric to determine how much a contributor deserves, but there is another simple solution: let each member choose how much of the project's income they take! This is how Liberapay teams work, and how they used to work on Gratipay (they're working on bringing that feature back).

If you want to know more, the second part of https://medium.com/liberapay-blog/a-new-platform-to-fund-wor... is a short introduction to our teams system and contains a few additional links.

There is Tip4Commit: https://tip4commit.com/

You should check out Gratipay(Formerly Gittip) - Although we currently aren't back up to speed (with working payments) it's an open source project/company.


http://www.backerpass.com would work well as it doesn't require backers to signup for an account like Patreon. (disclaimer: i know the guy who created it.)

Thanks for the mention! In case anyone is interested here's an example of an OSS project using BackerPass: https://backerpass.com/tomatoes. If anyone wants beta access shoot me an email: gabe@backerpass.com

That's what we're doing over at Baqqer.com (https://baqqer.com/) - come over and add your project!

If you're interested in helping out you should join us. :)

Was curious what you guys do, but honestly, every page redirects to a signup/login page.

"A social community of makers building, selling, and crowdfunding together"

There is no clarity as to what you actually do.

Which page redirects you back? Even the explore/about/tos pages? We're working on redesigning the front-page right now to solve the messaging problem. Thanks for the feedback Jason.

Sorry, redirect is probably a bad term? It seemed like all links off the main page that I were interested directed me to a signup page.

For example, links under build your dream and sell your product both bring me to a Create Your Account page. I don't want to create an account. I want to know what the heck you do.

Also, your headline: "Welcome to Baqqer A social community of makers building, selling, and crowdfunding together" doesn't tell me anything about what you do, or more importantly, the problem you are solving.

If it's "Let users give you money for your open source project" then just say it.

Side tangent: if you want to know how Patreon creators are doing: https://graphtreon.com/top-patreon-creators

If you measure wrong thing then you will get wrong results. Do you want programmers to think about "how many commits this issue is worth"? Just publish your Bitcoin address in readme file.

Patreon produces money. Payment information in a README doesn't. They're not comparable.


"Produces money"? "Payment information"? I think we misunderstood each other. If you want a way to receive donations, you can publish Bitcoin address. If you want an elaborate way to enforce payment and produce money out of voluntary but unconscious decision - yes, Patreon is the way.

I know that the best thing you can do from SaaS perspective is to get customer's credit card and permission to bill small non-defined amount indefinitely, but I find it morally wrong.

Still, I don't think that WinRAR would have many paying fans on Patreon.

"If you want a way to receive donations, you can publish Bitcoin address."

Yes. If you want payments, you can publish a Bitcoin address, or anything else you'd like (my point here is not about Bitcoin specifically). To a first approximation, you won't actually get any payments, though.

That's the difference.

We don't live in a world where people haven't ever tried this brand new donation idea. We live in a world where a lot of people have. Their reports are almost uniform... they literally write blog posts when they receive enough money to pay for a meal in a month or a year, because that's how rarely it happens. It's not a functional mechanism for making money. It doesn't even rise to the level of paying for a hobby; it tends to run at donation rates roughly comparable to what the author could get walking down a busy street every day and keeping their eye out for loose change, and well below the rate of "collecting bottles out of the trash" in any state with a bottle deposit.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact