mui / material-ui

Material UI: Comprehensive React component library that implements Google's Material Design. Free forever.
https://mui.com/material-ui/
MIT License
93.84k stars 32.25k forks source link

Add Ethereum address to FUNDING.yml #17224

Closed lastmjs closed 5 years ago

lastmjs commented 5 years ago

Summary 💡

I'd like to see an Ethereum address added to the custom property of the FUNDING.yml file for GitHub Sponsors. This would allow a canonical address to send funds to. For example, projects could parse out the address and provide donation capabilities to the user.

Examples 🌈

FUNDING.yml:

custom: ['ethereum/0xyour-ethereum-address']

Motivation 🔦

I think Sustainus' model provides enormous benefits to the open source community by removing marginal friction with donations. Adding an Ethereum address to this project will allow integration with Sustainus or any project or person who wants to send funds to this project using the Ethereum network

eps1lon commented 5 years ago

Thank you very much for considering other models to improve open source funding!

Regardless of whether we'll decide to accept bitcoin-like currency I don't agree we the model of sustainus.io.

Sustainus splits up your single donation responsibly amongst your npm dependencies. Each dependency with an Ethereum address or name in the package.json gets an equal payout.

Not every dependency does the same amount of work. As an extreme example compare a micro-library like is-window with one maintainer and a couple dozen commits with a library like webpack with a whole team and thousands of commits. Should they receive equal payout?

Then you have to consider usage of the library: Is it fair to pay @material-ui/core the same amount as antd when you use antd everywhere and just use the Select component from @material-ui/core?

I agree that we need to take action in improving funding in open source. But we don't improve this by automatically distributing funds without any thought but rather by taking responsibility and deciding what dependency is worth how much to us. This also includes if you contribute back upstream e.g. are the features used a result of work you did in the upstream repository?

lastmjs commented 5 years ago

Thanks for the detailed feedback. Since Sustainus is so new, I did the simplest thing possible to build and test the idea. If you look at the README of the repo it discusses the heuristic for payouts in a little more detail. So I agree with you and will be adding the ability to change payout amounts. The simplest next step will probably be to just add a weight that can be configured for each project

oliviertassinari commented 5 years ago

@lastmjs I can share my experience regarding donations and cryptos. I have added a Bitcoin address and an Ethereum address on my Patreon page. I haven't received a single donation with these channels in two years. With more hindsight, it's not that surprising. I have seen two kinds of donators so far on Material-UI,

  1. Companies that are interested in the monetary implication of the exchange of service between them and us: it's about marketing. It can improve the perceptions of their customers (we are doing good, right, etc.), as well as create awareness of their existences. They represent the large majorities, in $, of the "donations" we receive so far. I would categorize them as sponsors. I think that the incentives are identical to sponsoring a developers conference. I doubt they use cryptos. A good example of such a company is TripleBytes. If a developer finds a job with them, they will receive a $100 budget to spend on OSS. It's a nice perk paid by companies that need to hire engineers. A big thanks to these companies for including us.
  2. Individuals that are grateful for the product we provide them. They give, for the majority of them, the minimum amount 2$/month (big thanks for those that are generous). I would categorize them as backers. They have the potential to have a big impact (1$m/year) if the large majorities of them were giving 1$/month. In practice, 0.0001% of them are giving (same order of magnitude for webpack). These are looking for convenience, I doubt cryptos is the answer.

In my options, donations can't make you go far, at least not in the current shape of the industry. Webpack has ~10? millions users (React + Vue + Angular) and can support 3 people full time, shouldn't it be significantly more?

Rest assured, there is a good solution to this problem: a forcing paid function. We are working on a Material-UI Pro paid version of the library that can support the development of way more advanced features, a perfect offering for large enterprises. These companies are actually looking for paid solutions, they know that if they pay for something, the service can't be all bad, it enables strong R&D and great support. It's insurance for them. Then, we can share part of the revenue to support the MIT components.

oliviertassinari commented 5 years ago

@lastmjs I personally own some Bitcoin and Etherum. However, I doubt this should be a priority for us. I propose that we respectfully decline the proposal, at least until that we have some sign that it's a good bet (for us to spend time on it).

lastmjs commented 5 years ago

To be frank, I think there might be a misunderstanding of how much time this would take. All you have to do is generate an Ethereum address and put it in the FUNDING.yml file. If nothing happens, nothing happens.

Thanks for sharing your detailed experience with donations. Your experience seems to be common, donations haven't been working too well for open source. I guess all I can say is that I hope to run one more experiment to change that.

Here's why I think Sustainus can be more successful than past attempts: reducing marginal friction.

As far as I know most of the current donation platforms require you to become a contributor to projects individually. Each time you want to contribute to a project, you have to sign up, think about how much you want to pay, etc. For the average person, I don't think you'll want to contribute to more than a handful of projects (like 2-3). Sustainus removes this marginal friction and allows a developer to automatically subscribe to all verified projects. I think this is a much better model. I'm also working on something like this in the podcast space: https://podcrypt.app

So, I encourage you to give it a chance, I don't see what there is to lose, there really isn't much of a commitment involved.

But respectfully of course, choose as you may

oliviertassinari commented 5 years ago

I'm very curious to see how these efforts will play out. I have heard that OpenCollective will soon release a successor to their own https://backyourstack.com/ effort. Tidelift tries the same approach with enterprises. I have no idea what the outcome of these efforts will be.

oliviertassinari commented 5 years ago

Yeah, I confirm, I think that we should close, the reaction from the community seems to be always the same: not interested, no time for testing: https://github.com/issues?utf8=%E2%9C%93&q=is:both+is:issue+author:lastmjs.

oliviertassinari commented 5 years ago

Projects that have declined so far: bootstrap, webpack, lodash, d3, rxjs,

oliviertassinari commented 5 years ago

@lastmjs Thanks for exploring the idea, we appreciate the time you have spend on the problem.