-
Notifications
You must be signed in to change notification settings - Fork 308
Make it easier for companies to fund open source #4135
Conversation
Actually, nevermind that. I was gonna say that we should also have a nice onboarding page for companies ("Step 1, Step 2"), but since we only have one company giving right now, I think we should just make the homepage the onboarding page. 😶 |
Blog post about this when it goes live? Part of Step 6 (Tell the world!) should be "tell the projects you use to get on Gratipay." |
Step 4 should be "link your GitHub and we will crawl your private repos to find out what packages you depend on." Then the company sets a dollar amount and we split it equally between all of the packages in the dependency tree that have been claimed. We should crawl all the packages repos for metadata and make it available at |
Actually, that should be step 1. That's the interesting thing, the hook. I'm a CTO at a small to midling software company, it's interesting to me to know what my open source inventory is and especially what licenses are used. On the result page we prompt them to take the next step and fund the projects listed in the report. We call it a "bundle" or something: the set of open source packages you depend on it. Each week we recrawl to generate a fresh list, and we add a step to payday to distribute an amount equally across teams (projects) in a bundle. Then we need some way for package owners to claim their package on Gratipay, i.e., make it a team. I guess for demo purposes we can do that manually in the review ticket. The "Claim" button on the |
Restarting this PR with a different tack. Previous head was 92d411f. |
92d411f
to
a52f039
Compare
I constrained the "1.0 payouts" notice to just pages under ~username (there's no other way to access the page, so we need to keep something). The rest of the time there is now a "Gratipay is a great way to fund open source" message that points to the dedicated page. |
Version 0 should probably just take a requirements.txt in a textarea. |
I really want to demo this in my lightning talk at ATO. I need to get slides tomorrow! 😮 |
4548360
to
69e9e58
Compare
We could probably replace the welcome notice about the number of teams with a link to Fund Open Source. |
I'm looking at the next part, where we take in |
I'm looking at building a micro-service like we have for processing images. I'm looking at using Docker for the sandboxing, hosted on a Digital Ocean droplet. |
Blam!
Docker is nice. :-) |
Wow! Time to get back to Gratipay now that gratipay/inside.gratipay.com#317 became actionable. =)
|
Perhaps we should take the angle that this is a matter of corporate social responsibility. |
I mean, right?
https://en.wikipedia.org/wiki/Corporate_social_responsibility |
We've received some awesome feedback from @arasmussen ("this guy" ;) in private email. Sharing with permission ...
|
This is great. Lets do it. |
|
Hmm ... that's a new idea, I think. We did have "pledging" in the past: a promise to give, but we don't actually move money until the receiver opts in. Pledges didn't expire, but receivers could "lock" their
For the manual setup we're talking about at #4135 (comment), amounts would be manually set by the giver. More complicated distributions fall under #1493.
Easier to build. :-) |
I understand the appeal of this concept to companies, but I'm not sure I understand how it's a great thing for developers that want real project sustenance vs. some beer money. An apt example might be musicians.... who get peanuts from the divided lump-sum a listener throws at the streaming service. The musicians always prefer direct money to them, with concert tickets and album sales second, and streaming music a distant reluctant thing. Given the size of these dependency chains for some projects, it could also be as useless to many projects as most class action settlements are to the actual plaintiffs. A good/huge chunk of money split so many ways its not enough to make any real difference to the people that actually get it. Ignoring that, the next biggest issue I'd imagine is what @nobodxbodon points out, how are the funds to be split amongst the dependency tree? By LoC? How does one blindly say what is the most significant, took the most time, or requires the most additional resources (actual new funding)? Is the person at the company responsible for allocating money going to be uploading requirements files for all their project code-bases? How exactly does that work? Can companies instead choose existing 'stacks' they know they use, and trust that someone managing the funds for that 'stack' is overseeing fair allotment of funds? Is this feature going to be appealing enough to OSS developers that they encourage companies to donate via this route instead of direct donations just to their project? (Where they'd get the entirety of it without having to worry about how its divided amongst a dependency chain) I'm quite curious about what this feature entails since gratipay/inside.gratipay.com#637 is requesting a specific amount of money to implement what seems like a very vaguely defined feature with unknown desirability amongst the OSS developers it's supposed to benefit. |
@bbangert IMHO.
The distant/difference between zero and one is infinite (at least in mathematics). In some case those developer are not getting any contributions for companies that want to contribute to them so something is better than nothing. That in itself is a step in the right direction.
The problem with the OSS developers trying to encourage companies to donate is if the company actually does pay attention to the developers and want to donate how easy/difficult is it in the current infrastructure. The financial reporting for just that one project would be a major turn off for the company . This is what we are trying to do, make the who process easier for both OSS developer and company willing to donate. That being said the rest of you questions are what we are trying to work out. |
@bbangert It's interesting that your feedback from a developer's perspective actually aligns with @arasmussen's feedback from the company giver point of view:
In other words, "enlightened" companies want to direct their payments to the right place. They want their money to have the most impact. I think there's still a role for surfacing requirements via the package repos, because recognition is easier than recall. If all you have to go on is the packages you remember that you use, then your giving will be (even more) biased towards the projects with the best marketing.
I think, done right, this can benefit smaller projects, where there is no time or budget to do the sales necessary to get companies to give just to them. An alternative would be to band together under a shared entity (PSF?), run marketing and sales through there, and divvy up the money however is agreed upon by that group. |
I just got off the horn with @jdorfman, who pitched me an idea about providing assurance to companies that the long-tail of open source is sustainable for the long term, and I was able to share with him what we're working on here in terms of building on package managers towards that very end. :-) Helpful in the back-and-forth was putting a point on the fact that what we need to balance here is:
|
No one likes chores. |
This is proving to be a larger task than it makes sense to have a single PR for. Closing in favor of our first epic: gratipay/inside.gratipay.com#987. |
So the basic idea evolving on this PR is to walk the entire dependency graph of a company's source code, and provide a way to give money to the entire bundle at once. We need the projects to opt in first, of course; our first attempt at streamlining that is in #4148. The current plan once #4148 is in is to use the Libraries.io API to get the dependency graph based on a company's uploaded
package.json
file.