It's generally not a problem until the big companies start asking for features, asking for bugs to be fixed, etc., expecting anything more than what the maintainers choose to donate. If someone from Amazon reports a bug it's kind of scary, you feel like you've broken Amazon. You might even try to set aside time you weren't planning to set aside. It's hard to remember/enforce that you don't owe them that time (especially if they're nice).
If Amazon doesn't pay you, then why are you scared of breaking Amazon?
I understand why somebody would be scared of that. They're big and important to the tune of many many billions of dollars, while you or I are not. But you shouldn't let that get to you. You should make a conscious effort to not let that get to you. If they want you to take their problems personally, let them hire you. If they can be broken by you but are unwilling to pay you, then fuck them. Put them lower in your priority queue than private individuals.
If one of your primary motivations for working on FOSS is to improve the world (which for many of us is the case), then it's very easy to feel an obligation to un-break Amazon because it is a quick way to improve the world for millions of people.
That, on its own, is fine. It brings you satisfaction rather than financial support. What starts being fishy is when companies like Amazon who can readily afford to offer financial support instead rely on and exploit that sense of obligation to get work done for free.
I realise this sounds whiny and that's not the point. The point is that by withholding FOSS contributors financial support, these companies are creating an environment in which the best and most dedicated contributors run the risk of burning themselves out, making everyone worse for it.
> It’s still not clear that companies would be interested in such a contract. When Stenberg asked the company that needed him to fly to a different country to troubleshoot their problem to pay for one, they refused.
Well that is indeed what I said, you just have to get used to telling people that. That's the big problem. That's the reason this thread on HN exists. People trying to figure out the right path, how to ask for money on their little OSS projects, etc.
If a project starts having large companies relying on it, traditionally there have been 2 mechanisms to address this:
- start a company around providing enterprise support services;
- ask for the large companies to provide some resources such as a part (or all) of an employee's time to work on the project, for the parts that are more dear to that company.
If a company is unwilling to pay, either in the form of a support contract or employee's time, it should look at another solution. Not just because they are being disrespectful/annoying/distracting to the maintainers of the OSS project but also because it means they don't have a good contingency plan for when things go wrong.
For a larger business, the value of using OSS is not to save money, it's to get the right level of customization for specific needs.
You are forgetting about a third tool in the toolbox. Licenses. If you don't want your open source work to be used for profit select a license that is restrictive.
Ok but sometimes you don't care or encourage this as long as you don't have to support it for free. And you even expect companies not to be assholes taking but not giving back - not enforcing but if it's the nth ticket or bug from mega Corp X that profit from it then let them solve it themselves.
"Fix it yourself" is not a full solution to this problem. It takes time to review and merge pull requests. Especially if some well staffed team is dropping a large chunk of code for a relatively esoteric use case. It will inevitably take a lot of back and forth to work it into the right form for the project's primary goals, and it may never fit. If a company really depends on a project, it behooves them to contribute financially through a license or employment, or to maintain a fork.
How would you go about getting paid for that? I doubt it would be possible, even if the people that reported it really want to and need it, they could never get approval from the bureaucrats.
Eh - I work for a big SV company in a group that provides key software and hardware. If we have a schedule risk that can be mitigated by paying a 3rd party engineer a reasonable sum we could probably get it approved in a week. It would require at least exploring alternatives and quantifying the risk, but it's really not hard to get (reasonable amounts of prudently spent) money when your project is in the profit pipeline. I doubt it would have to go as high as a VP for approval.
Some companies do have systems set up to pay OSS projects, but it's hard to navigate. I think a lot of people enjoy donating their time to OSS because it's fairly low-stress (until the above situation happens). I don't want to figure out billing and stuff when companies want my support, it's not a company, and that's why the article here exists. That's why this discussion is happening.
One of the main benefits of releasing free software (and IMHO a glaring omission from the article) is to get bug reports before the bug affects you. If Amazon wants to pay somebody to send you such bug reports, so much the better.
That is a great problem to have -- it is how commercial wings of open source projects are formed. The commercial wing becomes a for-profit mechanism to help champion/grease bugs/features through the update process, as well as providing PS and indemnity/support services.
You can politely ask these nice people to contribute funds towards your project that is so important to them. Since they are so nice, they will probably nicely send some money towards the oss developer.
That is the subject of the entire "oss funding" problem. Precisely that many companies are not willing to contribute funds even though the project is important to them. That's why this thread on HN exists.