top | item 35519706

Sponsor the open source projects you depend on

358 points| LorenDB | 2 years ago |thanks.dev

199 comments

order
[+] Sephr|2 years ago|reply
The UI imposes a 5% minimum (and 15% default) value for "Tip thanks.dev" under "How much would you like to donate each month?" on https://thanks.dev/settings

This implementation is clearly for-profit. I want to directly tip open source projects using a system that doesn't involve other third parties taking a significant cut.

[+] fmx|2 years ago|reply
https://thanks.dev/faq says:

  What are your fees?
  Tips at time of donation. You decide.
If payment is required to use a service then that payment is not a "tip" - it is a "fee". Anything over the required payment would be a "tip". This FAQ answer implies that the required payment is zero, which, it turns out, is false.

There is absolutely nothing wrong with charging a fee for a service, but there is something wrong with lying about it.

[+] aunty_helen|2 years ago|reply
The irony of "someone should build something for free" when complaining about a donation system for helping open source projects get paid for their work.
[+] noisy_boy|2 years ago|reply
That seems to be different from this article[0]:

> Thanks.dev presently supports itself through a voluntary tip percentage that, if more than zero, gets deducted from donation amounts along with a Stripe payment processing fee prior to distribution.

I also think they should allow manual addition of projects. E.g. I use Syncthing but that won't be found in my Github/Gitlab scans. I can donate via Github too but would be easier if I can have one place to control all such donations.

[0]: https://www.theregister.com/2023/04/07/thanksdev_open_source...

[+] jerrygoyal|2 years ago|reply
Try this perspective: As an open source dev, I don't mind taking them 5% of the donation I recieve from their platform.
[+] ivanvanderbyl|2 years ago|reply
That seems reasonable to me. I assume they are using stripe for payments, so that's already 2.9% gone to facilitate you giving money to the project.
[+] pharmakom|2 years ago|reply
Maybe 5% is the wrong number, but how do you expect the lights to stay on?
[+] armini|2 years ago|reply
Absolutely appreciate & respect your perspective. We're passionate about making open source sustainable & understand that there can be multiple ways of achieving this goal. The more ways money is channeled to the community the better...
[+] eliaspro|2 years ago|reply
For every OpenSource project I donate to, I check, whether they provide a SEPA IBAN, then I just set up a monthly transfer of a small amount that I can afford instead of a bigger single donation. Whenever possible, I try to avoid any instances in-between which take some % of the cake.
[+] acomjean|2 years ago|reply
There is some overhead in collecting money. When you use a charge card a small percentage goes to the credit card and processing companies.

There are some gas stations in Massachusetts that have a slightly lower cash price because they don’t have to pay that fees and pass along the savings. Most businesses nowadays just fold that fee into the price.

If they are upfront about how much I’m ok with it. Otherwise you can send a check, but no one is using that option.

[+] sli|2 years ago|reply
The service also completely blocks VPN users with a 403. That seems like blocking a pretty good chunk of your target audience to me. I will absolutely be looking elsewhere to support projects I benefit from.
[+] mfts0|2 years ago|reply
Donations are not a perfect mechanism, there's significant friction.

tea.xyz will not have fees once it goes live with its funding protocol for open-source software.

[+] nicbou|2 years ago|reply
Donation income is risibly small.

People will sign praise your work, tell you how much they depend on it, and how it changed their lives. Others will ask you tricky questions that really ought to be asked to a lawyer.

...and they still won't donate a cent. I get about 70 cents per thousand unique visitors. About one in every 14,000 visitors donate. Affiliate income is roughly 100 times that without trying.

Let me put it differently: with the same traffic, donations barely cover my groceries, and affiliate income is a comfortable salary.

I'm at peace with that. I make free things for a reason. It's just something to keep in mind when suggesting donations as a business model. Doubly so as an alternative to ads.

Another tidbit: praise people who create the things you use. It feels so good to know that people use and love the fruits of your labour. I've become lavish in my praise after experience the effects of it.

[+] xeonmc|2 years ago|reply
I think the main obstacle to donations, even for those who _would_ wish to donate, is the fact that it requires a premeditated process (e.g. going to the project homepage to donate) or that it makes the request _before_ the user had a chance to realize how useful it is, rather than after.

If instead there is some way to capitalize the timing of the user experiencing "wow this makes my life so much easier!" to remind them with a low-friction shortcut to make a donation, this short-circuits the cognitive process that previously require the user's mind to go out of its way to invoke their "oh, I should probably donate" sense of reciprocity.

As reviled as impulse-driven microtransactions are, I think there is much for open-source projects to learn from and wield in an ethical manner.

Right now it seems there is a false dichotomy between being either [be unethical and leverage user impulse] or [be ethical and off-putting to the user].

There is no reason why an understanding of the psychology in friction-reduction can be utilized ethically to encourage "impulse-reciprocity".

A model that might be worth analyzing is the streamer-donation UX flow -- yes it can be used irresponsibly to encourage parasocial obsession, but in the hands of the responsible it is a facilitation of healthy engagements with the audience

[+] popey|2 years ago|reply
Depends how you present it. The Ubuntu download page used to punch you in the face asking for donations. They also tried sliders, asking downloaders to choose how to spend the money they donated. These were super successful. People felt in control of how their money was spent. There was no way for them to check in on that, it was a trust process. But the net result was a lot of people donated a very significant amount of money.

Similarly I understand (from an interview with the developer) that the eBook software Calibre gets a significant number of donations from users via the giant donate button in the toolbar.

I do agree, having a "tip jar" option for donations is rarely as successful as the above methods though. Not diminishing your personal experience. Just saying it's possible to change the way things are done, and get more.

[+] p0nce|2 years ago|reply
I think that's all there is to it really. People just don't want to donate.
[+] armini|2 years ago|reply
Thanks for sharing your experience & insight. You’re observations are similar to our experience. We as a community could always do a better job recognising & rewarding each other.
[+] rcfox|2 years ago|reply
What do you mean when you refer to "affiliate income"? Is that like ads, or putting your ID in Amazon links, or something like that?
[+] agrimonyhal|2 years ago|reply
If many open projects are funded via ads, will Copilot tools crater open source revenues by reducing traffic to documentation?
[+] lars_francke|2 years ago|reply
In case you hadn't seen this yet, GitHub offers this service: https://github.com/sponsors/explore (need to be logged in)

I have no insight but I could imagine that GitHub are going to offer something similar based on that data at some point in the future.

For us the "top" developers on that page are people with 150+ repos that we depend on that I have never head of before. It turns out that they are all tiny JavaScript libraries that we depend on in some repository that's not part of our real product.

I'm happy to sponsor them as well but it'd be cents not euros per month compared to libraries that do the "heavy lifting" for us. At the moment we hand-pick things, also not ideal.

All of that text to say: This is a hard problem, I have no idea how to solve it but I applaud you and everyone who's giving it a shot.

A 5% flat fee is too much for me though, if it had a cap then it'd be different.

[+] matsemann|2 years ago|reply
Same here, that list from github is close to useless.

In some cases we depend on a library indirectly, because we use a wrapper to match it to our stack. An old school example is we use bower, and want to use the uglify library. Someone has made an uglify-for-bower wrapper, that's like 20 lines of code, so we depend on that. But all the meat, and where I would like the money to go, is the uglify maintainers, one level down.

I'm not saying those people making the wrappers haven't brought us some value. But it's less than the underlying library.

Github falls prey to this. My guess is thanks.dev also would? But at least it has a "boosting" option, I just don't want sindresorhus to scoop up all the money...

[+] armini|2 years ago|reply
If you have the time, we’d love to connect with you on our discord & learn more about your experience. It’s a hard problem & that needs a strong open community. Given the recent PayPal incident, I don’t think GitHub should be the only solution.
[+] robertlagrant|2 years ago|reply
> A 5% flat fee is too much for me though, if it had a cap then it'd be different.

It can't have a cap if payment gateway processing fees are percentage-based.

[+] toastal|2 years ago|reply
Letting Microsoft GitHub try to monopolize laterally in the developer space by doing funding is going to lead to further lock-in for folks down the line. I’d be wary of supporting them with a chunk of your donation.
[+] muppetman|2 years ago|reply
At first I thought "Oh another Patreon/Open Collective" but actually this is kinda neat in how it works.

Slightly offtopic, but every month when my Patreon donations get processed Patreon sends me this STUPID email with "Tweet your receipt!" Honestly, it's so pathetic. It's like giving food to a homeless person while filming it so I can post it on Twitter.

Yes I realise it's an option and I don't have to (nor do I) click it.

[+] Ndymium|2 years ago|reply
I love and support this idea very much. I had actually been thinking about this exact solution myself, but I'd personally want to stay clear of anything involving real money, so it's great that you're doing it. :)

Just a note which probably isn't worth your time to act on, but using this service as a maintainer in Finland is illegal unless you can offer a geoblocking feature that can block any Finnish supporters from routing money to Finnish maintainers. This is due to our Money Collection Act which prohibits soliciting any donations except for very strict circumstances which aren't really applicable here. Might be worth a note on the page if you have extra time, since this is not know by many Finns that I've talked to.

[+] armini|2 years ago|reply
Thanks for raising the issue. Is it okay for you to forward the funds to other people in the ecosystem?
[+] bee_rider|2 years ago|reply
So it looks like the idea is it goes through your GitHub dependencies, and splits your donation up among them.

That’s a pretty neat idea.

I wonder if it would be possible or even desirable to try and get some automatic measure of “how much” you depend on a given project, to weigh the split. Probably that would be really difficult to capture. Anyway the current idea is already pretty cool.

[+] quickthrower2|2 years ago|reply
Nice idea. Like a personalized vanguard index for open source donations.

If this takes off people will be inventivized to make lots of small dependencies that are likely to be needed in tier 1 (or tier 2).

The trick will be to find a bug in a first dep of webpack for example, fork it and fix some bugs there then convince webpack to switch to you.

Algorithmic decisions can be gamed.

I suggest instead the app lists the deps, and you choose how much to give each one.

[+] qwerki|2 years ago|reply
Thanks quickthrower2!

Re gaming the system you're totally right. Although slightly unintuitive, we've also heard the opposite from maintainers. That they'll be motivated to remove the silly one line packages from their dependency trees due to the imbalance of value they provide vs extract.

We also prune self dependencies, circular dependencies and a few other cases to keep things level. Hopefully we'll be at a stage to open source our codebase soon and can better leverage community feedback in this space :)

[+] armini|2 years ago|reply
You're absolutely right. When you login you can actually see a list of dependencies & make your own adjustments. While thanks.dev makes a recommendation based on what's analysed, sponsors are able to boost or exclude beyond our recommendations. It's not perfect & has a lot of room to improve but we hope it's a good starting point :)
[+] esclear|2 years ago|reply
One thing that I haven't seen addressed here or in the FAQ is: What happens to donations towards dependencies where the maintainer / organization / group of maintainers is not registered at thanks.dev?

The FAQ has a section titled "What happens if I don’t claim my balance?", but I think this only applies to people registered at thanks.dev. I'm not even sure that thanks.dev would be able to reliably contact developers that / maintainers in all (most ?) situations.

[+] armini|2 years ago|reply
great observation & questions, we will update that on our FAQ shortly. If users aren't registered then we can't verify who's project admin & no funds will be allocated to them from the sponsors pool. Only when an admin register then we can allocate funds.
[+] throwaway888abc|2 years ago|reply
Love this! Hope it will take off.

"Webpack receives close to $200k in funding per year via OpenCollective but its direct dependencies receive minuscule amounts of funding, and there are 80+ of them."

[+] mongol|2 years ago|reply
First emoji I have seen on HN. I thought it was not possible to use.
[+] angelgonzales|2 years ago|reply
I’d love too but I dislike using payment processors as middlemen for online transactions! I see you’re using Stripe which is one of the worst processors because they opaquely block all sorts of transactions. It would be great to use a system like this to promote and fund open source projects and fuel cottage industry without having to include megacorporations. Make a mail cash option for people who don’t want to show their papers to a payment processor!
[+] koito17|2 years ago|reply
Genius idea. I try to donate to open source software I've used for long time, especially if I cannot contribute any code back. This site seems to automate the process of finding out which dependencies of your software are accepting donations.

Unfortunately, I cannot use this right now, because Maven dependencies can't seem to be found, and neither can Cargo dependencies. I decided to test it with an app that uses a mix of ClojureScript and Rust. There is a shadow-cljs.edn file at the root level of the folder, but those dependencies are not picked up. Neither are stuff in a package-lock.json. There is a Cargo.lock file in a subfolder, but that does not seem to be scanned either.

However, I am able to verify there exist dependencies, in each of these files, that are actively seeking for funding and use GitHub sponsors.

[+] qwerki|2 years ago|reply
Hi Koito17 Thanks for trying it out! Are you able to ping me your github handle so I can get to the bottom of it (email in profile).

Alternatively, for multi-project repos you can add a thanks.yaml file to the root of the repo with a `maxDepth: 2` value inside it. Unfortunately, deep scanning the entire repo looking for files would be prohibitive due to GH rate limiting hence this approach.

Please keep me posted. I'm also available on Discord if you need anything.

[+] ianlevesque|2 years ago|reply
I really want someone to succeed at this and I like the approach but you need to run not walk to making it usable without private source code access. That’s a non-starter.
[+] paulddraper|2 years ago|reply
Plot twist: This was the endgame of all those 1000s of trivial npm packages.
[+] hvasilev|2 years ago|reply
You open source guys need to figure out a way to charge people for the value that you provide. You ran the experiment for a very long time and it looks like this "beggar" model really doesn't seem to be working for the vast majority of your projects.

Take money, don't wait for people to give you money for the free value that you provide.

[+] omneity|2 years ago|reply
The intention is laudable, but this kind of business model makes me think of all these NGOs appearing in the 90s/2000s purportedly to "help poor africans" [0,1].

While many have been (trying to) do their best, it's unfortunate that many got richer on the back of the people they were supposed to help. Sometimes with local accomplices who also benefit from the grift.

I guess the main take away would be that transparency and accountability are paramount if you want to be part of such an ecosystem, especially as a middleman for money transactions.

[0]: https://landportal.org/node/100425

[1]: https://humanglemedia.com/the-dark-reality-of-corruption-lac...

[+] toastal|2 years ago|reply
> You need to enable JavaScript to access thanks.dev.

Not a great start for delivering me basic information on what this even is.

Reminder that Microsoft GitHub and GitLab do not have a duopoly on decentralized (self-hostable) version control. Products like this feed into folks feeling compelled to join big, proprietary services.

[+] dewey|2 years ago|reply
It's still early for GitHub's Sponsor feature but I'm a bit surprised this is not part of it already.

- They already understand what kind of code base it is and already do dependency scanning for security issues

- They have payment details

- They have the "verified" payment method of a person / project (If sponsoring is enabled)

[+] withinrafael|2 years ago|reply
Neat idea. Would it be useful to let folks analyze a repository without signing up? I'm thinking a user may want to scan a large repository and get a report (top X sponsor-enabled dependencies). This might be useful data to present during funding discussions.
[+] armini|2 years ago|reply
I'm more than happy to help, just connect with me on https://discord.gg/fQGqvQdWxq we're currently doing this for a few presentations. It just depends on the ecosystem that specific org is managed under.