Why is the emphasis on one developer donating to another, rather than companies that make money from that work?
Whether those reasons are reasonable is separate; it's just the way most people act, and it's hard to imagine what will cause enough people to change that will make things better for developers.
Better for developers to find ways of monetising via "pro" features, commercial support, etc, as it's easier for people/companies to justify paying money if they feel they're paying for a product or service.
And if you're using them in a commercial setting then it's even harder, because very few finance departments will be willing to allow and process small donations to various projects.
this isn't a correct statement - using software is neither unintentional, nor are we responsible for "consuming time" of another for using software.
I don't think that developers should be responsible for supporting open source: the micro-transactions necessary are annoying and the amounts are often too small to matter.
Rather money-making companies should consider supporting the open source projects that they rely on. Developers at companies should push their companies to support the projects they are relying on, ideally w/ a recurring subscription of some sort (if that matches the companies revenue model.)
Github sponsors, say what one will about it, was a big step forward in reducing the friction here, and I see a lot of people talking about fixing this exact issue[1], how to fund open source. At this point, w/ Github sponsors and a few other options available, I see the technical side as being mostly solved. Now it's a matter of going to the companies and showing them that its in their best interest (and a tax writeoff) to contribute to the projects they rely on.
This is a culture change that will involve engineers talking to the non-engineers who hold the purse strings and explaining that, yes, a $20/month payment to an open source project to keep it going makes financial sense, because that project is crucial in keeping our business running and we want the developer to keep working on it.
[1] - https://stackoverflow.blog/2021/01/07/open-source-has-a-fund...
Absolutely incorrect, and I have given away much code as open source for free. Nobody who uses my software consumes more of my time just by using it. I already spent that time building it for myself, and I have no idea when someone types "git clone"
What does take my time are things that bridge the gap between what works for me on my machine and what works for others on theirs: packaging, documentation, requests for features, bug fixes, etc.
> THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
There's a small contingent of loud and annoying stupid* people that foolishly believe they're entitled to future labor of an OSS maintainer by the grace of the code being under an open source license.
To demonstrate how literally deranged this is, imagine some kids playing sportsball after school for fun and just for fun. People around town start showing up to watch the kids play sportsball because the kids are pretty good and it's entertaining to watch them play. As time passes, more people start showing up to watch these kids play sportsball.
One day a fan asks one of the kids what the team names are. The kid, confused because they're just playing sportsball with their friends, responds with something off the cuff like the cats and dogs. To the kids, the team names don't even matter because they're just playing sportsball with their friends. Meanwhile the fans are making t-shirts, hats, and it's attracting other business into the area looking to cash in on hungry sportsball fans. A few restaurants and sportsball athletics store opens up across from where the kids play sportsball because it's so popular.
Eventually, the kids get bored and stop playing, but entitled fans and business owners feel like these kids are somehow now obligated to continue playing when it couldn't be further from the truth.
This is what it feels like as an open source maintainer. Discussion about forking, fragmentation, and community are downstream from the words in all caps.
*: Yes, stupid https://www.youtube.com/watch?v=ww47bR86wSc
I write a lot of embedded code so I need everything short and simple. And 'borrow' mostly format interpreting code, protocol generators etc. Not a lot of applications, certainly not in their entirety.
We can use truck drivers as an analogy. Those who work a job (i.e. aren't owners-operators) aren't paying for toll roads and bridges out of their salary. Rather, it's the company which covers the cost of using the infrastructure.
I have some free apps that I don't earn anything on and don't expect donations. They're simple, more educational or casual use, and my updates are few and far between. Even I probably wouldn't donate to an app like these.
I think one part of the issue is developers don't want to deal with the increased accounting/income tax complexity in exchange for a pittance of contributions. If you have a wildly popular project producing a competitive salary, it's a no-brainer. But if you're only receiving a few contributions here and there, and would rather just spend your time programming, it doesn't seem worth the trouble of accepting and claiming come tax season. Hence it's historically been common to just accept free beers/meals at talks/conferences.
Another part of the issue is accepting funds for many people creates a burden/obligation for a certain level of support and forward progress. i.e. it becomes an actual job vs. something they do in their spare time when inspiration strikes.
Just imagine the positive impact if the corporations making billions and billions of dollars were to actually support them
You can help maintainers by contributing code or even bug reports to the ecosystem wherever it makes sense to do so. When you are in a situation where you can contribute something by spending a little bit of extra time (e.g., on merging your changes,) then do it.
Although I believe that maintainers are great and that they deserve to get paid for their work, the fact is they aren't getting paid and they don't expect to get paid.