I think that this essay is fundamentally brilliant, but doesn't come out and yell the self-evident truth: the ONLY way this ever takes off is if Github does it.
And man, do I ever hope that they do.
There's no other entity in the ecosystem that even approaches the role Github plays, with all due respect to Gitlab and the rest of the also-rans. It'd be wonderful if they did the same thing, but in the end, they are going to be the contrarian 2%.
It's important to remember that GH sponsors isn't even out of beta, yet - you still have to apply and make sure that all of your tax docs are in order.
One small proposal I'd make is that I suggest Sponsors and Pool could exist happily in parallel. I believe that there's a meaningful difference between being the patron of a developer and feeling like you're backing a creator with feelings and a story and a family... and wanting to be a good citizen that has an approved list of projects that I benefit from and want to support.
I can sponsor Matz, get his updates and feel good about knowing I am counted as a supporter AND set aside $$$ per month to contribute to all of the tools I use in my projects simply because it's the right thing to do and I want those projects to exist for the long term. They are completely different initiatives. Patreon vs Humble Bundle, if you will.
Perhaps most critically, Github could keep absorbing the cost of processing payments to sponsored developers but also announce that they plan to hold back 3% of your monthly pool amount to cover CC processing fees. I think most people would be more than fine with this.
But if Github isn't on board, this is all just speculative fiction. Please, if you work at Github, make this happen.
So we delegate complete control over open source financing channel to Microsoft, because it's most conveniant option? Sounds a bit insane.
I do use both GitHub and its Sponsors feature, but I'm still hoping for open source community to come to consensus to use a service from non-profit organization like Mozilla or EFF.
Friend, you are going to be waiting for a very, very long time.
In the meantime, every day OSS project maintainers get burned out, depressed, and often called mean names and there is no viable mechanism for them to get paid for it. CodeFund shut down, Flattr is not a significant player - I first heard of it in this thread.
Frankly, the network effects of GH make them the only viable place for this to happen in the medium future.
I agree with all your points, but I'm still optimistic.
The biggest two issues are that anything related to finances is heavily regulated, and that third-party services integrated into repositories/blogs/posts create lot of friction for users. It should come down to 1 button: donate fixed amount immediately. It's easy to press that button few times, or to press the button every time you update to new version. Simple is good.
One way around regulation would be for each online service to have a independent credit system. Like karma, but you can also spend it to reward others. Communities would reward each other for creating content. Independent entities could offer to exchange your GitHub credits to Reddit credits. Those entities could also handle exchange to and from actual money, with credit card fees and necessary financial regulation isolated to just those entities. Let the market regulate itself.
Do you not see that the very thing that made GH a social hub for something that was previously totally disconnected is exactly what is required to push something like this anywhere close to a critical mass?
What other service is going to provide a consistent, trusted interface with payment details already stored that is so close to the projects that you're using?
Maybe the npm registry... oh wait. :P
Seriously, if what you want was going to happen, it would have happened by now. There isn't another force on the planet today that could make even a small dent.
To send someone money I'd have to know their address (not viable). If they only accept money through GitHub sponsorship, then I'm prevented from donating in any other way.
Which option do we (content creators) endorse? We definitely need to transition to better funding model. Seeking out donations and sponsorships is frustrating and that time could be better spent. GitHub Sponsors managed to solve most problems on technical level, but I'd like to see other options.
> To send someone money I'd have to know their address
You could just ask them? I recently donated to an OSS project for which the maintainer didn't publish any means of accepting donations - I simply asked and he sent his PayPal address.
Another option would be for maintainers to publish a Bitcoin address in their profile - but again, if not already present, just ask.
Yes, I got that; I was suggesting you can just ask the author for their address or other means of payment, but in addition made a suggestion of authors publishing Bitcoin address (in reality many would likely prefer fiat currency though).
With my tongue firmly pressed in cheek, I think you're being charitable to imply that most loud FOSS champions are currently making any meaningful attempt to send money to developers.
No, this is all about hating Github/Microsoft because they are big and because they won. Nothing in my comment is remotely controversial to realists.
Author here - 100% agree on all fronts! I was dancing around this conclusion but it really does need to be GitHub.
And I agree people would be fine paying their own fees if it came to that. Also, in that case, if someone is donating a non-trivial amount, they're incentivized to fund their wallet with a cheaper payment method like an ACH transfer.
I just want to point out that in Europe we have 0-fee SEPA transfers that also work for regular payments.
I'm not sure why nobody makes use of that more really. There are simple-as-paypal solutions for it, and given the amount that CC processing costs I'd have expected it to be picked up more. Maybe someone here has practical experience to share on why it's not that easy?
Yes SEPA transfers are free in the Eurozone, which as you know is a subset of “Europe,” but there is the tricky issue of VAT — which might be due on your donations.
This might actually be the right question to ask, thanks for poking. :)
From a customer's perspective, fraudulent transactions are handled in the best way possible. Here's Stripes docs on it [1]:
> Customers can dispute a payment through their bank on a “no questions asked” basis up to eight weeks after their account is debited. Any disputes within this period are automatically honored.
> After eight weeks and up to 13 months, a customer can only dispute a payment with their bank if the debit is considered unauthorized. If this occurs, we automatically provide the bank with the mandate that the customer approved. This does not guarantee cancellation of the dispute; the bank can still decide that the debit was unauthorized and the customer is entitled to a refund.
> Unlike credit card disputes, SEPA Direct Debit disputes are final and there is no process for appeal. If a customer successfully disputes a payment, you must contact them if you want to resolve the situation.
So for a small company I can see how this process would be stressful. Although I'm not sure what the rate of fraud by the customers would be. After all, the customer still signed a contract. But that would likely need litigation then.
So, I haven't been on the vendor side of that. Not sure how much more stressful it is than CC, and if it's worth a few % of your revenue...
What you are describing here are SEPA direct debits. Many countries including the USA have a similar instrument. While it is free for the consumer from whom money is being collected, it is generally not free for the business that is collecting the money. So in that way, it is the same as credit cards, but the fee is a lot less.
True, but if the fees are a lot less then the question remains if they're just not worth the hassle, or if there are other reasons why adoption in companies (that I have seen) has been slow.
Regardless, an organization like github should be able to handle this, if they wanted to.
Your article does raise a few great points... about Github specifically. But not about funding sustainable OSS development in general.
Open source also is not a business model. It's a principle that relates to intellectual rights and copyright: the author explicitly stating that they won't exercise their rights as to what others do with their work, provided then that others share any modifications under the same terms of use. That's open source in a nutshell.
The direct implication, then, is that any business model that hinges on selling licenses that give a very restricted permission on the use of (a copy of) the software, is excluded. Which is exactly how games and products from Adobe or Microsoft are sold: you buy a license - a permission from the original author - to use the software.
Github itself has never been a marketplace to sell software. There are no affordances that allows anyone to sell and buy license keys or whatever. It's always been a descendant in the spirit of SourceForge or Freshmeat: a platform for hosting codebases via version control. No more, no less. Github pushes open source as a matter of principle because it's - above all - excellent marketing that doesn't need complex tooling: simply adding a LICENSE.md file with the GPL or MIT license is already enough.
Open source is not flawed, as you state. It's above all a principled choice you make. And it's a choice you make depending on the type of value you want to extract from the project you're writing.
In your article, you are lamenting the low income numbers from publishing code under an open source license on Github. Well, ask yourself this: Maybe it's not open source that's flawed, but the other way around: The tools you choose to extract value not fitting your expectations. If you really want to monetize software, then maybe you're better off looking into a closed source license and a platform that does allow you to sell license keys. Much like what Sublime or InteliJ and such do.
It's true though that funding Open Source projects is problematic. But this has always been true for any non-profit venture: Ranging from charity, culture, environmentalist causes or other types of citizen activism that doesn't involve setting up a private business. Open Source software is no exception, and unless you're able to charge for consultancy or derivative products (e.g. a service build on top of OSS software), you're funding options are very much limited to grants, philanthropy or donations.
Nadia Eghbal did an excellent study for the Ford Foundation that sums up the issues with funding open source nicely: Roads & Bridges, the unseen labor behind our digital infrastructure:
Beyond that, the pool & wallet solution you're proposing is above all an attempt to incentivise a specific type of funding: private, individual donations. I think it's a great idea in it's own right, and something worth considering. But it should be clear that it's a far cry from a silver bullet that will solve the disparity between the many profiting from labor of a few against a low financial reward for their efforts.
Personally, I think that if you're willing to work on your own open source projects, you have to mindful that you exclude the possibility to directly derive wealth from what you've build.
It's up to you then to figure out the alternatives: e.g. selling training, workshops, support,... or maybe getting hired by a company who are willing to let you work part time on your OSS project, or getting publicly funded because your project caters to the public good (e.g. culture, health, education, mobility,...)
I'm cognizant that I'm replying to someone named CaptArmchair. Based on your handle, I say: well-named.
Look, I'm sure you remember the heartbleed scenario a few years back... the moment when we all realized that the human behind one of the most critical pieces of our infrastructure stack was a slave to his sense of responsibility, but he lacked charisma and hustle and social presence such that he wasn't able to keep it together. His mental and emotional health were sorely suffering. Once people realized what was happening, the plate got passed around and from what I understand, things are a lot better now, for that one guy on that one project. Maybe it's wrong to over-focus on one guy, but his example is top of mind as I say the following:
You could not write the above if you weren't in a position of being privileged to do so. You can wax poetic about how writing free software is an expression of the divine all you want, but meanwhile the entire world is reconfiguring itself around software and a lot of those folks are going to need a source of income even if you're already doing well enough that you don't care to push the issue.
Essentially: you are not factoring in the way the world is changing. Most people building software and publishing it on Github, by numbers, are people who are using their Github profile as a resume. It's not been about RMS and ESR for a long time.
It's cool if you don't need to pay the bills, but don't demonize people who are hoping all of this energy invested in learning to code need to eat.
Hm... that's not at all what I intended to convey. And I think you're putting things in quite extreme terms.
The field of software / digital engineering has grown an exploitative side. This is absolutely true. To be crystal clear, without diving into detail and derailing the thread: I find this evolution reprehensible and not how humans ought to be treated.
Is that dynamic then the result of Open Source as a princple of intellectual rights? Is it really, truly an inevitability that taking on Open Source projects and pushing code on Github now singularly serves as a resume of sorts for applying for a paid job? Is giving up your intellectual rights by default really the only way to ensure that you can make a living from writing code?
Because of it is, well, that should rather lead to bleak conclusions about the state of the value that developers are willing to attribute to the time and effort they pour into their craft, the labour market, labour protection, and societal values as a whole. Instead of concluding that Open Source itself is the problem (it is not) and people ought to donate a buck-and-a-half to anyone who has a repo with an arbitrary number of stars on Github.
You could draw parallels with other fields such as academics, film, music, games, books, fashion and so on. So, exploitation is not an entirely new dynamic either. Plenty of aspiring graduates, actors, writers, musicians, models, graphic designers,... are scrounging by, and get exploited in the process, while relatively few end up in a good place. Usually, their complaints are met with a short, unsympathetic "should have chosen a real career/job instead!" quip. If I'm allowed to play the devil's advocate: Should we add software developers to that list as well?
Of course not! In fact, nobody deserves to be outright reviled for the professional career they pursue.
The problems you describe are societal. They are the net result of larger economic dynamics in a rapidly globalized, free and unregulated marketplace. A markpetlace in which a few smart people understood how to leverage open source software in order to accumulate enough leverage to enter the financial market, moving on to accrue even far greater wealth. And what you describe is just another take on the Tragedy of the Commons.
Like I said, if the world is reconfiguring around software, it should be held to pay the true price of maintaining that infrastructure. Much as is pointed out exactly by Eghbal's study. After all, there is no such thing as a free lunch.
You're making some good, if aspirational points, but I'm still not convinced. After all, artists have had patrons for a long time. The gallery system is a relatively new invention.
Do I believe that artistic creators are a net-win to society? 100% Do I wish that artistic professions were seen as worthy of support? Yes I do. But in actual today reality, most artists can announce that they are doing a show, staging a production, what have you, and make some money.
I would argue that the only way for someone to approximate this in 2020 as a developer of creative but not economy-driving things is for Github to adopt a pool as described by the OP.
One thing I want to be really clear about is that people shouldn't support projects with lots of stars just because they have lots of stars. Stars are a passible metric for evaluating which tool to choose, perhaps. But I think the power of the pool concept is that Github could hit you up when you git clone, or maybe even occasionally ping you with a "hey, are you finding this useful? consider adding it to your pool". Or how about opt-in reminders like "hey, you're about to add your 80th project to the pool, but at $80 pledged that would put your contribution below $1 for each project. no shade intended, but how cool would it be if you kept your pool >$2/project? it'll be the best value for $160 this month."
It's perfectly valid to leverage Github and open source as a means to an end: either to secure an income as an employee through public exposure of your work, or secure patronage through donations in order to attain a type of (partial) financial independence that allows for creative freedom.
Either way, every line of code that gets pushed in this way, was never directly commissioned nor sold to a paying customer. And that, well, that's a choice between different business models. It's not an inevitability as you make it seem.
It's wonderful to see how open source has flourished, and people ought to be compensated for the work they willingly and consciously distribute u free. I'm more then happy to pledge a small donation left or right, or contribute a patch, a piece of documentation or do a bit of mouth-to-mouth promotion.
Lamenting then that you can't cover your living expenses through donations and shifting the responsibility towards Github e.g. they should provide more affordances to funnel more people towards donating? That's quite an explicit take on monetization which is deserving of critique. Especially if the alternative entails, well, starting to properly value, market and sell your work, which is how the market essentially works.
As I said, that doesn't exclude me from acknowledging wealth disparity, and the fact that loads of people try to use open source and Github as a jumping board to secure a steady wage. I think that's really important: I've hired people in the past for enthusiastically showing and discussing their work, as it shows so much over who they are a a person, what drives them, and how they think.
Finally, let's not forget that Github isn't a charity nor a public administration: it's a private company with a profit motive as well. Which is a can of worm into itself if you start considering centralization, walled gardens and the nefarious consequences of those dynamics.
(By the way, patronage or philanthropy, as you mentioned, historically wasn't driven by purel altruistic motives: nobility employed artists as a way to flaunt their wealth and their power towards their peers.)
> the ONLY way this ever takes off is if Github does it.
Yes, let's encourage another walled-garden controlled by a dominant player which would be benefiting from FOSS donations (keeping % of it) while doing nothing to make GitHub a FOSS platform at the same time.
First, they don't even cover the cost of their credit card processing. They even used to match donations up to $5000. This is clearly not a profit center for them.
What it is, actually, is excellent long-term business sense. They know that maintaining open source is draining, often thankless and demoralizing. Making sure that their best assets are provided for is just smart.
But also, your attitude is wishful thinking, like Linux on grandma's desktop. And are you seriously implying that Github isn't a FOSS platform? That seems intellectually dishonest at this stage.
My grandma runs Linux on her desktop (I set her up with Fedora).
GitHub hosts lots of FLOSS, of course. The platform itself is fully proprietary, although apparently they plan to liberate some amount of the core. That's why snowdrift.coop choose gitlab.com, although even that's a compromise (we used to use their githost.io offering so we could stay on gitlab CE, but that service closed down and we had to weigh staying on fully-FLO tools vs network effects).
I just met a grandma that runs Linux. That surprised me. But it goes to show that sometimes wishful thinking can be achieved.
If we make something as a community that can replace GitHub in convenience and spread awareness of the problems with GitHub being our main code hosting platform, we may be able to convince the wider community to use a platform for FOSS that is itself FOSS (which is what I believe ekianjo was talking about).
I mean, if GitLab and the rest of the also-rans can't make a dent in Github's market share, I don't understand where you think this market disrupter is going to emerge from unless there's a grand migration to something Next that Github inexplicably is not able to adapt to.
Many on HN have noticed, I have a serious philosophical issue with centralization and closed source software.
Every time I see people say “X is the only one who can do it, I hope X is gonna do it but they won’t” this is part of the problem.
I am going to post this link right now on HN, under the title “A decentralized model for funding open source” which an entirely decentralized approach to funding open source projects, journalism and more. And we are launching it Q4 of this year. Once we do, it will spur permissionless innovation.
Look, VOIP disrupted phone companies, Web disrupted AOL, drove many costs to almost zero. Just in the last 20 years. We can do the same here. Stop waiting “Please” for GitHub.
> the ONLY way this ever takes off is if Github does it.
I disagree. What this need is a popular, well known and trustable organisation with enough money to invest into this. Github could be this organisation, but other could do that to, like Mozilla for example, or the FSF, Patreon, Facebook, Apple, maybe even google if they can sell a vision of them not shutting it down 6 monts later.
What is needed is awarness of such an option. Which would work better of course when integrated into the platform. But patreon seems to have proofen that it's also possible to do this with external services.
Also a trustable institution to handle the money
And finally a decent interface to manage your sponsorings, which also means someone doing the work in the background to figure out whether a project accepts donations and how. Would be easy if the platform supports it somewhat automatically, but could also be done manually for projects on other platforms.
I would even go a step further and not limit this to open source projects, but the whole web. Add a simple button into the browser to allow sponsoring for the actual visited url. With some background-service which is smart enough to figure out whether the visited url is a project on github/gitlab/sourceforge, or a blog, a podcast, some content-company , a streamer, or some dude on twitter with something you wanna support.
And if nothing can found to support, an issue is created and the humans in the background will figure out how to support what you consider as supportable, and will inform you if something was found. And with time some schemas and APIs will grow so platforms will allow automation fof this.
I am completely puzzled why you'd say that you need a "popular, well known and trustable organization with enough money to invest in this". How is the largest developer ecosystem in human history not the exact entity to do this?
But then you go on to suggest Facebook, Apple or Google... I'm not sure we're experiencing the same zeitgeist. Is Trump president where you are?
This is probably meant to be a feature request aimed at the Github team. They introduced a sponsorship program and now that it's gaining traction people want a more streamlined and optimized product.
And man, do I ever hope that they do.
There's no other entity in the ecosystem that even approaches the role Github plays, with all due respect to Gitlab and the rest of the also-rans. It'd be wonderful if they did the same thing, but in the end, they are going to be the contrarian 2%.
It's important to remember that GH sponsors isn't even out of beta, yet - you still have to apply and make sure that all of your tax docs are in order.
One small proposal I'd make is that I suggest Sponsors and Pool could exist happily in parallel. I believe that there's a meaningful difference between being the patron of a developer and feeling like you're backing a creator with feelings and a story and a family... and wanting to be a good citizen that has an approved list of projects that I benefit from and want to support.
I can sponsor Matz, get his updates and feel good about knowing I am counted as a supporter AND set aside $$$ per month to contribute to all of the tools I use in my projects simply because it's the right thing to do and I want those projects to exist for the long term. They are completely different initiatives. Patreon vs Humble Bundle, if you will.
Perhaps most critically, Github could keep absorbing the cost of processing payments to sponsored developers but also announce that they plan to hold back 3% of your monthly pool amount to cover CC processing fees. I think most people would be more than fine with this.
But if Github isn't on board, this is all just speculative fiction. Please, if you work at Github, make this happen.