-
Notifications
You must be signed in to change notification settings - Fork 9
Other ideas we could experiment with #13
Comments
This comment has been minimized.
This comment has been minimized.
Many projects exist without funding- I maintain a variety of projects (including some with millions of downloads) and up until two months ago (when I joined Tidelift, who now gives me $100 a month) had not received any payment. Open source doesn't need to have a business model. That being said, any method of funding that people should go with should be able to scale beyond a single project without causing issues. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
That last comment was off-topic, I once again asked why you don't hand the repository over to someone who's willing to do it on a volunteer basis. I'd still like to know the answer to that, but I don't think it's worth making a whole new issue over. I think it would be better to mark it off topic then to delete it. |
The goal of this experiment wasn't to see if we could find volunteers to become maintainers (the answer to that question is obvious). Rather, the goal was to see if we could start to change the dynamic between maintainers and open source consumers. I'm happy to keep maintaining StandardJS. But I would like to see a shift in the way that we do open source and I'm willing to take a bit of heat personally in order to explore potential solutions. I’m curious to explore the question: what if anyone could make a living working on open source without needing to be super lucky like me? How much healthier and vibrant would the ecosystem be? How many more new folks could start to participate? What if someone new to open source could adopt an abandoned package, quickly run Do you see how "handing over the package to a volunteer" would answer none of my questions? |
That's a laudable goal, it would be great if anyone could make money maintaining open-source. What I don't understand is how you thought that this would get us anywhere closer to that world. How did you imagine this working, best case scenario? Why did you think this would get us anywhere closer to that goal? Who do you imagine would be buying advertisements at enough scale to make this viable as anything other then something that makes you a quick buck? I'm just having a hard time connecting your actions to what you say your motivations are, so maybe you can walk me through that? |
This comment has been minimized.
This comment has been minimized.
This experiment is likely not going to be the ultimate solution to the open source sustainability problem. However, if everything goes perfectly, here's what I'd want. A maintainer will be able to As more folks add
There are plenty of sponsors who want to get their message in front of developers. Have you ever listened to a developer podcast like The Changelog? Companies pay a pretty penny to get their message in front of devs there. There are plenty of examples of demand from the sponsor side including the companies who use CodeFund, CarbonAds, or ReadTheDocs. I don't know if you're even a user of StandardJS or what brought you to this issue, but if you're familiar with my work at all, you'll know that I've given away nearly all the code I've written in my lifetime and never expected a payment in return. This isn't about making a quick buck. This is about challenging the assumptions of open source consumers. This is about pushing back on the entitlement to free labor that is pervasive in GitHub issues all across this site. |
This comment has been minimized.
This comment has been minimized.
Please do. I'm not interested in re-litigating the naming of StandardJS – there are plenty of issues about this topic on the issue tracker already. Your post also makes a lot of uncharitable assumptions about my motives that feel mean-spirited in nature. |
Isn't this a problem that can be solved with a software license? Maybe there's already one, but otherwise it should be possible to create one to address such problems. I believe that some commercial game engines have (or had) similar licenses. E.g. Distribute your code with a license that states:
P.S.: IANAL, you should probably consult one to actually implement this. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Standard is currently eligible for an estimated $417.00/month via Tidelift for maintenance. For more info: |
I personally think finding a way to easily add funding is a good idea and a great goal to try for. That said I don't think the experiment with ads in the terminal was the right solution. Here are my possible suggestions:
It is important to remember that Ads are not bad by nature. They can help pay for free software, games, and much more. They become bad and annoying when devs use them in harmful ways. Using ads in a positive and non-harmful way is a wonderful method. To be honest, I didn't put a lot of thought into this so these ideas might not be great but maybe it can help trigger another better idea in someone. Cheers! |
fwiw, I think the Tidelift model is far-and-away the most likely to get enterprises to contribute to open source in a meaningful way, because it fundamentally understands and works with the enterprise procurement process. At the end of the day, you need to minimize the number of Purchase Decisions (aka Process / Approvals) that Enterprises have to do - this is like, Enterprise Sales 101. OpenCollective, Patreon et al seem purpose-designed to do the opposite! Enterprises are happy to pay a lot of money, as long as they only have to get it approved once - lots of small approvals == lots of approvals == nobody will do it. Tidelift's model is all about getting enterprises to decide to pay one person, then disburse that money to the projects they use, which is perfect for how large businesses pay for things. Which is good, because what I see from OpenCollective et al is that Enterprises aren't paying, individual developers (usually contributers!) are. That is, in my opinion, inherently Wrong - the people who are producing value should be receiving the money, not losing it! |
A model I'd like to mention is an experiment in this space that I've been working on, Scarf (https://github.com/aviaviavi/scarf, https://scarf.sh). For now it only focuses on CLI tools, system packages, etc and not so much libraries. The idea is to bake usage statistic telemetry into the package manager, and facilitate payments that can be used to lift the telemetry (or even to install, use, or whatever the developer wants to charge for). My hope is that by making it easy to retain usage statistics and take payments, it will give developers the leverage they need to require that companies pay for their package while keeping it free for individuals |
Here's a phrasing of the problem that I like: The people who use open source software are likely to know what they want to fund, but not in the position to have any money to allocate to it.
The problem is moving an asset from (1) to (6) when each person probably only knows about the entities directly next to them. So today, what tools do the folks who work at companies (4) have at their disposal? Most employees of medium to large firms have discretionary funding to spend on conferences or continuing education. I would propose a campaign to contribute 5% of folk's conference budgets to open source donations that directly make their lives easier. Tools/Sites/Documents could be built to help with the donation and receipt & invoice process to make such a donation acceptable to large companies. I don't think the problem is one to be solved technically (with new CLIs or app stores), but with better payment and dare-I-say marketing and advertising tools, like a specific Pateron.com for developers (like Github has started with the Tip option). I think about NPR (USA's national public radio) handles their donation campaigns, or a political donation campaign - they know how to target people when it's the best time to give (end of year tax time, at the launch of new radio shows or podcast seasons, etc). Their payment processes make it really easy to take advantage of employer gift matching, tax deductions, etc. What's the equivalent of this for open source? (I think this is what it means to transition from an "advertising" model to a "sponsorship" model perhaps) |
cc @pauliver, because this whole topic is really interesting. |
Related to #13 (comment) @feross, are you registered as a non-profit? If you were, I'll bet employers would be able to match individual donations sent your way... |
A license that isn't open source is not really a feasible solution for open source projects. |
For small, new, or abandoned packages, I think it can be solved by assigning bounty on specific issues just too keep them alive 🤔. Of course, recurrent tip and one-time donation will motivate packages maintainers. |
The problem with ads is not only that they are often intrusive because they're out of context, their sine qua non is that they don't tell the whole truth. My proposed solution is the DevWheels Licence. For many users the real big advantage of Free Software is not that it doesn't cost them anything, it's that they're not dependent on the developers, and can arrange and share their own improvements. This means nothing closed, fully forkable. DevWheels makes this possible, while allowing the developer to require that certain classes of users pay to use their package. Revenue from forks and merges flows back upstream through derivation graphs in proportion to the value added by each package. Yes, this is not a licence that the OSI would approve. But it delivers all the benefits that drove Richard Stallman to develop the GPL, and is in my view superior to alternatives such as ads, panhandling, only giving support to a paying few, closing parts, or licences that restrict how users use a package. The biggest downside is that when everything's open you can't enforce payment using a key or watermark, so most users will pirate. The challenge is to minimise this by charging classes of users according to their ability to pay, emphasising the benefits of ethical behaviour by corporations and individuals, and perhaps by publicly acknowledging those who do properly pay. |
JD557: DevWheels is the sort of licence you've described in your post. The key is that if you're going to allow forkability, to be fair you have to compensate not only the original developer, but all who have later added value. anaisbetts: The problem with Tidelift is that only the paying few get good support, it only works for packages used by bigger corporations, and that the best packages that need the least support get the least funding and the most freeloaders. |
tedivm: If you don't make your living through your open software, do you make a living through either closed or partially-closed products? Open software should have a business model so IOSVs (independent Open Software Vendors) can make a living through open products, rather than having to be subsidised by work on closed products. |
support insurance
Users pay "support insurance" which is a small monthly amount, and covers a wide number of modules. If there is an issue with a covered module, the maintainer is paid out of the insurance, for responding to the issue within a time period, say 24 hours. Many people may be paying the insurance, but one person might find the issue. However, other users of a module are probably affected by that issue, but they shouldn't have to think about whether they support it. Given the idea is to respond quickly, maintainers should be payed generously, more than what would be their hourly rate. Also, it might be a good idea to pay the maintainers a retainer - some money even if they don't do anything, because if they only get paid when an issue happens they have an incentive to create issues. This money wouldn't oblige them to continually work on the modules, it would just be a compensation from not taking other work, and being ready to give support at short notice. challenges: I'm sure there are a lot of legal hurdles to creating an insurance company. Also, there will be lots of challenges with dealing which issues constitute real issues. in short, this will be a lot of work. But I think it will work, especially since the customers are getting clear value. open source isn't transactional, but money is. If you want to introduce money to something like open source you need to clearly define what it does, what the transaction is. |
While this may (eventually) seen as a philantropist goal (in some lights) - assuming it is - this may cause a few of issues :
This just to say, aside from the whole "don't pollute my terminal" thing, it doesn't feel like a good solution because we can already see its breakpoints... It truely it doesn't feel solid, regardless of either your intentions may be well funded... or not. (get it?) |
@chrishiestand suggested "Boss Bounties" : #26 |
I see that licenses have been brought up in a couple instances:
It seems most people are very much against advertiser messages in build logs. Most people also think if consumers aren't making 💰 from their derivative works, then they shouldn't have to pay for their dependencies either. So I wonder how people feel between feross/funding style ads vs. if @feross were to change the licenses of his libraries to @licensezero Prosperity. After the trail period, commercial use would be based on monthly payment to the project Open Collective? |
A license that isn't open source is not a solution to open source funding. If people want to write proprietary code for profit they should just be open about that. Either way- whether they try to co-opt the term open source for their code, or are open about their intentions- groups such as Debian who only use open source code will stop using those no longer open projects. |
tedivm: If by "open source" you mean "Open Source", using a licence that the OSI has approved, I don't agree that that is the be-all and end-all. A licence can make code a long way from proprietary, while still being commercial. Let's try to not be so dogmatic about what licences are pure, and more interested in what licences best serve both users and developers. |
This isn't about "dogma", this is about words having meaning. If you want to redefine open source you're going to find that the community that has been built around open source is going to have a problem with that- and, frankly, it seems like a bunch of people trying to appropriate a community so they can profit off of it, while at the same time discarding the principles that made that community what it is. If your software is only "free" for these "noncommercial, educational or commercial use for companies with less than N employees", as proposed above, then you are writing software that is closed source. It means that if I adopt your library as an open source author I have to tell all my users that they can only use it in certain circumstances- that it isn't free or open at all. Half the reason people use open source software is to get around complicated licenses. There's a reason the MIT license has overtaken the GPL license, and a lot of that is due to how confusing the GPL can be. |
Not a maintainer, but I've recently been doing a lot of research into FOSS sustainability. I've come across a bunch of experiments that have different approaches. Some have already been mentioned in this thread. My question is as we're brainstorming new ideas, how are we using these current experiments to inform us? From a community perspective (as I'm not a maintainer) what are these experiments lacking? Is the platform approach unappealing? Do we think sustainability comes from the top down (i.e. companies flowing their capital back through their dependency graphs) or from bottom up (i.e. designing new licenses, reimagining value distribution in communities etc...) Would love to hear people's thoughts on this. Hopefully this isn't off-topic - I think this exercise can help stimulate more directed idea generation.
More experimental experiments:
|
@asbjornh Issuehunt takes a ~17% commission. Whereas Boss takes a ~5% commission. Though the higher fee might be worth it for some? Disclosure: I made boss so I'm biased. |
@chrishiestand I use neither so I wouldn’t know 😃 Let’s add a properly visible link for it: |
Here are some other collections of funding ideas from past discussions in this area. |
@feross NPM officially banned this. I think you should mark this repo as achieved and the package deprecated before someone thinks I'd be a good idea to use it. |
tedivm: I understand why you and others want to retain the dominance of permissive licences (with or without Copyleft). They're easy and cheap, and are the best solution for some large projects used by many. But by preventing open software developers from charging directly for their work, you're limiting its development to either those who are independently wealthy or can arrange another source of income. Many of these sources of income are from a job making closed products, or the software is free but is a resume item for a job making closed products. Proprietary shouldn't always have to come to open software's rescue. Getting big corporates to pay for assurance and subsidise other users only works for some type of projects, and gives this 1% preferential treatment. Issue bounties are an unreliable source of income, especially for mature projects. "Open Core", where most of the software is permissively-licensed, but part of the software is closed, is in my view worse than requiring users to pay for software that is 100% open. Relying on donations advantages freeloaders, and constant rattling of the tin can be annoying. No, I think there are many projects where the best solution for both users and developers is to keep it 100% forkable, but have a charge to use it, a charge that can vary according to the type of user and their use. I don't think your characterisation of such a licence as "closed source" is reasonable. Without such an outlet, more software will continue to be forced to be proprietary, which is a whole lot more restrictive for users than the concerns you expressed. |
I can’t speak for others, but honestly, I would happily donate my computing power for crypto mining. It isn’t that intrusive, and gets you the money you want. I’d want to know that a package was doing it, though. See #28. |
This first incarnation was an experiment. The plan is to iterate, and try different things in practice to see what works and doesn't.
What should we try next? A slight tweak of this model, a change to something quite different?
You can contribute to this thread by offering things like :
✔️ actionable ideas to try (most useful if it includes detail about who would implement it, and how)
✔️ links to other experiments (prior or ongoing)
✔️ offers of support around experiments
- e.g. use
funding
and using it in a project you maintain- offers of support from people with resources (contacts, money, time) they'd like to go to support open-source
This is not a thread about :
❌ volunteering as a solution
See also
Discusssion
threads - topics like Probems with FOSS, Dreaming about the future of FOSS, how to evaluate experimentsThe text was updated successfully, but these errors were encountered: