Hacker News new | past | comments | ask | show | jobs | submit login
The Lack of Compensation in Open Source Software Is Unsustainable (trstringer.com)
253 points by pjmlp on Nov 17, 2023 | hide | past | favorite | 396 comments



The feeling of entitlement people have around open source is unsustainable.

If someone releases code then that's it. You have it. Do what you want with it (within it's licence). Be thankful.

Unless that guy specifically says he's going to maintain it for free you are entitled to exactly absolutely nothing more you ungrateful little git.

If you add this code to your project, you should fix and share any problems you encounter as a token of gratitude.


I agree with your sentiment of "Unless that guy specifically says he's going to maintain it for free you are entitled to exactly absolutely nothing"

That works both ways though, a maintainer cannot expect users to not complain (so they have to develop management strategies where they ignore the noise, rather than try to engage/capitulate). A maintainer can also not lament when users do not feel the desire to contribute monetarily.


>so they have to develop management strategies where they ignore the noise

I believe this is called “please use the template when submitting an issue” and we all know how that goes.

I’ve honestly found myself laughing like a madman at GitHub issues where the maintainer calmly and repeatedly tries to explain to the increasingly disgruntled reporter to UTFT (use the fine template)


I keep thinking that GitHub (and GitLab, and etc) made the initial costs to interacting with the developers unhealthily low. The barrier of having to create an account or adding your email to a newsletter on the older distributed systems was extremely good on filtering out that kind of thing.

Also, "Issues" should really, really have a different name.


Issues is where you find all the people with issues...


I got so sick of people uploading screenshots of the in-app log console that I spent significant effort to make that control not render during a screenshot.

Taking and cropping a screenshot takes more time than just uploading the plaintext log file conveniently and lovingly placed right next to the executable. Please, just upload the file. Please.

The project was a Big Deal in the circles I was in. Hundreds of thousands of people knew of it, we had hundreds to thousands of active users each with dozens of clients. It was so stressful and I caught so much abuse that I exited software altogether. We did get some money, but my cut worked out to $60 a month.

I still write and publish code, but I don't work on anything that anyone wants to use. I don't get involved in communities and I don't interact with users.

And you know what? I am much happier now.


To be fair the UX on those things is abysmal.

Github could improve the experience 10 fold.


UX can help a bit, but fundamentally the problem is people who have an issue or question but are completely unable to communicate it in a way that can be understood and addressed.

The garbage bug reports I see on my projects and others are like, either one sentence or rambling nonsense. The templates don't help much, these users will do their best to ignore them.

As long as you're not doing that, your bug report is probably very welcome.


UX is partly about how to accommodate that without throwing up hoops to jump through to the people who aren't a waste of space.

Most bug reports, especially on complex software should follow something resembling a kind of wizard/state machine (e.g. state: OS has/has not been specified) but instead everything is a text box with a dump of contextual questions, half of which don't even necessarily make sense for the specific bug report you're making.

>As long as you're not doing that, your bug report is probably very welcome.

When barriers are thrown up to the other kind of person it will often make it seem like they are very unwelcome even when they're not - e.g. the first message you see may be a hostile list of "DON'T DO THESE 5 THINGS" because somebody once did each of those things. I'm pretty sure a lot of good bug reports are lost this way.


> a maintainer cannot expect users to not complain

Eh… Isn’t that fairly close to the definition of entitlement (i.e. you complain when you have no reason to)?


As a maintainer you cannot control how people behave. There’s no point in lamenting that people act entitled.

Instead, it is more productive to develop strategies to ignore the noise from entitled voices. You do not need to respond to them. You do not need to convince them. You do not have to keep them happy.


> There’s no point in lamenting that people act entitled.

There is: it discourages people from acting entitled.


I suspect ignoring them is more effective than essentially complaining back.


Does it? How much of an impact do you think it has?


> That works both ways though, a maintainer cannot expect users to not complain (so they have to develop management strategies where they ignore the noise, rather than try to engage/capitulate). A maintainer can also not lament when users do not feel the desire to contribute monetarily.

The solution is quite simple really.

1) have your repo private and release only tarball files or have a read only repo with no pull/merge request functionnality 2) do not use an issue tracker

Basically, do not use a forge such as github/gitlab, at least not publicly. Problem solved.


GitHub also lets you turn off the issue tracker, which is wonderful for projects which are ""incidentally open source"" where I have no plans to maintain it beyond my own personal needs


This is right, but maintainers themselves often forget. They don't enforce this. Their little thing became very important and they became a rock star, so they carry the world on their shoulders. They respond to feature requests that are out of scope originally. They let any and every PR in. Maintainers often manage to do things with their project that turn them into bahemoths and support large industry and find themselves stuck.

More maintainers need to take the "no guarantee of fitness for purpose" part of their license more seriously. Don't fall for the temptation to be everything for everyone. Don't cave to social pressure.


> More maintainers need to take the "no guarantee of fitness for purpose" part of their license more seriously.

I get this, as a very bottom line. But a lot of great projects are great because the developers consciously want people to use and depend on their work.

Their is a living changing informal social bargain, unique to each project, along with licensing, economic and other concerns.


Well, I'd say if you want users to depend on your work, you're voluntarily signing yourself up to endless maintenance for little reward. I look at it like this: I built something cool, if it's useful to you, use it. But if you come to depend on it, and doubly so for business use, maybe you should consider being prepared to maintain it yourself. Other people look at it differently, and if it's your goal for the world to depend on your work and you haven't set yourself up to benefit from that responsibility you take on yourself in a way that you like, then I don't really think it's a problem the rest of us have to solve.

Is it unsustainable like the title of the article says? I suppose, but it's not some state of affairs that is unavoidable or that we are stuck with through no fault of our own. A guy wants people to depend on his work that he does for free, a company sees a core component of their business that they can get for free, a few years later the guy is upset that he is maintaining this thing everyone depends on and the company is scared their business will fall apart without him. They each got themselves there, it's a predictable state of affairs, the solutions for each party are very clear. As a developer though, the solution is what I've outlined: take the "no warranty of mechantibility or fitness for purpose" part of your license seriously and tell entitled people to solve their own problems.


What is the evidence for this feeling of entitlement?

I use tons of free software. I've never either demanded that anyone work on it for free, nor have I expressed any sense of entitlement or expectation.


You’re in the majority. But look through any issue list of popular(ish) oss projects and there’s a small but very vocal minority just sucking up the maintainers’ energies like vampires.


I hear this and it makes sense that a minority of users sucks up a lot of time, but what isn't clear to me is why maintainers don't ignore these people.

I've never maintained a popular open source project so maybe there's something about the situation I just don't understand. But it seems like:

> Thank you for your feature request, we will add it to the backlog. The core team doesn't work on unfunded feature requests because they use up a lot of time and resources. We are happy to review high quality PRs from anyone interested in implementing the feature. We also have a variety of sponsorship options, and a list of past contributors and maintainers available for contract work.

would be reasonable and polite?


> but what isn't clear to me is why maintainers don't ignore these people.

One reason is that you're being told that that's an awful thing to do by basically every resource on "proper open-source" you can find.

Another is that these people are pretty good at starting shit storms trying to ruin your reputation if you don't comply with their unreasonable demands.

It's also worth nothing that some requests/issues/questions might be reasonable when viewed in isolation but not if there are hundreds of them.

Think for example stuff unrelated to the project but where you as a hacker could nonetheless help because you do know the answers/possess the skill. For me at least, I find it hard to deal with that, because I know that I could in theory help that person. I just can't in practice because time and energy are both finite.

> We are happy to review high quality PRs

Are we though? There's a lot of work attached to reviewing even high-quality PRs. Also, even if the PR is high quality, the maintainers will still be the ones maintaining that new feature so it's still significantly more work.


I've never read any resources on what constitutes proper open source. It seems like there are a lot of different and incompatible goals in the world of open source. For example, if I wanted to get paid I definitely wouldn't be reading something by Stallman.

Sure, reviewing and maintaining PRs is work too. If I wasn't willing to do it for free, I'd be clear and upfront, and say

> Unfortunately we don't have the time to review PRs without funding. If you are interested in having a PR reviewed, you can sponsor the project or contract a maintainer. In the past, it's taken a couple hours to review PRs. Keep in mind that even after your PR is merged, it will need to be maintained. If there are no volunteer maintainers able to keep your code in a decent state, it may be removed in future releases.

There's a very real chance someone won't use your project if you say this. They might use a competing project with maintainers that will work for free, or they might even fork your project. That's certainly their right.

I don't think I've ever seen a shitstorm arise from clear and open boundary-setting by maintainers. I'm sure I don't have an extensive catalog of every internet shitstorm, but the ones I can recall off the top of my head are usually situations that I'm sure felt like rug-pulls or shakedowns to users. I'm also having trouble thinking of a shitstorm over a minor incident that truly ruined someone's reputation, but I might just not run in the right circles to know about that kind of thing.


> but the ones I can recall off the top of my head are usually situations that I'm sure felt like rug-pulls or shakedowns to users

It’s funny you mention shakedowns, because I’ve seen at least one or two minor shitstorms (objectively, they were pretty minor, but I’m sure they didn’t feel that way to the maintainers in the moment) because language very similar to what you proposed was interpreted as a shakedown:

> We also have a variety of sponsorship options, and a list of past contributors and maintainers available for contract work.

And I think that’s where the rub is. Almost any strategy as a maintainer for trying to establish a boundary and ignore people (close issues or PRs automatically, offer contract services, etc) can cause these kinds of issues. People really dislike being ignored, and so a policy of ignoring things will kind of inevitably lead to conflict and confrontation with some percentage of people.


> Another is that these people are pretty good at starting shit storms trying to ruin your reputation if you don't comply with their unreasonable demands.

If you go on social media and offer your well-thought-out opinions about some controversial subject, you are very likely to get large number of people sending you offensive messages, arguing with you objectionably, trying to start pile-ons, attempting to dox you, etc.

Is the correct response to announce that "your participation in political discussion for free has become unsustainable", and that you need to be paid by all the people who find your comments interesting?


This is a bit tangential, but I actually think charging money to participate in certain online discussions is a really good idea.

For instance, I think it would be awesome if everyone sending an email to my main account had to send me $1. If what they are sending me isn't worth $1 to them, why should I get a buzz on my phone? Spam would be solved instantly.

I certainly don't think that every corner of the internet should be pay-to-play, and I generally don't think that the fees should be substantial to users participating in good faith. But I've got about five emails in the past two days from an airline bugging me to upgrade my seat. It costs me time and attention to weed through my inbox.

I'm sure this principle could be applied to sites like HN or reddit to raise the bar and put even just a little bit of skin in the game.


Your friends and family are going to pay you for every email? Every online purchase would be several dollars more expensive. Transactional email providers would go bankrupt.


No worries, we'll make plans to make it easy to pay. And it will be just cents So you just subscribe to your plan, send emails without worries because it's just cents, and at the end of the month you get a bill. Even cheaper than Migadu.

We can call it "Simple Mailing Subscription". Or "SMS" for short.


I've thought about doing this where the money is escrowed, and the recipient can optionally take it if they think the email is spam or otherwise unsavoury. You of course wouldn't take money from friends or family. Email marketing that you never asked for you would of course accept their money. Random spam phishing emails you would readily take the fee from.


The thing to notice about this system is that only people who send more emails than they receive lose out. It would end spam at a stroke.

And it doesn't matter if online purchases are more expensive, because you get that money back through email receipt fees.

Tougher challenges are the traditional ones with micropayments. Transaction costs. And maybe tax implications. And the differential incentive based on wealth. People struggling for cash would still try and minimise their outgoing communication, which is probably a bad thing for a healthy society.


While I don't think this idea is a good one, that problem is easily solved with whitelisting. Everyone gets to pick a set of senders who can communicate with them freely, or up to a cap.


Excellent Idea. But why email? Just use a webform that charges 1 USD via paypal to contact you. Trust me, I wont!


On one hand, I would like to see it happen. But on the other hand I just don't think it would work that well.

As someone from Europe, the first thing that comes to mind is that PCI compliance isn't even required by law in USA, is it?


> Is the correct response to announce that "your participation in political discussion for free has become unsustainable", and that you need to be paid by all the people who find your comments interesting?

Why are you asking me this? I'm not the author of that text. My take on this article can be found here: https://news.ycombinator.com/item?id=38302098


>> but what isn't clear to me is why maintainers don't ignore these people.

>One reason is that you're being told that that's an awful thing to do by basically every resource on "proper open-source" you can find.

The solution is clear. Just apply the grandparent's advice recursively:

Ignore these "resources" (!) on "proper open-source", too.

Also, that term sounds awfully entitled to me, too.

Who the heck is anyone to decide what constitues 'proper' open source "resources"? Total nonsense.

Everyone can have their own opinion about that, or not even bother to have an opinion, and just do exactly and only what they want for their own open source project, ignoring the naysayers, free-but-unwanted advice-givers, and freeloaders.

I didn't know that we were living in a socialist heaven. Hot tip: We are not.


Apropos of this thread, and related to the recent HN post about a new Calibre version release, I googled Calibre and its creator, Kovid Goyal, casually, and was interested to see this older HN thread:

https://news.ycombinator.com/item?id=32052669

Which does go to show both kinds of opposing viewpoints about this whole "entitled" attitude of some OSS users vs. the maintainers, w.r.t. to the specific case of Calibre and Kovid. Based on that thread alone, it shows that is easy to get prejudiced by one negative comment about a maintainer, whether true or false, and not know about or ignore all the other positive work and behavior by him/her.


It's like if you live in a quiet suburb, and someone walks up to your window every night and starts yelling obscenities for an hour or two.

It can be ignored, yes, but the worst offenders go beyond a polite discourse and will send emails to whatever email they can find, DM you on Twitter, Mastodon, etc., and drop weird and annoying comments anywhere they think you have a chance of seeing them.

Some people have thicker skins than others, but it's just a bit tiresome no matter how much you can deflect.


This is something I'd love to see, the problem is that any "pay for features" model runs into serious legal issues:

- for American developers, many of them have provisions in their employment contracts that allow them to do unpaid open source work, but ban any kind of commercial (i.e. in exchange for money) activity. The fact that this reach into off-time by employers is possible is nuts anyway, but doesn't make the problem go away.

- as soon as any kind of money is involved, a lot of jurisdictions have provisions regarding warranties and liabilities - and these can be pretty enormous, see the log4j fallout. Some of these can be put aside by contracts, but nevertheless it's a legal minefield.

- some jurisdictions don't allow you to just take money in exchange for a project, it exposes developers to tax and social security liabilities. Even labeling such stuff as pure "donations" isn't safe if your tax auditor is particularly focused on nailing you.

- what to do if someone from a sanctioned country donates you money? What to do if you're European and get money from someone in Cuba (which is not sanctioned by the EU), but are employed by / work for American companies or intend to travel to the US?

- what to do if some arms manufacturer donates you / funds money for a project that could be used in weapons? Virtually all countries have some sort of equivalent to ITAR regulations that you really don't want to run afoul of.


> but what isn't clear to me is why maintainers don't ignore these people.

There very likely isn't just one reason that applies to all maintainers.

But there are some reasons one can hypothesize that probably apply to some or many maintainers.


One of the best handlings of this I ever saw was on opal, where someone was ranting about a non-software issue calling for the removal of a prominent contributor.


I feel like public project roadmaps would really help here. If only for the maintainers to be able to flat out reject stuff because it's not on the map.


Just look around forums and socials like Reddit. I see people bitching how OBS Studio doesn't work for them the exact way they want it while contributing nothing to the project almost daily.

This happens less where the FOSS choice is a drop in a sea of established proprietary packages (FreeCAD, KiCad, Godot) but way way more when they have already established themselves as the popular pick (OBS Studio, Blender) so they get flooded by less tech-savy, more casual users that don't really see the value of open source other than they don't pay for it.

"Normal" people have always had stuff given to them for "free" (either "you are the product" or built-in licenses like Windows) so they don't realize the goodwill and sacrifices that FOSS goes through.


> so they get flooded by less tech-savy, more casual users that don't really see the value of open source other than they don't pay for it

this was solved 30 years ago by an important socio-technical invention called the FAQ, used together with a social convention of not elevating or rewarding vexatious messages.


A solution was proposed, the problem was never solved because people generally don't read or believe that social convention doesn't apply to them in this situation.


One example I noticed recently is when YouTube stopped allowing ad-blockers. You should have seen the people posting on the uBlock subreddit demanding it being fixed, it was kind of crazy.


why would any sane maintainer even look at the subreddit for their software for even 1 second?


You may not be part of the problem.

However, there are entire industries that leverage open-source / free software, and put unreasonable, uncompensated demands on it.

At the end of the day though, I don't see the problem. As a maintainer of open-source, gratis, software, just don't do the work. It isn't like it is a job. If you don't do the work, they can't fire you.

Is that good for the community? Surely not, but who is asking whether the status quo is working for the developers? Nobody but them. So look out for yourself, and scratch your own itch, but don't treat open source as a job.


He didnt mean you specifically. But there are lots of people demanding fixes like its their birthright.


My favorite one is “you should do what I am asking because it would make your project more popular”.

Weee. Exposure.


I maintain some popular packages. It's not often, but it's far from never. Some people are really nasty, I've yet to figure out why.


Something like 5% of the population are insane. No need to figure out any behavior once you factor that in.


If you've maintained an OSS project and managed the tickets raised, you'd know.


> The feeling of entitlement people have around open source is unsustainable.

Free-rider problem [1].

[1] https://en.wikipedia.org/wiki/Free-rider_problem


Haha I was just thinking about something similar recently.

Imagine visiting a coffee shop and telling the barista: "hey, by the way, I can make my own coffee at home for free, you know?"

People seem somehow OK with thinking this way when it comes to software.


Those two things are connected.

People will spend $10 on a coffee drink at Starbucks without blinking. Suggest that they spend $10 on a piece of software and they’ll throw a fit and claim you are taking away their rights.


Some people. There are people who think Starbucks is too expensive. There are people who donate to open source.


I don't know anyone who doesn't think Starbucks is overpriced slop. In any European city you'll find local cafes with better quality and prices than what Starbucks sell.

They seem to only be present in the big metro areas that attract a lot of tourists, travelers and immigrants who are familiar with the Starbucks brand and go for that out of habbit and know quality, similar to how McDonald's is so popular.


Weird flex but ok. In any area big enough to have a Starbucks in the US you'll find at least one local cafe that has better coffee. You'll also find at least one with much worse coffee that thinks they're better.

As you say, people go to Starbucks and McDonalds for familiar known quality and you should be happy for it. That way the tourists and immigrants stay out of your local cafe.

Edit: to be clear I'm not defending supranational billion dollar corporations here.


Tourists and immigrants giving their money to an US company that funnels all the money away from the local tax collectors and underpays their workers is still a net negative. All we're left with is their pollution, and no tax revenue to pay for its removal.


Sounds like an issue to take up with your government. Don’t complain that other people spend _their_ money in a way _you_ disagree with.


"You can't blame us for offering bribes, you can only blame the people who take them" is a weird idea of morality.


I mean you're the one who votes for your officials in your area, so if they're accepting bribes that is kind of on you isn't it?

I as a tourist didn't elect your officials, so it's not on me.


You need to meet more people. I know many who think Starbucks is great coffee. I know others who hate it. That is diversity.


Looks like you offended some Americans' sensibilities, but it's pretty much on point outside the US. We already have a coffee culture, we don't need union-busting megacorps giving us worse for higher prices and lower worker wages, thanks.


> In any European city you'll find...

This is so ridiculously optimistic and misinformed. In Poland’s cities, for example, the cafes mainly belong to chains like Costa Coffee and Green Coffee Nero, which act identically to Starbucks in terms of prices, quality, and range of drinks. There aren’t many independent cafes left, let alone ones with lower prices than a Starbucks. Similarly, in Helsinki the choice largely comes down to chains like Espresso House and Robert’s Coffee that are no different than Starbucks.


That sounds strange and mildly concerning for Poland, as Romanian cities are full with small local cafes not part of any chains, but unlike Starbucks & Co. they're just cafes, as in you go there to get a coffee and drink it, not to loiter for hours on a macbook and use it as a coworking space. Kind of like how it's in Italy/Portugal/Austria.


If you are posting from Romania, then you have a very warped perception of Europe’s cafes overall. But even in Romania, the old Central European and Balkan tradition of the cafe as a home away from home for intellectuals is dying. It has been well over a decade now since many of Cluj’s independent cafes began to play loud blooming music to discourage lingering, and staff were instructed to immediately pick up a customer’s empty glass and say “Va mai servesc cu ceva?", in order to nudge the customer to order more or get out. And of course, prices have risen to about the same as Starbucks.


>many of Cluj’s independent cafes began to play loud blooming music to discourage lingering

Maybe because Cluj is an overrated, overpriced Silicon Valley wannabe (sorry to be so blunt), so greedy old-town cafe owners jack up prices to match IT workers' and tourists' purchasing power. In Iasi for example, there's still small neighborhood cafes that sell affordable coffee, you just gotta avoid the old town and city center where all IT workers and tourists gather.

>then you have a very warped perception of Europe overall

Doubt it. Go to Italy, Portugal, Austria and many others, and it's full of small family owned cafes and traditional coffee houses serving just affordable coffee and cakes, not acting like a tourist trap or hipster co-working space.


The development I mentioned in Cluj predates the IT-sector boom, let alone the tourist boom. It began in the student cafes, and it can be ascribed to the fact that running a profitable cafe is hard. You like to make claims about things you know little about, don’t you?

“Go to Italy, Portugal, Austria and many others” The countries you mention by name are either southern European or Central European. You need more firsthand experience than that to make such blanket statements as "In any European city you'll find...", like you did in the OP.

Your idea that Starbucks is unusual in that people stay there for hours, while independent cafes are necessarily drink-and-go experiences, is horribly misinformed. Go to the Western Balkans, where there are few or no Starbucks around, but myriad independent cafes where men often spend half the day on a single purchase. The cafe has always been a community center in that region. And in areas with high unemployment, ageing demographics, and little money, they also play an important role as simply a way to get out of the house.


>it can be ascribed to the fact that running a profitable cafe is hard.

Seems like a lot of countries have figured it out. Just how you put it below that some old cafes serve as gathering centers instead of profit centers. Yes, if you're a business owner looking to maximize profit, then a cafe selling cheap coffee is not a good way to make a lot of money, and post '89 Romania is all about money and less about community.


What? Which cities? In mine, Kraków, the above just isn't true. In my neighbourhood, there even isn't a chain-affiliated café that I could go to – if I wanted to in the first place – but there are five or six independent cafés in my immediate vicinity. Same with most Polish cities I've visited… That being said, yes, overall the number may be shrinking in favour of the chains. We're far from them becoming extinct, though.


People will spend hundreds of thousands of dollars on proprietary software.

Most of those people won’t spend $100 on open source software.


In businesses I've observed this behavior tends to surround dysfunctions in liability and understanding of liability organizationally and from business management.

If you make a purchasing decision, your ass is on the line when people ask why certain product/service isn't fulfilling some arbitrary business need. In theory, assuming the functionality is part of the advertised purchase, the liability of the thing you're paying for lies on that third party. You did your due diligence. If you chose some open source combination with in-house build, they're going to question why you didn't outsource some envisioned cheaper third party option (sometimes, this is a legitimate strategy, often from my experience it's not). So you default to big vendor big solution to protect yourself.

Apologies are made and blah blah, discussions about "what alternatives do/did we have" and you often end up landing on implementing some mixture of leveraging public domain software and in-house customization atop/leveraging it to solve the problem you were paying for. In the end, you end up doing what you probably knew was the correct path anyways: this vendor solution is questionable, it doesnt completely align with our business needs, and it's not going to get the actual need done. Conveying that to business leaders is often impossible though. So, to pass liability/responsibility and cover your ass with incompetent business leadership, you throw often thousands, tens, or hundreds of thousands away.

I've had this discussion so many times and sat in these meetings so many times it grows tiring. The fact is, sometimes a generic solution works for your business (Office for example is a pretty generic need and often aligns), often it really doesn't (some arbitrary more niche/custom thing you do? Maybe, good luck).


I had this moment of cognitive dissonance when I noticed that one colleagues would use "open source" as a synonym for "poor quality". Context: I was working as a contractor, for a bank. That colleague was managing a bunch of *nix instances used to deploy our web services.


Because open source projects are not products per se. If you use mostly a proprietary software, open source project can be perceived as "poor quality product".


if they had to pay for open source then they couldn’t afford to pay for commercial software?


Yep, and if you ask them to they will throw a fit and claim you are taking away their rights.


Correct. They've learned the behavior that attacking someone's ego, sense of fairness, or duty pays off and costs little. Almost everyone in customer service or non-profit space has to deal with these leeches.

Easy to defeat, fatal to ignore.


Hm, why do you think that is? Do programmers just respect each other less than they respect baristas?


If Starbucks started giving the drinks away for free, I doubt people would still pay $10 for it.


Because they got trained to think that way by the "free as in speech and free as in beer" and "Why pay for Windoze? (sic) Linux is free" marketing the early FOSS advocates used.


Overwhelming majority of people don't buy 10$ coffee. They just don't do it.


Telling people to have gratitude isn't going to fix a logistical problem or social phenomenon.

It's like telling people not to be Christian/Buddhist/muslim because religion is just a bunch of fantasy stories.


it gets complicated when the project is intentionally marketed, and users deliberately attracted. i think at that point it ceases being purely source available and burdens the creator/marketer with support duties. unfortunately at the moment, most open source projects are actively marketed, including fringe and poorly thought out products.


> you should fix and share any problems you encounter as a token of gratitude.

The whole point of the GPL is to change "should" into "must" for these fixes. That makes it a two-way street.

The entitlement and ranting is a direct consequence of the recent GPL-hating campaign.


[flagged]


It still beats having a central planner from the politburo tell you to work in the mines for zero compensation.


You know that's not how central planning worked, right? You were told to live in a specific place, with a few (narrow) options on where to work at (unless you were (un)specialised, then there was sometimes zero choice), for meagre but sufficient compensation. You could have a place to live, food to eat. The place to live might be a room in an apartment shared with other families, the food to eat might be bread with bread, and there were little things you could buy outside of necessities, but you were compensated and it was near certain you would have a roof over your head, and baring drastic mismanagement/crisis, enough food.

If that's better than some having more money that they could possibly use, many having access to amazing amenities and luxuries, but a lot struggling to eat enough quality food and not being able to have a roof over their head is IMO a philosophical question. Do you prefer everyone (of course with some minor exceptions for higher ups) to be equally "not great, but not terrible" or do you prefer some to have amazing lives, but others to suffer?


The question of preference at the end is moot. Those with the power long ago made the decision that 'a few people should have a amazing lives while vast numbers of people suffer needlessly' is the way that society should be structured and structured it thusly. This is/was even true in countries with central planning as you've described above. There is/was always a select group of people at the top for whom the rules didn't apply and had all the luxuries that could desire.


You forgot the part where the central planners herded millions of people into Gulags, starved tens of millions more to death, then executed a few million more for good measure.

Other than that, spot on though.


GULAG is an acronym for a state organ, it can’t be pluralized.


Maybe in the original Russian, but the English word "gulag" can refer to an individual camp and not just the organisation that ran them: https://www.dictionary.com/browse/gulag


you mean like the Plains Indians in America? yeah, ugly.. they "solved war" that way.. Almost all the "great nations" of the modern times did exactly that to minority language groups, at some stage of development. Many Wrongs Do Not Make It Right -- it is what happened, however. I would add that many genocides occurred in the longer time frame of history, which is the alternative to mass forced migrations, in the eyes of the Great Powers.


> Do you prefer everyone (of course with some minor exceptions for higher ups) to be equally "not great, but not terrible" or do you prefer some to have amazing lives, but others to suffer?

This isn't the choice. Socialism (actual socialism) repeatedly starves its populations. Capitalism repeatedly creates situations where new things are created that make everyone's lives better, and existing things get cheaper and better over time.

I.e. you can't just ignore the opportunity cost of innovation and prioritisation via a decentralised market. An innovation-focused dichotomy is: should we spend lots of effort trying to precisely spread around what we have today, while still having a privileged class based on politics, or should we encourage people to do things that raises the floor and the ceiling for everyone, and have a privileged class based on value they created?


> Capitalism repeatedly creates situations where new things are created that make everyone's lives better, and existing things get cheaper and better over time.

> everyone's lives better

> things get cheaper and better over time.

Oh, fuck off with that bullshit. Capitalism may appear to thrive when living in a first-world country, but only does so through exploitation and cutting corners. More to the point, isn't it funny that despite capitalism being pretty much the de facto economic system of the world only a few countries are actually deemed worth living in? No, some abstract 'informed exchange of currency' didn't magically cause things to appear out of thin air. People make things, and they are almost certainly underpaid and overworked. Behind every AI model there are X poorly paid workers around the world that curated the data that it needs to function. Behind every piece of clothing there are Y poorly paid workers in Bangladesh that made it. And behind every rechargeable battery there are Z Congolese kids risking death inside a mine in search for cobalt. We might try to (and often do) look away, pretend that those are the unfortunate results of corporate blunders that seldom happen, but they're not. Invisible exploitation is what makes the kind of lifestyle that is available in first-world countries possible.


Is there no exploitation in communist nations? I should actually phrase that the other way around: is there, or has there ever been, a communist nation that did not exploit people to the max, even killing them if that was the most convenient option?

As for cutting corners, check out some videos on tofu dreg projects, it will enlighten you on corner cutting in a communist system.


> Capitalism may appear to thrive when living in a first-world country, but only does so through exploitation and cutting corners

I think this is a common and really fundamental misunderstanding. It works through signalling demand through pricing, rather than through bureaucrats guessing, giving anyone the chance to take a risk and keep the reward (mostly) if they manage to create value for other people, rather than how much they toe the party line. It definitely doesn't only work "through exploitation and cutting corners". Those things happen everywhere.

Just look at the monumental change in China due to the controlled (too controlled[0]) introduction of capitalism. If you let people create value for each other and get out of their way, you get stupendous results compared to thinking a centralised bureaucracy, slave-owner, monarch, or lord making the decisions.

> No, some abstract 'informed exchange of currency' didn't magically cause things to appear out of thin air

No one would say it did.

> People make things, and they are almost certainly underpaid and overworked. Behind every AI model there are X poorly paid workers around the world that curated the data that it needs to function. Behind every piece of clothing there are Y poorly paid workers in Bangladesh that made it. And behind every rechargeable battery there are Z Congolese kids risking death inside a mine in search for cobalt.

This isn't a capitalism thing. This is a poverty thing. It's lifted unequally globally, but it is lifted. The problem isn't capitalism; the problem is that doing these jobs is currently their best option. Similar or worse conditions were found in Britain under 100 years ago[1]. That's a very short timeframe for capitalism to have lifted the entire world out of poverty; too silly to take seriously as a criticism of an economic process.

> We might try to (and often do) look away, pretend that those are the unfortunate results of corporate blunders that seldom happen, but they're not. Invisible exploitation is what makes the kind of lifestyle that is available in first-world countries possible.

No, not just that. If we replaced those miners with robots we'd still have the lifestyle. Framing everything as exploitation is a dead end.

[0] https://www.bbc.co.uk/news/technology-56448688

[1] https://en.wikipedia.org/wiki/The_Road_to_Wigan_Pier


> Capitalism repeatedly creates situations where new things are created that make everyone's lives better, and existing things get cheaper and better over time

In theory. In practice, can you really say that existing things are getting cheaper and better, generally? Most of the Western world is seeing unprecedented price increases combined with record profits in multiple industries (so it's not just general inflation) combined with drastic quality and quantity decreases, combined with "enshitification" across multiple industries.


I'd say so. I think phones, bikes, cars, computers, games, glasses, medicines, prosthetics, toys, houses[0], tools, food, holidays, vehicle hire, vehicle type, plane flights, etc etc are a lot better than they were even 20, 50, and 100 years ago.

Price increases are almost always unprecedented, unless they previously went down. They are now going up, but not because of capitalism. Because of Covid spending, fuel price increases, minimum wage increases, etc etc. Macroeconomic effects (that we can debate the goodness of somewhere else), but generally ones related to government rather than business. This is though a very recent view, though. Are car prices, for the same quality of car, really better now than 30 years ago? Or has a pretty relentless competitive market for car manufacturers made cars far better value than they once were?

I don't think there have been drastic quality reductions of any kind in many areas.

"Enshitification" is a very narrow view of I think online platforms, particularly VC-backed ones starting free and looking for a sustainability too late; definitely not generalisable to "capitalism".

[0] maybe not aesthetically


>Do you prefer everyone (of course with some minor exceptions for higher ups) to be equally "not great, but not terrible"

There's the argument that in a planned economy, things can be terrible for pretty much everyone, like in Venezuela or North Korea.

You also have to account for the central planners choosing to repress people for political purposes.

Maybe you can give us a specific example of a centrally planned society which worked OK according to you? Here's a compendium of case studies to get you started: https://iea.org.uk/wp-content/uploads/2019/02/Niemietz-Socia...


They are terrible for everyone except Maduro, his family and friends and the same about Kim Jong Un in North Korea.

I many times suspect that people who yearn for communism/socialism just wish to be those who come out on top from the revolution such as the Castros, the Chavez, Maduro, Guevara, Ortega, etc.


Ah, ye olden 'capitalism, or dystopian despair!'

Strangely one of those things that culturally, we can't get past. It's a false dichotomy at best, and completely ignores the costs of implementing capitalism.


If you take away capitalism, you are still going to need a system. The alternatives are either anarchism (and I don't fancy living in a Mad Max-style world), or some form of dictatorship: either communism, or outright dictatorship, or theocracy, or some neofeudal BS. In all of them there is a single strong man at the top who will tell you what to do, and kill you if you don't.

Capitalism at least gives you the freedom to make your own choices. All the others (except anarchism) don't.


I don't know why you're mixing political and economic systems. The two are often related, but not intricately linked. Capitalism and democracy are orthogonal, and there have been plenty of capitalist but undemocratic (e.g. fascist) regimes out there, like there have been democratic countries with social democratic (aka not unfettered capitalism) economic systems.


You have to, because people do not work for free ("each to the best of their ability, and taking according to their need") if they can freeload. The only way to get them to be productive members of society is either a carrot (the capitalist system, which offers an improved standard of life for those who work hard), or a stick (the communist system, which offers imprisonment or death if you do not work hard). That force is political in nature. You cannot have a communist system without it also being a dictatorship.

So I'd say that having a capitalist system is a requirement for also being a democracy. Moreover, the rapid fall of the fascist nations suggests that having a capitalist system is, in fact, also conducive to not having a dictatorship: economic freedom leads to people wanting political freedom as well.

The problem with capitalism is that people misunderstand it to mean that some billionaire owns 'everything' - whereas it really is YOUR freedom to choose how YOU lead your life. I'm all in favor of curbing predatory practices, but all too often 'taxing the rich' turns out to mean 'taxing the middle class'. The drive towards ever-heavier taxation, where tax rates only ever go up, and never down again, can only be fought by striving for more capitalism.


What does the theory of capitalism have to say about people who do the work but never get the carrot?

No True Scotsman in 3, 2...


It says they either chose that option for themselves and are happy with the outcome, or that they will find the outcome unsatisfactory and move on to do something else, something with more carrots.

I'm not sure why this is even a question, you could have thought of this yourself: "I think I'm not earning enough. Should I stick around in this job or find a better one?"

Your snide comment is also not a response to what I posted, but I guess presenting a counter argument is just too difficult.


The alternatives are clearly unexplored and the whole situation is described as either/or between systems.

What freedom does capitalism bring you? Freedom only exists under capitalism if you have enough capital to avoid the bottom rungs.

Free to work 8+ hours a day at a job I'll never get the full value out of? Free to work for a sociopathic POS that only sees workers as lines in a spreadsheet?

Get real. Capitalism cannot bring good to people's lives. We frame it that way because our societies literally cannot think of another way to do things.

Imagine saying 'sorry, unilateral exploitation is the only way'.

What intellectual rot.


And by everyone you of course mean everyone that wasn't arrested because he thought maybe bread with bread and a shared appartment is kinda shitty.


*murdered


Are you serious? No one is being FORCED to suffer in the United States. Such is the beauty of our freedom.

No thanks, I’ll take the system that allows me to move up or down generally in correlation with my effort and work ethics.


> Are you serious? No one is being FORCED to suffer in the United States. Such is the beauty of our freedom.

People have multiple jobs and can't afford healthcare and are living paycheck to paycheck or don't have parental leave or paid sick leave or paid time off do that because they want to, right?


They just need to pull themselves up by their bootstraps and get born into a wealthy family


I don't actually think that's a problem with capitalism (though it has many problems).

I've always seen this as the markets reflecting what we collectively actually prioritize. Sure we want to be safe and educated, but damn it if we don't really get enjoyment out of fancy new toys, vacations, and new cloths.

In this case capitalism doesn't seem to be holding down salaries of the careers you listed. Its noteworthy that most of those industries are unionized, but if the unions are worth anything at all they should be pushing salaries higher than the market would have otherwise paid.


Teaching, nursing, and policing are all either _highly_ regulated or outright organized by the government. So I don't know if it makes sense to say something like "the market chooses not to prioritize policing" or "teacher's unions allow teachers to collect above-market salaries". The voters seem more relevant than the market here.


Yep that's a fair point. Government intervention can muddy the waters similar to unions, with regards to markets deciding on prices and value.

There is still some level of market sentiment though, both in that we don't collectively prioritize politically pushing through higher wages and individuals are still willing to do the jobs for the current salary rates.

Nursing may actually get the triple whammy - unions, governments, and insurance monopolies all weigh heavily into hourly rates and salaries for medical professionals.


Yep that's a fair point. Government intervention can muddy the waters similar to unions, with regards to markets deciding on prices and value.

There is still some level of market sentiment though, both in that we don't collectively prioritize politically pushing through higher wages and individuals are still willing to do the jobs for the current salary rates.

Nursing may actually get the triple wammy - unions, governments, and insurance monopolies all weigh heavily into hourly rates and salaries for medical professionals.


So the end result is that you live in a society where the average quality of education and health care slowly plummets to zero?

That is not a sustainable solution for society.


I'm not quite following - are you criticising modern late stage Captitalism or some imaginary implementation of bureaucracy?


No? What the fuck is this crap logic every time someone suggests we may not be living under a great politico-economic system? How did we go from "maybe we should tame inequality" to "let's resurrect Stalin"? Fucking fuck.


A maintainer position for a software project is like any position or role, in say, a charity. You aren’t technically forced to do the work, but the charity announces publicly (on its web site, for instance) that the work will be done, and people expect it to be done. If you do not feel up to doing it anymore, you owe it to other people (who expect the work to be done) to announce your retirement and hand the position over to new people.

Any project which is not a going concern should:

A: Not, IMHO, be called a ”project”

B: Be clearly labelled, in its public-facing information, as being offered as-is, without any implied updates or future development.


> B: Be clearly labelled, in its public-facing information, as being offered as-is, without any implied updates or future development.

So if I had a text file in the root of my repo that said:

  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
Would that be sufficient?


That text does not disclaim support, security bugfixes, and future development. On the contrary, all three of those things are probably either heavlily implied or outright stated to be available on the project web site.


You and I are reading "SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION." very differently.


At best, that only covers bug fixes. And, as I said, bug fixes are usually implied to be available in future releases.


> At best, that only covers bug fixes. And, as I said, bug fixes are usually implied to be available in future releases

Can you explain how you got to that interpretation from that phrasing?

> SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

And how is future development and / or support not covered under servicing of that clause?


Fixing defects is a different activity from support and future development, no?


Why is that distinction important? Especially in light of the first sentence of the paragraph that sentence is embedded in.

> THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.


It also doesn't disclaim the author from writing you a check out of the good will of their heart.

I genuinely don't understand what's so difficult to grasp here.


> * It also doesn't disclaim the author from writing you a check out of the good will of their heart.*

Nobody expects that. But people do reasonably expect a project to recieve updates, security fixes, and new releases.


I'm not disagreeing with you, you're just wrong.

It's not reasonable to expect a project to receive updates, security fixes, and new releases for software projects the author put on the Internet explicitly with a license saying it's warrantied for no purpose, both explicit and implicit.


I was going to present a fair rebuttal, but you’ve just convinced me that it’s unreasonable for you to expect any answer from me in this debate.


There's nothing to debate.

Your starting point is to selectively ignore parts of the authors explicitly chosen license.

It's sophistry.


I think it is too long.


> B: Be clearly labelled, in its public-facing information, as being offered as-is, without any implied updates or future development.

Pretty sure every open source license includes this in the warranty line...


No, that’s the legal warranty disclaimer. It has nothing to do with support, security fixes, or future development.


What do you think a warranty is?


A warranty is about the code which already exists, and whether the code is fit for a particular purpose, etc. (all legal terms). The warranty disclaimer in free software licences all say basically “Although this specific version of the software is meant to be helpful to you for a certain purpose, you can’t sue the developer if there’s a bug or an omitted feature, since we don’t make any guarantee that it will work.” But this is not what I was talking about. I was talking about disclaiming any implied support, security bugfixes, and future development, all three of which are usually heavlily implied (or outright stated) to be available in official project information (such as on an official web site).


The distinction you're trying to make isn't recognized in the eyes of the law, nor really anyone else for that matter.

The warranty disclaimer in virtually every software project, regardless of license, has been around for decades. The text has been fairly anodyne except with the recent wave of parasites killing their host and trying to snake their way out of it.


You are saying I should add, to my free lemonade stand, a disclaimer:

I will not help you with drinking the free lemonade; if the lemonade is too sour for you I will not be providing extra sugar; and I will not make free lemonade tomorrow.

Can you give me one or two examples of official OSS websites where these are heavily implied or outright stated? Do you mean anything beyond a roadmap?


You don’t need a disclaimer for something which nobody reasonably expects. Although an “available today only” notice might be useful, since people might reasonably expect a lemonade stand to be available the next day.

Regarding examples, basically any software project web site which talks about the project as an ongoing thing, gives links to where “new releases” will be available. Stuff like that. All that implies that the software is actively developed and will be developed for at least the near future.


Let's look at one of my favorite open source projects:

https://github.com/gorhill/uBlock

Does gorhill need a disclaimer, as you propose?

If so, please tell me specifically, where you are reading any "implied support, security bugfixes, and future development".

I am not purposefully complicated, I just feel your "implied" is doing a lot of work, and I want to see what that really means. I don't see the implication, but perhaps I am blind. So please enlighten me. (If ublock doesn't fit your argument, please give another example of your liking.).


Firstly, uBlock doesn’t really talk about its own updates, since all the frequent updates it needs are provided by its filter lists. It’s basically an app store, a little bit like F-Droid. And you’re right, I can find no explicit language that either states or implies any of the things i listed.

But think of it this way. There is a prominent link to their list of releases, <https://github.com/gorhill/uBlock/releases>. From what I can tell, the releases vary from a few days apart to maybe a month apart, with the most recent release being yesterday. What would you think if, say, six months from now, there still wasn’t a new release? No bugs fixed? And, when asked about the absence of these things, if the developer’s answer would be “You’re whiny and entitled, I have no legal obligation to do anything, read the license LOL.”? I mean, he’d be technically correct, it would be legal for him to do this. But would it be OK? What I am arguing is that it would not be OK, and that users do have legitimate reasonable expectations of any project that presents itself as being active; i.e. fixing bugs, security holes, and implementing new features. Users are not “entitled” when expecting these things.


I am no longer sure there is much disagreement... just a different perspective on the world, I guess?

What you say is kinda true, but directly proportional to time since the last commit (currently for uBlock 9hours ago). If there has been a commit over the last few days, yes, I (not particularly reasonably, but still) expect there to be updates. But this expectation (and reasonableness) diminishes with this commit further away, if that becomes months and then years, I no longer expect that.

And in your hypothetical conversation, a lot hinges on your exact framing and phrasing of both the (non)entitled question and the phrasing of the answer. Yeah, your hypothetical developer is a dick. Don't be a dick, both sides.

Again, I feel there isn't enough disagreement here for argument. Enjoy your perspective, have a good day or night.


> And, when asked

Just so I understand, what would be the question here?


(I have edited to clarify.)


> Be clearly labelled, in its public-facing information, as being offered as-is

If you read the license (for most licenses anyway), that info is clearly right there.


This is ridiculous because there is no legal or moral obligation from the creator to say anything except maybe adding the license. You as a user can use the given software and probably modify yourself at will due to the permissive license which is the main advantage of OSS. When I get stuff from the charity I do not expect them to provide a return policy and customer service, your analogy is moronic because the thing was done already and you can come back and get a newer thing if it is ready.

The problem is that the barrier to use any software is so low that it attracts people who have no clue and demand support. I am not talking about you, even the larger companies always mention a wish to force smaller developers to patch security issues for free, this is an issue in supply chain security at the moment.

The gist is that you can fix it yourself.


To use any software in these modern times, it’s not enough to simply get a snapshot and use that forever. That time has long gone. Users need updates for whenever the inevitable incompatibilities arise, and since switching to some other software is a lot of work, users need to be able to depend on regular, timely updates. Indeed, many people choose what software they use solely on that basis. Therefore, any software project which presents itself as usable is implying that the project will provide these things.

(This is a bit like how a stable economy depends on there being a crucial threshold number of long-term, high-trust relationships. You cannot have a functioning economy when everybody is always backstabbing everybody else. Similarly, you arguably cannot have a functioning Open Source ecosystem if everybody is just throwing code over the wall all the time.)

> The problem is that the barrier to use any software is so low that it attracts people who have no clue and demand support.

I think this phenomenon is caused by:

1. Some users being a bit whiny and entitled, just like some people are rude to waiters. Some have been taught and brought up to behave this way, and others have just gotten into bad habits.

2. Many developers being overly defensive when presented with legitimate complaints from users. This is just human nature, harmful as it may be.

3. Due to 2., users exaggerate and act rudely when reporting complaints, because they expect pushback from developers. This then exacerbates 2. again, leading to a vicious cycle.

Some developers who are burnt out by 1., and are not realizing what is going on, are, as a way of psychological self-defense, adopting an attitude of “I don’t care about you users, you’ll get nothing and you’ll ******* like it.” This then necessitates the same developers to argue that all users who expect anything are merely “entitled”, because if any user’s expectations would be reasonable, then the developer’s attitude would be unwarranted, and the developers feel that they need that attitude for their own well-being.

None of this is new; the old jargon word “lusers” was frequently used in ages past with contempt and disdain for users.


The feeling of entitlement people have around open source is unsustainable.

Do you have standards? It doesn't sound like you do.

People with healthy boundaries set standards for themselves as far as what they give to others and what treatment they accept in return.

I think the fallacy in your argument is that you're blaming contributors for noticing that they aren't being compensated for the work they've done, rather than blaming others for using that work without giving anything in return. I see your sentiment reflected in society in the way we treat low-wage workers with disdain for not doing more lucrative work. You're applying the principle of rugged individualism to a systems-level problem.

A healthier way to approach this would be to list a number of possible solutions and debate them in an open forum like this. When we find solutions but fail to adopt them, then that's a criticism of our agency. We are all failing ourselves by failing open source contributors. Then we can look beyond that to find the reasons why. Which are obvious because they are the same as with any other power imbalance. The fault lies with the wealthy and powerful people and corporations who profit from free and low-wage labor. The solution is to organize labor into a unified front so that exploitation can no longer happen.

Our failure to solve open source compensation is analogous to failing to stop suffering in developing nations which provide labor and resources for wealthy ones. Your argument places guilt and shame on workers instead of identifying exploitation by the wealthy, which might be better spent on something like an open source endowment or UBI more generally.


I dont think that is what the person you were replying to is saying.

> I think the fallacy in your argument is that you're blaming contributors for noticing that they aren't being compensated for the work they've done, rather than blaming others for using that work without giving anything in return.

Is anyone being forced to work on open source software? Unlike low wage jobs, where you could be forced in order to pay bills, eat, nobody is forcing anyone to work on open source ventures.

Just because you do something useful does not mean you are inherently entitled to compensation in the form you want.

If you are being forced to do something against your will that is bad. If it is some hobby you happen to like doing that is totally ok.

> The solution is to organize labor into a unified front so that exploitation can no longer happen.

Lol. What type of leverage do you think open source devs have to form a union? Open source in many ways is designed to remove all economic leverage from source code. Its not a bug its a feature.


Edit 2: you're right, I read the parent comment backwards. They're saying that people using open source code have no right to place demands on contributors. This is a teachable moment for me, so I'll leave my thought process below, even though it doesn't apply now.

--

If I follow your logic, then you're saying that there's no economic incentive to work on open source software, since it's not compensated financially. Which seems to create a paradox:

A) Capitalism doesn't apply to open source software because there's no exchange of capital for labor

B) Capitalism applies to open source software because it generates billions of dollars of revenue for people and corporations

It sounds like the only rational act under capitalism is to not work on open source software, since the work is not compensated.

Meaning that any solution we come up with will act outside of capitalism.

Can you present a solution that works within capitalism to fund open source software?

Edit: I forgot to mention that the primary power of organized labor is to withhold labor until compensated. For open source, that might look like deciding as programmers to withhold all of our contributions until we solve this. Since we won't do that, we're all scabs supporting the status quo.


To put it in the broader context (outside of what the start of this thread was) - i view it similar to painting.

Do some people get rich selling paintings, sure some do. Do most people? absolutely not. Is that a problem, i don't particularly think so.

People paint for a variety of reasons, some ecconomic, but most not. Similarly people contribute to open source for a variety of reasons, some ecconomic some not.

> It sounds like the only rational act under capitalism is to not work on open source software, since the work is not compensated.

Broadly stated, i agree with this. Unless you have some specific angle or business model, contributing to open source is a terrible way to get rich.

While it would be nice if my contributions made me a millionaire, i don't see it as a fundamental injustice that they don't. I knew that going in and did it anyways. If i wanted big bucks i would be optimizing my life to work at FAANG and that has its own set of trade offs.


Ok that's actually very insightful, comparing open source to art.

I got triggered (saw what I wanted to see instead of what was there) because I've been involved with so many projects that failed (say 90+%) that my average hourly "wage" probably comes out to $3/hr over my lifetime. While that's a decent wage in many parts of the world, where I live it means struggle and destitution as a starving artist. "Let them eat cake" comes to mind, because I've never had the baseline stability needed to make the contributions in my heart. So I didn't, I just spent all the years of my adult life working towards other people's dreams, and what people see of me today is the shadow left behind of someone who lost dozens of bets in a row with little to show for it.

I'm concerned that AI encroaching on the last viable artistic endeavors like painting, playing music, writing (and now designing software!) could grind us under the heal of the status quo even harder. Yet people make $100+/hr working at FAANG by standing on the achievements of open source while giving almost nothing back.

I don't see a way out of this, so without some kind of human intervention, we have maybe 10 years left before the sky falls. That could be the start of the New Age (heaven on Earth) or it could be the total subjugation of humanity beneath technology (a living hell). Unfortunately the powers that be have chosen the second route, whether they are consciously aware of it or not.

Is there anything we can do to balance the scales? All I can think of is to withhold our labor. But when AI automates that, there truly will be no recourse. The value of labor will fall towards zero and we could be looking at a luddite revolution where people sabotage tech in a misguided attempt to save themselves. When we could have planned for that eventuality and chosen something like UBI instead.

It breaks my heart, but my heart is already broken. I guess that's why I have moved to magical thinking through stuff like meditation in an effort to manifest the world that might have been. An unsatisfiable ego-driven tech can only be defeated by a conscious soul-driven love.

Like how does one contemplate zen as the world burns? That's what this problem of under-compensation hits on for me. It's maybe the central problem of our time, or at least my time. Separating me from the life I had envisioned. For me, more tech has merely resulted in more suffering at the hands of it.


> I think the fallacy in your argument is that you're blaming contributors for noticing that they aren't being compensated for the work they've done, rather than blaming others for using that work

That's the exact opposite of what they are doing. They are blaming the users for expecting more than they should. They should expect nothing more than literally just the current version of the code, as is.


Thank you, you're right, I read the parent comment backwards.


The annoying part in this debate is people spending their lives on a project and demanding to be paid for it.

Don’t do it! Who’s asking you to work on it?

I say this as a minor OSS developer who receives some donations. I love the money, but it would be pretty dumb for me to say they oughta pay me, because the only reason I work on it is addiction/compulsion/procrastination of real work.

If it bothered me that people use it for free, then I could just stop working on it and let it rot, just like lodash’ maintainer did for a few years. You always have the option.

I keep reading from project leaders like ESLint’s things like “if only they paid $1 each…” as if that made any economic sense at all. If they paid $1 each, you would not hand thousands let alone millions of users.


> I keep reading from project leaders like ESLint’s things like “if only they paid $1 each…” as if that made any economic sense at all. If they paid $1 each, you would not hand thousands let alone millions of users.

From another angle, if I gave a dollar a month to every Free Software program or library I used that month, it would cost me thousands of dollars a month. Obviously that isn't realistic. I have donated to projects before but those products need to individually make the case to me that my donation is needed. Expecting users to donate to every project they use by default just isn't realistic. Most projects won't get donations from most people most of the time; that's just the way it is. Developers should be at peace with this before they decide to personally commit themself to a project.


I don't think anyone is expecting you to donate to literally every project you use. However, say your business is to build and sell a product done in JS. You already have a bunch of JS devs, whom you may have even bought those sweet MacBooks. Let's also say, you're invested in keeping the code quality high, which you boast about in your product web page. Why not donate a $100/month to the JSLint project which is part of your toolchain anyway and helps you achieve your goals? The annual cost is probably less then you'd spend on the toilet paper for the office. You get a maintained product, they get some money to support their efforts. It's clearly a win win.


That's a fine pitch for the merit of donating to ESLint, but if that pitch isn't working for the developer then he should either make peace with doing the work for free, or stop doing the work.


Yes, completely. If there's no business contract in place, it's hard to expect compensation of any sort. It's all hinged on the other party's willingness to recognize the value in keeping the project alive. Very few do.


Welcome to the pre-2000's, when it was possible to actually make a living from selling software, without having to bundle it behind a SaaS paywall, hardware devices,...


Serious question: is it not now?

I have worked hard to escape closed source, commercial software, but I still purchase several box products (FamilyHistorian and SuperMemo come to mind immediately) from small companies. I acknowledge e.g., Microsoft or Adobe can make a killing by making their products subscription-based, but is that the way small companies (who can accept the lack of continuous income and charge a significant portion of full price for major upgrades) have to go?


HN is a good mirror for that.

Every time someone posts a project that happens to be closed source, and asking for money, there are several voices reaching out for the pitch forks and torches, how dare someone charge for XYZ when FOSS alternative (less functional mostly) is available.

Hence why only those doing enterprise consulting get the nice toys.


> The annoying part in this debate is people spending their lives on a project and demanding to be paid for it. > Don’t do it! Who’s asking you to work on it?

I think the issue here is that we don't have a system where being an OSS contributor is a sustainable career path.

The value we get from OSS compared to the monetary compensation for that work is disproportionately small.

OSS generally doesn't depend on an army of people paid to make you buy shit you don't need or want.


> I think the issue here is that we don't have a system where being an OSS contributor is a sustainable career path.

We do. You work for a company that needs software X, and you contribute patches and fixes to X from your paid time. Software X is essentially a collab between different companies then.

The Linux base (kernel, libc and compilers) basically works that way.


> I think the issue here is that we don't have a system where being an OSS contributor is a sustainable career path.

As is true for many (most?) crafts.

If I am an artist (e.g. painting, digital art, etc). and give my work away for free, my fellow artists are not going to sympathize with my inability to make a living.

Ditto photography ("look at all these companies taking my free stock photos and not giving me any money!") Ditto music. Ditto writing. Ditto anything that involves a significant amount of creativity.

It's silly to expect SW to be any different.


> It's silly to expect SW to be any different.

True, I can't disagree.

However, it's important to note that there is something different about the software world, in that very large subsets of applications and infrastructure of large for-profit companies are built on top of the free labor of open source.

Not sure if that's true in any other craft.

If unpaid open source were to magically disappear overnight, all of the Internet and all tech-using companies would collapse immediately.


> Not sure if that's true in any other craft.

It isn't, but that may be because other artists don't give out their work for free.


That's why basic income is so, so necessary.

Let people do creative work without needing to work for exploitative corporate ghouls, and let the world-killing planet-burning exploiters cry themselves to sleep on their mega-yachts about it.


Or maybe that's a large neon sign that we should fix those, too?

Why isn't it a sustainable career path to be an artist or photographer or musician or writer or open source contributor? (Outside of the lucky 1% or so at the top of those crafts, of course.)

Why are creative pursuits so much harder to make a sustainable wage on in our society? Why do we expect most of them to be unpaid hobbies? Why do we expect the arts and crafts that are the fruits of their labor to start at "cheap as free" unless they work to be insanely talented and are lucky enough to win corporate sponsorship/patronage?

I don't have good answers either, but there are a lot of questions of what actually are we valuing about our use of our labor here, as a society, in general, across the board.


> corporate sponsorship/patronage

Those are the only things that make any sort of sense. The alternative solutions require a reality distortion field to even begin to work. Copyright? It's logically reducible to attempting to sell numbers. It just isn't going to work in a universe where globally networked computers exist. Intellectual work is infinitely abundant once created.

We gotta figure out new business models. What's valuable isn't the end product, it's the labor that creates it. We need ways to get paid either before or during the creative act, not after it. Sponsorship and patronage accomplish this and are perfectly ethical. I see artists accepting commissions and requests for a price, that's another business model that satisfies the requirements I mentioned. GNU once proposed a vision where all software was free and people would hire programmers to work on the features they were interested in.


The point is maybe that corporations are proven to be poor stewards of who deserves sponsorship/patronage, so while sponsorships/patronage are the things that make the most sense as sustainable under our current economic models and corporate ones are currently the only ones that seem reliably sustainable yet there aren't enough of them and a lot of important labor is getting underfunded/unfunded, maybe that deficiency points to our economic models themselves as the problem.

Sure, we don't have a better economic model on hand. That's most of what I was pointing out. I don't know what the answer is, but root cause analysis suggests we may have some flaws in our root economic models that as a society it would be great to fix and raise a lot of boats, not just open source developers but artists and craftsmen and writes of all sorts that are also under-appreciated in the current economic models.


I believe the only answer to human misery is no economic model at all. Post scarcity. Economies only exist if scarcity exists, thus we need to eliminate scarcity. The goal is to automate all work and achieve an unending abundance of food, energy and goods.


These are age old questions. I don't have answers, and you admit you don't either. Until we find a way, we can't cling to a belief that it is possible.

Incidentally, in the past, great works of art did come out of government funded initiatives (TV shows, etc). In the countries that had such programs, though, I think you'll find a very bipolar distribution. The very few who made high quality art got funded, and the rest had no option to make a living (or even money) for their work.

In places like the US, it's been more of a continuum due to a much larger focus on private funding. It results in the median piece of work to be crappier than in those countries, but a lot more artists actually can make a living as a result.


Where is it written that being an OSS contributor should be a sustainable career? Just go write software for a company if that’s what you want to do. But why there’s an expectation that “open” source software should pay anyone is beyond me.


I think that society and companies benefit from FOSS even if there's no or little profit in doing it. Sure that are corporate OSS jobs, but think of all the societal benefit that comes from one-man or community FOSS projects. I feel that in an ideal situation people should be incentivized by being paid for doing that work.


> Where is it written that being an OSS contributor should be a sustainable career?

Why shouldn't it?


I’m not saying it shouldn’t. I said where is it written? Why does everyone act like it’s a foregone conclusion?


>I think the issue here is that we don't have a system where being an OSS contributor is a sustainable career path.

They knew that before they started.


I meant it in a general sense, I think we'd be in a better place as a society if this model of work was easier to follow/more mainstream.


I am not sure what you are saying here.

Is this is a general critique of capitalist exploitation of the "software" field? Like, as in software should be a utility like fresh water or electricity?

If not, and you are relatively literal in what you write, the following question seems unavoidable:

What about coaches for youth sports? What about beach cleanup? What about a thousand other worthwhile and societally useful activities that people volunteer to do, but for which there is no sustainable career path? What makes OSS contributing any different from them?


> I think we'd be in a better place as a society if this model of work was easier to follow/more mainstream.

Why?


Because it would mean more people working on free software which permanently enriches all of us.


> I think the issue here is that we don't have a system where being an OSS contributor is a sustainable career path.

Why should it be? Most OSS authors get paid to work on their stuff by some company who wants it. If there's no one willing to hire you, then your software is not worth it. I don't mean this negatively. I have lots of open source projects that are not worth it. I have one that I've been hired to work on before, but am no longer working on it anymore


You can say that for a whole host of things people volunteer to do with their time. They still volunteer that time often knowing it comes with no compensation at all. There’s this idea of altruism and greater good that drives a lot of people beyond money.


With OSS, it’s more like a personal creativity outlet, or “I want this thing to exist”. It is very similar to artists and musicians. Who also have a hard time getting someone to pay for their output.


This! Its always the same. When volunteers start to complain they aren't compensated for their work, things start to smell fishy. And this kind of behaviour seems to have increased lately. Rather sad. Either I do something for the love of it, or I am going for a paying job. Sometimes people are lucky and these two are the same, but that is very much the exception.


Sometimes it's that devs still like the project, but more often it's probably just the fame/exposure that they don't want to lose. If you have no compassion for a project and the demand is high, it's still your decision to invest your time for no money exchange. You can just ignore the demands, if you can accept that your project might eventually fold.

This is additionally supported by the point that only few maintainers will hand out commit rights to other devs. They rather complain about all the workload and demands than give up some of all of their control, so others with more passion or who are even paid can continue working on the project.

If you want to be paid for your code, then pick a license model that matches it, but it will mean that you won't rise to the top, as only a limited amount of people will use it.

I wrote some more thoughts on this, during the "Moq incident" earlier this year: https://duerrenberger.dev/blog/2023/09/23/foss-funding/


> Either I do something for the love of it, or I am going for a paying job. Sometimes people are lucky and these two are the same, but that is very much the exception.

Why should that be the exception? Why shouldn't people's passions, especially when they are widely useful to others, not be encouraged and turned into paying jobs? Everyone wins. The passionate can keep doing what they're passionate about without having to split their attention to a job to pay the bills, and in exchange everyone else gets better quality output.


> Why shouldn't people's passions, especially when they are widely useful to others, not be encouraged and turned into paying jobs?

Because there is no fair way of estimating what someone's work is worth without a free market. Sometimes it turns up weird outcomes like maintaining a critical driver being worth $0.

If someone is willing to do something for free and the marginal cost of copying the work is 0 then by simple economics they will not get paid for doing the thing. Same logic applies to having children, advocating good ideas in politics and a lot of creative work.

Besides, why should someone doing what they are passionate about entitle them to a leg up? What about someone doing plumbing and hating it? They're making more of a sacrifice for the benefit of others, they deserve more money. And if someone is adding enormous value then let them who recognise it pay for it.

Nothing wrong with people working on their passions and making money of course, but words like 'should' are suspicious. Once you get to software development, people are in a world where market forces are fair and reasonable.


I think we Should - There's a ton of things like this where the benefits are huge but charging for it is impractical. And its kinda sad as a society that we can't figure out a way to fund such things


I build stuff because I love it. But why should I publish it? If I publish it, why should I release it under a permissive license?

I think people get pissed off because they're working out of a spirit of generosity, and the users who they interact with most are definitely not.

Suppose my neighborhood regularly throws a block party, and everyone makes and shares some food, because they enjoy making and sharing food. Great! But suppose one neighbor grabs portions of everyone's freely shared dishes, packages them up, and begins selling your freely-shared food as plate lunches to others, and pocketing the proceeds. They come back and ask that you use more spice, and by the way, do you have any napkins and plastic cutlery? Is the right response here "well, if you don't love making and sharing food for the love of it, you should stop?" Or is it reasonable to want to share with people who are willing to engage in the same spirit of mutual benefit?

I build stuff and keep my projects to myself. I would happily share with other people who are building hobby projects for the love of it. I would happily let almost any non-profit use my work for free (perhaps excluding some political or aggressively religious organizations). I have zero desire to gift anything to anyone's for-profit company. But for some reason, there's a strong stigma against sharing source code but not allowing a total free-for-all of what it's published for. "That's not open source," I'm told. So I don't publish at all, but that has nothing to do with not loving what I build.

Meanwhile, a hobbyist makes music, and publishes some recordings with a CC non-commercial license, people get it. No one says, "oh if you object to companies using your recording as background in their ads, it must be because you don't love making music."


> I keep reading from project leaders like ESLint’s things like “if only they paid $1 each…” as if that made any economic sense at all. If they paid $1 each, you would not [have] thousands let alone millions of users.

The dirty secret of the GitHub era of open source is that many developers and open source codebases would be better off if such a thing happened.

A lot of stuff associated with the development processes that are fashionable with GitHub and programmer Twitter provide net negative value (e.g. issue close bots) or neutral value at best (because they solve a problem that really exists but not at the scale that most downstream projects that opt in are actually at). If it suddenly became necessary or even just strongly encouraged for programmers to pay a dollar a month for things that are only as pervasive as they are because they are free and give the false sense of productivity, then we'd see a huge dropoff in the adoption and use of lots of things that are of dubious value to begin with.


I could see it now, every time you run yarn install it charges you $1 USD per dependency.


It goes both ways. Crowd blame the maintainer if they change the license for the future updates. So it makes sense to blame the crowd if they want the updates for free.

But I agree with you. Open source projects shouldn't have any obligation to listen to the people if they change the license. Even if they intentionally bait and switch, the users should only expect the current version to be open source and shouldn't expect free updates for life.


Yes, if it's open source then users don't have any right to expect that it'll be maintained by someone, but if a project deliberately uses the bait and switch trick to get people to start using the project when it's open source in the hope of trapping them, then that's clearly manipulative and ruins trust in other open source projects.


Why? All they are claiming is that current version is open source and will remain open source. How is it different than stopping maintaining it altogether?


Because they released it as open source purely to lure people in and get them using it enough so that switching away would be difficult for them.

If they're up-front with people and mention that it'll be open source up until a time of their choosing, after which subsequent versions will be proprietary, then I don't see a problem and no-one's getting tricked.

When I'm choosing an open source tool to use, then I want to know whether it's under current development or is more or less abandoned. If the author suddenly decides to stop maintenance for some reason, then that's acceptable because they weren't trying to trick me into selecting their tool over others, though I'd still be looking to either switch to a different tool or see if the project has been forked. It's about honesty.


Any open source code that requires constant maintenance either has FAANG support or would switch license in the future. I don't think that donation or pay for support could pay market rate to talented developers except in a rarest of rare case(e.g. sqlite which has very high user to developer ratio).

Just treat not open source product differently than open source. Assume that the current version is all you are getting in open source.


That seems to be a limited view of open source software and is ignoring communities that work together on useful code and a lot of successful projects.

One of the advantages of using open source code is that updates aren't purely done for commercial reasons and popular projects will tend to get a lot more people working on them than a similar proprietary piece of code. There's a lot to be said for enthusiasts working to make something better because they want to, rather than a paid developer just adding in features that a sales team think will look good in publicity materials and not being permitted to spend time fixing long standing issues with the code base.

It's an implied social contract between the developers and the users - the users will often recommend the software to others and there's an expectation that a popular, active project (i.e. not just some code that someone's published and then left alone) will continue to be active.

Switching licenses is only really feasible where all the code is owned by an individual (person or business) - certainly switching Linux to a different a license would be incredibly difficult.

It's all about getting people to work together rather than in competition.


> When I'm choosing an open source tool to use, then I want

BZZT! You just said "I want" in relation to something you get for free.

There are only two valid paths, enjoy stuff for free and expect nothing or pay up and expect whatever you want. Can't have both.


I think the general pattern is that someone releases something for free, then people start using it, and start depending on it, and then start opening PRs and issues, and then the person who did it for free in their spare time is expected to respond to those issues, etc. Now other people are making money from your work, but demanding that you work on it for free.

Mostly this is the point where people start thinking about how to monetize it -- and they should! Your time is valuable, you should get paid for it. If you don't figure out how to get in the middle of the cash flows that are happening _because of your work_, someone else will do it.


The book shareware heroes discusses this at length through the various solutions shareware developers came up with on how to monetize software written and given out for free.


As long as it's some hobby thing where you don't make any promises. If people start expecting stuff, they should start paying for it.

I suppose projects can get so big that developers literally don't have enough free time to fulfill people's expectations even if they wanted to do it. At that point they should get sponsored so that it become possible for them to devote more time to their projects. Sponsorships seem like a perfectly ethical way to make money to me. With enough sponsors people can afford to quit their jobs and work on their own thing full time. I've seen news of developers who did just that when they got enough support. I hope they're doing well.


Exactly. Open source has always meant exactly that and _only_ that. Support has always been (and should always be) on a best-effort basis. If you absolutely need the support, pay for it! If you can't or don't want to and need to fix it now, fork it!

(I maintained a small OSS project for a few years. I loved the folks that would get all mad when it didn't do x even though the code should theoretically be able to do it and "it's not that hard!". If only they submitted pull requests with their issues...)


Who’s asking you to work on it?

All of the people who demand things from the maintainers are. Very few of them are willing to sponsor or pay consulting fees. If you give up they complain loudly, and then often pay a contractor to do the work they wanted.

If they paid $1 each, you would not hand thousands let alone millions of users.

You could though, if the mindset of open source software consumers were to shift to 'pay for things you get value from'. Even if it was $1000 and only companies that paid, the landscape would shift dramatically.


> All of the people who demand things from the maintainers are.

I think OP's point is that the maintainer is under no obligation to deliver on these demands.


> You could though, if the mindset of open source software consumers were to shift to 'pay for things you get value from'

What if the mindset of producers were to shift? What if people only worked for free on things that they want to work on? Isn't that both more realistic and better for everyone?


>You could though, if the mindset of open source software consumers were to shift to 'pay for things you get value from'. Even if it was $1000 and only companies that paid, the landscape would shift dramatically.

Any solution to a problem that relies on humans becoming more ethical is not, in fact, a solution.


Knowing most large corps, they would rather pay a contractor $175/hr for two months than sign a $20/month license. Also, you usually cannot hire the open-source maintainer as the contractor, you have to use some company with insider relationships.

It isnt the engineering manager's fault at any large company. The policies make no sense, but there may be a larger wisdom that I do not understand.


So become a contractor, work for an inflated fee for two months. Then take a month off and work for yourself on whatever you want. Or just do nothing, if you prefer that to working on your own projects.

Economic injustices and inefficiencies can and do exist in free-ish markets. But this isn't one of them. It's more like "old man shouts at supply and demand".


absolutely true - once sat around in a meeting which the combined cost of the contractors in that meeting was ~$2500 per hour - we met for 90 minutes arguing about which of the customer departments would be responsible for paying the $50/month subscription fee for twilio services for the year.

We could have paid for 50 months of that service with the money we spent trying to figure out who would be responsible for the bill.


If an individual were not the maintainer for a project, they would not be receiving demands from users of that project. The only reason they receive those demands is because they choose to be the maintainer. If they step down from that roll, all of the expectations go away.

If the reason you're doing something is for money, and you're not getting money, then stop doing it. It's that simple.


> All of the people who demand things from the maintainers are. Very few of them are willing to sponsor or pay consulting fees. If you give up they complain loudly, and then often pay a contractor to do the work they wanted.

Ignore them. I mean, it's not like they're paying you. Scratch your own itch instead.

I'm probably being dense, but I'm still not seeing a problem. I think if we dig, we'll find non-monetary incentives that open source authors are a bit shy about admitting to. Otherwise why hold on to the project at all? If you're not being paid, and you think you should be, and that's the only reason you're building the thing, just stop building it.

Open source isn't unsustainable. We've got decades of evidence of that.


You mean you would write your own leftpad function instead of pulling in a $1 npm dependency

That is crazy. /s


It would actually be amazing if you could do that—somehow stub dependencies with your own libraries.

Because the number of times I’ve needed a left pad lib is literally 0, but other, more useful libraries always have it as a dependency.


I have never understood this "I have an open source project and it eats all of my time, and I must scream".

Just stop. It's a hobby. As in life in general, don't have hobbies you don't enjoy. That's weird. Give your project to someone else - if this is you, skip to the bottom for my advice on how to do this.

I maintain a couple popular open source libraries, and a ton of unpopular libraries. At least two of the popular ones are way more popular than this guy says his is. For the most part they maintain themselves via pull requests. A good test suite, static analyzer and code standards validator go a long way towards making this possible with far less intervention. If you don't have those, that is where you should put your time.

When someone does open an issue, you look at it for 2 seconds, make a judgment call. Either label it wontfix, or ask them directly if they think they can handle fixing it.

If they can't fix it, you again make a judgment call about if it's worth your time or if you want to slap "Help Wanted" on it. And that's it, go eat dinner with your family. That's all you needed to do. Takes 30 seconds.

Once in a blue moon there's a hotfix that demands immediate attention, but it should be rare if you're building good software. If it's not rare, I'm sorry, I have bad news. Every once in a while a platform change requires some refactoring, but even that will often get PR'd by someone in the community who enjoys living on the edge.

At the end of the day, if you don't enjoy it, don't do it. If the library is truly popular just hand the reigns off to someone else. Forcefully if need be.

And don't just post a vague "maintainers wanted" somewhere. No one will see it. Scan your contributions for quality PRs and actually reach out to those people who are clearly invested in your code enough to understand how it works.

One of the projects I maintain, the original author literally just threw maintainer rights at me after having opened a handful of quality PRs myself. Didn't even ask. It worked :shrug: but YMMV.


> Just stop. It's a hobby.

But why should they, if they can turn their hobby into a job -- there are many very valuable companies that have been built on top of open source projects.

I think donations is a bad way to handle it though. If you don't want to do the full SaaS model, another tried and true way is consulting and training.


One of the problems I found with this is that actually taking donations is hard work.

I live in a country completely unsuited to making money from a hobby project on the side. To take donations I'd need to register as self-employed, and pay monthly for social security as long as I'm registered, even if I make no revenue whatsoever in that month. That's an absolutely awful idea for a project just getting started. I'd be losing a very appreciable amount of money, regularly. It'd take lots of effort to have enough support that I'm back to zero, and still not making anything. This is because this is a system made for plumbers, not for people doing rare jobs on the side which might some day grow into something serious.

Apparently the government sort of looks the other way until you start making minimum wage, but that's not a bet I'm comfortable making.

But finally, we (https://overte.org/overte_ev.html) managed. It took us a long time and a lot of effort to get a non-profit registered, and it absolutely required the participation of multiple knowledgeable people. This couldn't have been done as a lone wolf effort.

And after that hurdle of course you have to somehow get people to notice you exist, and convince them to donate. This is unfortunately a tough job for people whose main passion is software development and who threw all their effort into that. Going out there and figuring out how to advertise yourself and how to ask for money is a whole new skill to learn, and a big time and effort investment.

I highly suspect that the reason why libcurl shows up here every week or so is because Steinberg spends about as much time marketing it as writing code and it's clearly working. That project appears to be quite successful in getting donations.


There have been steps forward in the direction of making donation easier:

https://github.com/sponsors

GitHub Sponsors directs individuals to Open Collective https://opencollective.com/ , which can serve as a "fiscal host." The advantage here is that the default rule at law for how a group of developers working together will be treated is partnership, which means joint and several liability. Working with a fiscal host partitions individual liability from group liability.

But there are still open questions. I don't know all the details of how Open Collective works from a corporate law perspective. How do they partition the liability of different collectives that are hosted by the same fiscal host? That is important to understand because otherwise, the collectives that share a fiscal host are partners. This is better than all of the individuals who contribute to each and all of the collectives being partners (because there's still a partition between individual and group liability), but worse than if each collective's liability was partitioned from the other collectives' liability (and the fiscal host itself's liability).

This seems like an active area for legal innovation. No jurisdiction I know of is optimizing to maximize speed and minimize cost of setting up corporations. Yet without the ability to shield the contributors of capital and labor from individual liability, there isn't much a group of individuals can do in our modern economy. The problems that many DAOs have had is a case study in this.

People who care about open source should also care about scaling up the speed and minimizing the cost of incorporating. Stripe Atlas and similar services are underrated sources of economic growth for this reason, IMHO.


> I live in a country completely unsuited to making money from a hobby project on the side. To take donations I'd need to register as self-employed, and pay monthly for social security as long as I'm registered, even if I make no revenue whatsoever in that month. That's an absolutely awful idea for a project just getting started. I'd be losing a very appreciable amount of money, regularly. It'd take lots of effort to have enough support that I'm back to zero, and still not making anything. This is because this is a system made for plumbers, not for people doing rare jobs on the side which might some day grow into something serious.

We need to keep in mind systems can be changed. You've set a very clear example that can be understood and communicated. Legislators should get to know this. Receiving donations for community work should be possible without hurdle (at least until it reaches a very high level) everywhere.

I call the idea that we spontaneously support what is right for all of us a Donation Economy. If most people are ethical, this would work well.

---

Furthermore, I think we should also fight, in the long term, for organizations (collectively supported) that provide this function (supporting community work). Like pollution is a negative externality, where the act of someone is (an unpriced) bad for everyone, contributing to OSS is a positive externality, where the work of someone is (again unpriced) good for everyone. I propose creating distributed institutions for identifying and pricing those externalities (positive and negative), evaluating and rewarding (or pricing) them accordingly. What is the metric for externalities? Collective meaning and wellbeing of everyone.[1]

There are foundations like NLNet[2] that do this for OSS. I think we should donate to them in the meantime.

[1] More about this here: https://news.ycombinator.com/item?id=29043752

[1] https://nlnet.nl/


not to mention some countries requirements around running a non-profit would mean you couldn't keep control of your own project if you did get it created as a non-profit or add others to the project without risking that they used the rules to take over ownership when it was advantageous to do so.


This is one area where cryptocurrencies are useful. Don't need anything other than a wallet address.


You don't need cryptocurrencies to commit tax fraud. The problem isn't being technically unable to get the money.


I guess then everyone accepting 50 quid from a mate for fixing up their car or something is also commiting tax fraud. Immaterial amounts like this are not on tax authorities' radar. And if you are making a material amount, nothing is stopping you from doing the right thing and reporting your side income anyway.

Crypto just reduces the hassle.


Until a couple of years ago, Yes(officially). Then HMRC codified what they had effectively been doing already which is to look away for small amounts. There is now officially a £1000 buffer for you to legally earn on the side. You don't need to report it, in fact there isn't even a place to put it on the self assessment forms (unless it's changed this tax year where they've started to be more active on side hustle money - I'll find out when I get round to filling in the SA form - probably mid Jan...)


ORLY? That's your plan? Tax evasion?

And what about when you want to spend that money? At some point you have to declare that income and be taxed and the government doesn't care if you were paid in euros, bitcoin or seashells.


> One of the problems I found with this is that actually taking donations is hard work.

As many problems as there are with GitHub (social lock-in, Copilot laundering Open Source license violations), GitHub Sponsors is incredibly valuable and substantially reduces the friction for getting support for an Open Source project.


I don't think he is speaking about the ability to get donations. Rather about the tax consequences. It doesn't matter to governments how you got money, you have to declare it, even if it is GitHub Sponsors.

He did not say which country, but my guess would be Germany. You have to declare every penny here.


The last part of the post is about the difficulty of getting people to donate, which GitHub Sponsors helps with. The first part is about the tax consequences, which Sponsors still helps somewhat with: while you still have to pay the requisite tax, with GitHub Sponsors you have one source of income to declare, rather than many small ones, which often reduces the amount of paperwork.


I was thinking Spain, it describes the situation here perfectly.


As far as I can tell, the problem lies not with the payment processing, but rather with the bureaucracy around receiving money in OP's country of residence.


Unfortunately, a system can be individually unsustainable while being globally sustainable.

That is, maintainer burnout rate can be high, but a continuous influx of new maintainers could compensate.

In fact, a lot of industries work like that, and numerous examples regularly appear on HN. Video game companies are notoriously full of super bright young developers, which are squeezed until burnout, just to be replaced by a new ones.

As for the compensation bit, although I agree with the principle, I tend to disagree that it would solve the problem as a whole. Sure, some maintainers would be more willing to spend time on their OSS projects if they were paid, some might even quit their job and work full time on their OSS. But my personal experience is that money is but a short term replacement for passion. Once you reach the point where you're not willingly working on a project, additional money can give you a boost of motivation, but ultimately you will tend to procrastinate to work on it, until you just won't be able to force yourself to touch it.


> Unfortunately, a system can be individually unsustainable while being globally sustainable.

Wow this is such a great description of the arts, fashion, Hollywood, game development, startups (?), …


It shows that the sustainability is not intended for humans, but for the entity they serve. When we talk about things being "sustainable" it's sustainable for the business, not for the people working in it.


I have one major objection.

It's easy to forget, due to the vast wealth of genuinely great volunteer-driven projects out there, that an overwhelming share of open source contributions are actually funded by capital. It's hard to imagine the Linux kernel, or llvm, or even projects like React ever fizzling out due to maintainer burnout or disinterest.

This is fascinating, in my opinion, because our systems of accounting and economical analysis are by design terrible at keeping track of externalities. They are not good at analyzing the potentially holistic value of mutualist projects. Largely speaking whatever cannot fit on a balance sheet becomes the province of philosophy and culture.

Despite all that, in the modern culture of tech companies, the value of FLOSS seems to be understood and the companies that recognize it genuinely seem to out-compete those that don't. They recognize the value it creates for them, even if it's very difficult to estimate the costs that are avoided by using a FLOSS system that would otherwise need to be licensed or built. Even if the completely optional act of using one's own resources to contribute to open source software does not easily map to an equivalent or greater return in accounts receivable or company valuation.

What I mean by this is that the sustainability of "open source" broadly speaking is already demonstrated and I don't see that changing any time soon. What's not demonstrated however is the sustainability of OP's project. I think this is a challenge that they and their users should tackle without implicating the entirety of open source software as a culture, or attempting to impose any responsibilities upon users of open source software that don't already exist.


IMO a huge problem is that extremely permissive licenses have totally devalued software development as the software you release gives everyone the opportunity to infinitely exploit it. What did people think was going to happen?

I find it especially funny when people complain "that they can't use the software 'at work'" when you release something as GPL.


Completely agree. The only licenses that make any sort of sense are AGPLv3 and proprietary all rights reserved. Permissive can easily end up being just free labor for trillion dollar corporations.


> the software you release gives everyone the opportunity to infinitely exploit it

How is that exploitation if you write some software for yourself, think it's useful for others, release it and then someone else uses it? If the software wasn't released, then others may have the same need and thus similar software may be written multiple times in a huge waste of time and effort.

To my mind, open source software is returning to the basics of human society - helping each other where we can. If you only ever do things with the intention of getting paid to do them, then you live a sad life.


Ok I make a really nice server and give it away for free. Some guy making 300k a year uses it to build something else and gets a promotion so now he makes 400k a year and his company is now making millions. They've exploited my freely available software to acheive this goal. Sure they could have invested to build it again (perhaps by paying me to build it? or by licensing my software from me?) but instead they get this at the cost of 0 and the result that they make is under no obligation to be free. This is a problem because when you assume that it's free you whole business model is based around exploiting the free to build the proprietary. This is the business model of almost every software company in operation and why the OS authors are broke and the software is devalued. A lot of the times if you're working at one of these companies that operate under this business model you are even discouraged from writing anything serious yourself or to do "overengineering". That's because the overengineering is being done by unpaid open source contributors.

> To my mind, open source software is returning to the basics of human society - helping each other where we can. If you only ever do things with the intention of getting paid to do them, then you live a sad life.

This honestly is horseshit because we wouldn't have this conversation if the profit of off open source was being distributed in any way fairly (or to put it patronisingly: used to help the contributors). By releasing your software under a license that permits this type of exploatation you are putting yourself in a precarious position of being at the mercy of whoever exploits it for commercial gain.

So as I am not misunderstood, I am not against open source in general or say GPL, but against using licenses like MIT/BSD by default.


I agree that commercialising open source software can be exploitative and obviously, that why the GPL was thought necessary to try to stop that kind of behaviour (or at least ensure that the resultant code was also open source).

But with non-commercial usage, I don't see it as exploiting the author as they wanted to write it for their own reasons and had no interest in commercialising it or believed it to be non-viable. If someone releases under MIT/BSD, then they're pretty much saying "here's the code, do whatever you want with it", so I don't see a problem with companies using it.


There isn't a problem with companies using software licensed under the MIT. There's a problem with the developer who made it: they're devaluing software as a whole. If companies get into the habit of receiving software for free, without any limitations, they value software as a whole less.

In contrast, a good, upstanding developer publishing under the GPL/LGPL/AGPL doesn't create the same negative externality: they establish that the cost of using open source software is contributing to open source software. Which should be the cost of open source software. Want functionality added to a project? Add it yourself, or hire somebody to add it, and then share the result openly. The original person who wrote the code is a pretty compelling candidate for that contract, but far from the only person available.


>nd why the OS authors are broke

OS authors aren't broke. In fact the guys from Microsoft are some of the richest dudes in the world. Maybe OS authors that give away their stuff for free are broke?


I'm going to go out on a limb here and say it's perfectly ok to charge folks for software and if you're OSS project isn't motivating you like it used to, it's perfectly ok to charge users for support/updates/bugfixes.


Yes, the main reason why people don't do this is because they aren't psychologically ready to find out that the thing which cost them a lot of effort has very little monetary value.


This is really important.

A lot of people think open source is about not paying for software, even some open source devs think this.

You are allowed to sell your software even if its GPL'd or whatever. You are not obligated to give the source away for free, you can charge people for the source and for binaries, you just have to provide the source when someone does buy it. I would like to see more people try this out.

The most common counterargument here is that someone can pay for your source code, and then upload it to github, or even sell it themselves, allowing people to circumvent paying (you) for it. This is true, but most software needs to be maintained in order to be useful, and you are not obligated to provide the updates to people who haven't paid you, and I think you could charge for access to the updates, even for people who have purchased your software before.

You can also use trademarks, anyone who would attempt to resell it would not be able to use your "marks", which could be the project name or logo for example.

Maybe there are reasons nobody is doing this, maybe its not viable, but I haven't seen any cases where someone has at least tried this.


I expect quite a few people do this, or a variation on this.


Yes exactly. You can say "I don't have much time to work on this project I'm afraid, but I am available for consulting if you really need this fixed."


I agree with the sentiment. But if anyone has ever contributed now you're in a bad place because you are making money off their work which they probably didn't consent to.


Only if you change the license and you don't need to do that to charge for support, etc.


A CLA could fix that, but that should be done early, and you need to be prepared to ignore people that try to pressure you into not doing it.


This is psychological problem you cannot solve by technological means. As a wee lad I actually made some pocket money from a GPL-licensed software I maintained. That part was surprisingly easy, the skill is highly valued. But I avoided making it a career, it all felt so overwhelming (how to balance fun, demands from customers and contributions???), inappropriate("you must not be doing money from GPL!!!!11"), weird (even harder to explain what I'm doing than typical IT job) and lonely.


The article doesn't make any argument why the current situation is unsustainable - it does point out some problems, but as far as we can see, there's no reason why current situation, with all its drawbacks and limitations, couldn't go on for ever, i.e. be sustainably sustained.

Some contributors will quit, but that doesn't imply that the system is unsustainable, as long as some more people will temporarily make some contributions, and we're not seeing an imminent collapse where people will stop scratching their itches and publishing the resulting code as open source.


100% agreed. I've had my response to this sitting in my drafts folder for years now. Finally published it now after reading this thing.

https://kodare.net/2023/11/17/open_source_could_be_better.ht... (https://news.ycombinator.com/item?id=38302122)


Your web site said “[CLAPPING HANDS SIGN] 3 claps”. Since I didn’t know what that meant, I clicked on it. It changed to say “[CLAPPING HANDS SIGN] 4 claps”. Now I feel like the person in that old joke about someone standing by a well or a cliff, repeating a number out loud.


  I stole that thing from how medium does it. I think it's a good middle ground between absolutely no feedback and comments.


There are many reasons for doing OSS. Perhaps the company you work for pays you to (the author mentions the many contributors to K8s at Red Hat et al). Perhaps you are building your resume, a student learning to program and interested in feedback, or you’ve built something for yourself and generously sharing with others, giving back to the community from which you in turn are getting valuable software. Or maybe it’s a passion project. Unless you are paid to, perhaps not even then, nothing obligates you to maintain the project, to offer free support. Consider a crude analogy: you are passionate about music, you practice, then start playing in the park (with or without your guitar case open accepting contributions). You’re good, people gather to listen to you. Perhaps a record producer will stop by and offer you a big contract. Unlikely. If you find you tire of playing in the park, it is taking away time from your job and your family, you are not obligated to continue playing…no matter how much your fans love your playing. And an essay “The Lack of Compensation in Busking is unsustainable” would be unlikely to gain you much sympathy.


The last time I checked the statistics, approximately 75% of the industry's codebase was open source—a significant portion! However, when it comes to the earnings of open-source developers, it's almost negligible.

I strongly believe that open-source contributors should be compensated for their work. So, in my opinion, there's a real need to establish an open-source economy where contributors can be fairly compensated for their work without compromising open-source principles.

I'm currently working on finding a compensation solution for OSS contributors. If you're interested in learning more, please don't hesitate to get in touch with me (see my profile).


To be fair a huge portion of the open source code being used by industry comes from industry.

Don't get me wrong though I love me a good open source project. I think the idea of being compensated might increase the quality, but let's point fingers at github. It would be as simple as adding a "support contributors" button on repos.

I don't know how divide the winnings fairly. But it should be possible.


The sustainable route for open source projects is individuals being paid by an company to implement functionality that the employer wants in a given project, and then being obligated under the license to share those changes. Those individuals could be employees of the company, or contractors, including the person who wrote the software in the first place.


I think in the minds of many, software patents are the means of getting people to disclose their source. But they currently don't work that way anywhere.

(edit: actually IIRC it's fine to sometimes promote what you're doing on HN, so long as it's not Every Single Post) . Can you tell us a bit more?


Open Source Projects should take inspiration from how companies pay people. There are some very good ideas in how companies distribute revenues and compensate individuals. We just need to take the best parts of this approach and blend them with our open-source principles, and we will have the best of both worlds.


Wait a second, where is it said that those 75% were made by volunteers and not by for example the many companies contributing to the Linux kernel?


The problem is that you ask for money on OSS. Companies use OSS because it is free. If you try to force them to contribute or pay money, there will always be someone who has more passion than you to do it for free. At this point, just pass on your OSS project that is highly demanded but you have no passion for.


Do companies use open source because it's free?

Cost may be a component. But not the only component, and cost doesn't have to be binary. You can charge and still be less than the alternatives.


The main benefit of using open source in a corporate environment is that there is usually zero paperwork involved. As long as the licence is approved, have at it! As soon as you pay money for something, either a fee or a donation, you've got to email someone. Almost certainly someone outside your team.

Companies don't make decisions on individual OSS dependencies. Individual engineers and engineering teams do. That's if anyone actually spares a thought at all (eek)!


This 1000%.

It's not my money. Why would I particularly care if we have to pay for some software?

But it is my time and effort. If I have to go through a lot of red tape and politics just to use some library then ... screw that. Doesn't matter how much it costs.

That's one of the reasons it generally makes no sense to offer enterprise software for a low cost. Even if it only costs $1, your users still have the red tape to deal with. You may as well make it cost $1k, so you actually make some money from the few users who fight the tape.


Only if they don't care about liability.

Those that care, CI/CD only fetches from internal repos, and stuff is only uploaded into them after an audit.


> Those that care, CI/CD only fetches from internal repos, and stuff is only uploaded into them after an audit.

It would be really interesting to do a survey about this, so that we can get some stats and breakdown by industry, language, size, etc about where this happens. I gather some places do this, but I’ve never met anyone, or worked anywhere that does this.


One way to not include any unaudited open source code is not to include any open source code!

I think when people point it out—that open source code is great, but comes with no strings attached and no guarantees, so you need to audit it to use it safely—they are often trying to say something about the ecosystem. That dependency growth is out of control. That it isn’t really as simple as git pulling the code in.


Relatively common in industries whose main purpose is not to sell software, and tend to have restrictions in place that fortunelly are coming to everyone via the cybersecurity bills of several governments.


Also proprietary software often is has protections (DRM/NDA/License keys) which add their own hassle.


> One happens to be heavily used

This does not matter in the slightest; your only obligations to other entities are self-imposed. Using a developer's piece of code does not confer an additional right to that developer's time.

> The bad parts are that there’s a dozen issues that I haven’t even reviewed much less triaged, investigated, and fixed

If those 3/4 million downloaders really found it that useful, aren't there code contributions?

> time = passion + money

I didn't _start_ writing code because of money, and I'd still be writing code on my own even if I weren't being paid to do it. I know this because I code on my own without being paid to do it, only work on things that are interesting to me, and I don't have a problem dropping a project if I'm no longer interested in it.

> Those companies in that list are contributing to the success of those projects

Go work for one of those companies then? Seems like a win-win.


I wonder if the promise of a couple hundred bucks would really be all that motivating at 11:43 pm, with your new baby sleeping nearby, after a full day working at your software engineering job?

You have a new son and a partner that need a lot of you right now. Those PRs and bug reports can wait. The time you have all to yourself right now is extraordinarily rare. Use it for you.

That said, I do agree with the premise of the post.


Given the current state of birth rates is that even a normal state for most developers how many developers have children or even desire children


Probably a majority. There are some that have no kids, but birth rates are around 2 in the US, and 1.5 in europe. Some people have multiple kids, so we can't do math, but on average everyone has a kid anyway.



RMS does desire children, just not in that particular way.


This is why everyone should switch to AGPL3.

You can use MIT/BSD/Apache/GPL3 dependencies without issue; never need to worry about derivative works or anything like that, just set it and forget it, and because corporations avoid you like the plague you can code away without a care in the world for backwards compatibility.

The BSD/MIT license is free as in free tech support, always has been.


Agreed.

“It’s too hard for dev teams to fund open source”: yes, it is; but we’re not going to fix that by giving them the code for free. If businesses really want something, they’ll pay. What’s missing are better ways for commercial entities-and dev teams therein- to monetarily support devs when they need to use a licence for commercial purposes because clearly the current parasitic economic model isn’t working.


>free tech support

Like, what, open-source police are going to arrest you for not addressing support questions?

MIT/BSD is "free as in the maintainer is free to ignore any and all tech support requests."


I don't know if this is the author's first child, but I'm going to assume for now that it is.

As a similar sort of person, now on my second child, with the first now 4yo, my advice is this;

Focus on yourself and your family. Get that rest, when the baby is sleeping, get some sleep, it gets harder before it gets easier.

Presumably paternity has finished now, and your partner (again I'm going to make an assumption) may be able to do much of the heavy lifted on maternity, but that'll end; at that point you'll both be working, you'll both have a massive sleep deficit, and in all likelihood (in my experience) you'll have a ~1yo who doesn't sleep through the night yet.

There were times where it got really difficult for me, and the passion projects became a source of depression because family life just didn't allow them to happen. Different people work differently, but for me, it took a while for me to realise that my priorities have changed, looking after and enjoying my life and my family became passion projects of a significantly higher priority than anything I build in software or hardware. The time will come (I assume, too early yet) when my children can take part in those with me.

The projects people are using to keep their companies running, on the back of your work, without paying for it, fuck them, let them be someone else's problem for a while.


IMO Posts like this always basically boil down to "Hey, I did follow every best practice and did everything as I was told and yet it's not working out like how it was promised"

This is because the core premise is simply wrong. Sites such as opensource.guide are not written for you. They're written for people profiting from you thinking they're written for you. If you follow their guidance, you'll end up unhappy and writing posts like that.

The only way to escape this is to ignore that con and instead pick a sustainable business model. That can mean not open-sourcing at all, but I'd wager that most of the time, it just means saying no, setting boundaries and knowing your worth + the value you provide.


Open Source is a development process. It is not a business model.


Tyler the Creator famously tweeted "Hahahahahahahaha How The F* Is Cyber Bullying Real Hahahaha ** Just Walk Away From The Screen Like ** Close Your Eyes Haha."

Seems like a ridiculous statement (and definitely doesn't address the real issue of cyberbullying)...

_but_ when it comes to open-source, that's my exact attitude. Notifications off, users opening issues and pull requests? May as well not exist. I'll occasionally check but that's it.

The easiest answer is that deep down you need to accept that you can only be "tortured" by the incessant, needy, unfair demands of your users if you choose to. If you can't handle it, disable it, archive your project, walk away.


I understand this is a jaded take, but it's not wrong.

Open source entered a bubble because companies started requiring active open source contributions to staff+ engineering requirements. The model was never sustainable. A select few contribute to open source out of sheer passion, but the majority are/were using it as a career advancement mechanism or network effect.

The result is that major companies were able to advance their technology and profits rapidly off of people's free work. The result is better products, services, and tooling for everyone, but let's not kid ourselves about who benefits most from open source: large companies.


This is what I dislike about OSI. It feels like their mission is specifically to provide free labor to megacorps. The FSF has (IMO) goals that have a more tangible benefit to society, and while megacorps can and do use free software without contributing anything, that feels like more of a side effect than the primary goal of the movement.

If you know that someone is going to take your code and make money off of it anyways (which is almost guaranteed whether you pick an FSF or OSI license), then you might as well make it so that society can benefit from this too. GPL/AGPL do this, MIT/BSD/etc do not.

And as an aside, I feel like it should be easier to profit from open source if you pick a license like AGPL. Companies that want to use it can pay you (the sole rights holder) for a commercial friendly license, while everyone else can use the free license. This is the same model for Qt/KDE.

You don't even need to sell support, and could probably even throw up a self service checkout page for commercial licenses. Thats minimal effort for maximizing profit lol.


Maybe I'm naive but I get the feeling open source is more about convincing the megacorps that they can get better, cheaper and higher quality software without vendor lock-in by cooperating with the other megacorps. Not so much as convincing volunteers that doing open source in their time off is some great idea or that they can make a living off it.


> who benefits most from open source: large companies.

Maybe in absolute terms but because of FOSS software I have been made free from the shackles of the windows ecosystem and liberated from the prison of Apple lock in to be free forever in the fields of the Linux and that alone has been invaluable to me.


This is essentially realizing that free markets don't pay proportionally to value created, but according to the marginal value created by paying more.

Compensation according to value created is fair. It's a goal we should strive for, but it requires either not going through free markets, or it requires empowering market participants to generate fairer outcomes.

This is pure fantasy, for many reasons: But if there was a union of OSS developers that would negotiate corporate open source users contribution to open source, and that would have the power to withhold license rights, compensation would probably be fairer overall.

Essentially a code collective rather than decentral anything goes open source ala GPL. I wonder if that would be attractive to some open source developers?

I think there sometimes is a strong aversion to get organized. "I just want to code!". But the idea that we can do without actively organizing society is naive, and if the outcomes don't suite us it's because those that actively organize (e.g. corporations) hold the power to shape the world in their interests.


If you want be compensated for your project, license your project appropriately and sell licenses/corporate support. Nobody's going to throw money at you out of the goodness of their heart, that's not how the world works.

If you burn yourself out on serving your entitled users for free, that's on you, not on them. You've created that sense of entitlement. You're an adult capable of saying "no" or "pay me."


easy to say - hard to do. corporates have the money to sustain an accounting department, random devs from developing countries don't. And nobody cares about them


Many of those complexities come with accepting donations too.


this single-point-of-view analysis fails to account for market dynamics over time, adoption of innovation, commodity markets, disruptive inventions.. and many, many other things that someone with experience and real critical thinking skills would discover quickly with any research on the topic.


> Open source software developers should have compensation that follows this:

  money = contributions * usage
This seems wrong. Typically opensource that gets compensation is for support. That's active ongoing work. Past contributions or usage thereof isn't material. That's the beauty of opensource, it keeps on giving to the original work, and derived works.


yeah, seems like the author came up with this formular to cope with the fact that others are making way more money off his software because they found a way to utilize their oss software to make profit. Author should do the same or not ask for money.

A more accurate and sane formular would be

   money = time_spent_on_project * avg_salary


I'm a junior so please take this with a pinch of salt, but yeah this is what I intend to do when I do open source too.

Once I've finished scratching my itch, I will only spend T hours per week on the project:

    T = patron_weekly_income / 20
Where:

    1 <= T <= 40
Where the min of 1 hour is intended to "get the project off the ground", and the max is for work life balance (any additional income is then either profits, or to be reinvested in other contributors).


I develop some open source software that I created. It's not very popular, maybe few use cases currently + my services hosted by me. But I still have an userbase and that userbase demands features from me. I tell them that the source code is open, you are free to create pull requests for me to review, but 95% of these people are no developers so they cannot do that. So now I have users who I care about, but who also demand me to develop the systems further. I don't know, I have mixed feelings about this situation, but in the end I drove myself in this dead-end, so it's my fault.


Charge a consulting fee to implement those new features? If a single user cannot afford it, then start a crowd funding campaign. If the crowd funding campaign fails, then say there wasn't enough interest. Let your users vote with their wallet.


Many open-source developers just want to code and get paid. But do they pay open-source developers to do the same? Or do they pay companies to sell them a product or service? In that case, they should build a product or service, not a tool or a library.

I have written and maintained dozens of open-source project [1], but I have only managed to make one sustainable open-source project [2]. It's also the only project for which I did all the things necessary to build a business (documentation, payment, invoicing, marketing, content, support, design, product management, tax fillings, legal, finance, etc).

I encourage everyone to open-source their code. But if you want to make a living out of it, you must also be an entrepreneur.

[1]: https://github.com/fzaninotto [2]: https://marmelab.com/blog/2023/11/13/open-source-profit-2.ht...


I think one of the side effects of Open Source has been the devaluation of source code. Many decades ago, Microsoft destroyed the IBM PC by licensing their source code to other hardware manufacturers. Not only did that destroyed the power of IBM hardware, but it also allowed smaller hardware players like Dell to enter the hardware market and defeat hardware giants like IBM. Move on to the present day and software is no longer the king it once was, only because the major players like Microsoft, Google, IBM, Amazon etc now all tend to use the same Open Source software. However, they now run that common code on proprietary hardware systems meaning we have come full circle where hardware is once again the king of the castle, and the real money is the hardware and not the software. And the real problem is, unlike earlier times when a small players like Dell could take on massive players like IBM, these days with hardware once again king, it now requires high levels of capital to compete.


> Quick, name all the dependencies of Kubernetes. You can’t, and I can’t either. There’s just too many. It shouldn’t be only end user facing products that get appropriate compensation. It should be these products that send a portion of their contributions (money and developer time) down to these dependencies in a big happy tree of contributions.

Thought this was a good quote to pull.


I am one of the creators and maintainers of https://albumentations.ai/.

- 12800+ stars

- 1M downloads last month, 37k per day

- Paper about the project: 1500+ citations

- Used in 18k other repositories and 317 packages.

=> People use it.

But!

- 365 open issues

- 25 pull request

that hang for years

Only one sponsor.

And this is fine. People use the result of our work, but we do not feel that we are entitled / deserve / [some other vomit words] of more support.

In the beginning, we decided that we would do it:

- only for fan

- when and how we want it

- if some user is unhappy with our commitment or decisions

=> feel free to fork.

But!

We do enjoy when people thank us, create pull requests (we do review and merge them, although it could take time), or create feature requests or bug reports.

I can see open source as a great pet project that you do for fun and to improve your skills, but unless it is an OpenCore business or another setup where maintainers are financially compensated, all whiners and complainers can go and fuck themselves.

I would not recommend maintainers of the open source software even notice them.

If working on OSS is not fun - do not do it. Life is too short for unnecessary stress.


I think an open source compensation system could work similar to how artists are payed when their song is played on the radio.

Radio stations in Sweden pay a fee to an organisation which distributes the money to artists in proportion to the amount of playtime.

Imagine a new type of open source license that mandated paying a membership fee to a global foundation to use the code commercially. Non-commersial use would still be free.

Companies would have to pay royalty to this organisation in proportion to their size or some other metric. The organisation would distribute the money to projects according to some usage criteria such a download count or similar.

For it to work there would have to be one or very few such organizations to that it is easy for the companies to handle. It should also not be very expensive for the companies. But even if it gets every company to contribute just a few thousands to open source it would still inject a lot more money into the system.


Such a system has been proposed for copyrighted works in general. The general idea is that you change copyright law so that making copies does not require permission of the copyright holder, but you also put a tax on something that correlates somewhat with copying. The government would then distribute that tax money to copyright owners in some manner dependent on how much their work was copied.

Even Stallman has suggested such a system [1], with the amount a given copyright owner gets for a work being proportional to the cube root of how much it is copied.

A common suggestion for the tax is a tax on internet access.

For entertainment such as movies and music and games that could probably work well. Probably also for closed source software. For open source software it might be too difficult to figure out how to allocate the money.

[1] https://www.gnu.org/philosophy/copyright-versus-community.en...


Yes I think it needs to be centralized and aggregated.

I am sure many companies realize that they gain value from open source. Thus they are willing to pay something. However they do not want to handle transactions with every transitive dependency they use. Just like a radio station doesnt want a contract with every artist. This is why isolated commersial licenses wouldnt work for anything but the very largest projecys.


There is a similar debate going on among musicians about how very few are compensated much if at all while a few at the top get extremely rich.


> Imagine a new type of open source license that mandated paying a membership fee to a global foundation to use the code commercially.

That would by definition not be open source.


I would not care so much about the definition of open source.

My ideal scenario is that code is open, can be improved and reused among commercial and non-commercial endeavors. I also would like that some of the value created by users of the open code flows back to the creators.

Individual commercial licenses do not create this ideal as they are monolithic and does not reflect that open source is a network of many dependencies.

Companies would be willing to pay for open source but they do not want to manage each node in their dependency graph individually. Thus the need for some centralized tax and redistribution system.


This is the most underrated comment in this whole thread.


I don't agree with this formulation of the problem nor the proposed solution space. The cost/price angle might be useful to solve other problems though.

Publishing opensource to a package repository should have higher hurdles than picking a LICENSE file and pushing code to Github. Java/Maven repos typically have higher quality because to get code there, you have to have a domain, register it and get through the packaging requirements/bureaucracy. The use of packages from Github with merely a repo/git-hash is a bad trend. On the other side, if everything had a visible price/cost, then we might not end up with simple functions being overused and compromise a library ecosystem.


There we go again. It seems only yesterday we had the same thread.

I choose an unusual hobby, that other people seems to find useful. Hence people should give me money.

I don't get it, I really don't.

If you enjoy working for free, by all means continue doing it. If you don't then stop. Nobody is forcing you. If you think your time and effort is worth more then you get now, go closed source, paid-support or whatever and see how much value you really bring to the market.

(I'm taking a -4 karma hit for this post, I know. I got it last time, do your worst)


For what little it's worth, I fully agree with you. This _should_ be so blindingly obvious that I have yet to wrap my head around how one could think differently.

Maybe it's a clout thing? That some people really want to make a living _selling_ software, but at the same time do not want to miss out on the cachet of "I'm doing open source"?

Whatever the reason, there is some amount of cognitive dissonance involved.


I even feel the opposite would be terrible - imagine taking payment for something that started as a hobby project.

Now the "pressure from users" is an actual contractual obligation! I can't walk away. What a nightmare.


I’m curious if it makes sense to have a distinction between source code existing for the purpose of discovery versus software for fitness of purpose. In other words this is similar to the Cathedral and the Bazaar as OSS used as a tool by users compared to the Bazaar where the focus is on displaying the source code. Much of my interest in contributing to OSS is more about offering examples and ideas via source code and not if the utility of the software fits specific users’ purposes.


Don't know of many unsustainable endeavors that last for over 30 years with no sign of stopping


Why don't you pass over the maintainer role to some of the users of the project?

Or share the maintainer role with some other users. Just select one, two, or three people who seem to be responsible and give them all the necessary write access.

Or maybe configure the repo in a way that all PRs need at least two (or so) reviewers from a selected group of reviewers.

Then this would greatly reduce the effort on your side, and development should continue on its own.


The issue isn't lack of compensation necessarily, it's lack of societal support.

Here in America I cannot work on OSS because if I tried to make that my main form of contribution, I would not survive due to healthcare costs, living costs etc. Companies being made to pay more or subsidize OSS I believe would have a detrimental effect on the system, because then it warps OSS to serve the desires of big companies in order for its contributors to survive.

The actual solution to this problem would be things like socialized healthcare detached from work. This isn't to say I think companies shouldn't pay for OSS (they absolutely should be funding and contributing to work that underpins their software) but rather that we need to reduce the reliance on corporate funding for people to be full time contributors.


Most complex, unique, value producing things have a path to monetization for the builder of the thing. If the money isn’t there for the builder they are either not leveraging their relationship to the thing correctly, or the thing does not have the value the builder may think it has.


> Most complex, unique, value producing things have a path to monetization for the builder of the thing.

I don't think this is true. You need an extra condition 'that few people want to produce'.

There is lots of good free art. Why? Because lots of people want to be artists and make art. There is tons of good free writing. Why? Because lots of people want to write. There is masses of good free music. Why? Because many, many people enjoy making music.

There aren't people who collect garbage, clean toilets, dig holes in the ground, or work in oil refineries for free. But there are people publishing science, doing research, writing philosophy, producing erotic material, designing things, putting on theatre, producing textbooks and teaching people things, making clothes, thinking of jokes, answering questions, providing peer support to addicts, playing music, making games, making animations, all without monetary compensation. This is because the people doing these things want to do them.

This isn't a failure of our economic system. It's a great thing - it makes the products better, the producers happier (provided they have the economic freedom to spend time on these projects) and the consumers better off.

First of all, it's obvious that in the vast majority of cases, writing free software falls into the 'amateur art' category not the 'dirty, boring and necessary job' category. Many, many people enjoy the time spent on writing and maintaining software, are motivated to solve their and other people's problems, and take pride in doing so well. You might expect that only games, intellectual toys or fanciful projects would motivate people to work on them in their free time. The reality is that software projects which could be seen as dry and boring to non-technical people (OS kernel design, file transfer protocols, laptop power management support, database and webserver stability, document rendering) attract many very talented people to work on them.

Secondly, if we think that there's some deep inequality or instability in our society because (for example) critical Internet infrastructure depends on hobbyists and volunteers, doesn't it make more sense to try and improve the conditions for hobbyists and volunteers, and make it possible for there to be more of them? The alternative put forward seems to be to turn them into more of the people who both don't enjoy the time spent on what they do, nor produce the best product that they can.


> have a path to monetization for the builder

The existence of the path to monetization is entirely outside their control though. Millions of people make viral videos, very few have benefited from it. The financial system disincentivizes or outright bans open-product monetization.


The many startups built around OSS projects such as Mongo, Kafka, Spark, and Linux seem to have found a way.


There's a longer list of companies that have been basically out-competed and strip mined by the hyperscalers. But presumably the poster here is referring more to a long tail of small to medium sized projects that are important to the community at large but harder to monetize then these big high gravity projects that you mentioned


very few, one would call them exceptions to the rule


My sense of entitlement related to open source is honestly more specific and, in my mind, not related to specific compensation, but definitely related to the cost of utilizing and maintaining software. I feel entitled to a discipline of semantic versioning in open source ecosystems -- a consciousness where open source developers understand how flippant changes within software libraries can have ripple-effect maintenance costs. I feel entitled to software with appropriately pinned dependencies such that upstream changes will not divert software consumers resources to otherwise needless fixes. I often deride ecosystems where these values are often not shared (Javascript, Python, Ruby), and laud those that adhere more often (Java, Clojure).


I have published a project to interact with house alarm systems manufactured by a local company [1]. It is a hobby project, I have it for my own use, don't expect it becomes a money printing machine.

Yet, since many users request features well outside my use cases, and I have only one sample of the many alarm models that use the same protocol, I thought I'd be successful in getting some help from the manufacturer, from lent hardware (at pessimist side) to some small monetary contribution (optimist side). I got no response at all...

People are also fast to point things that are "wrong" but don't want to submit a PR at all.

[1] https://github.com/elvis-epx/alarme-intelbras


I get the feeling that FLOSS holds the niche that software patents were supposed to hold. To wit, it publicly discloses methods of the art to a practitioner in such a way that (s)he can fully implement it.

Software patents don't actually do this to a sufficient granularity (at least imao) , but get paid for; while floss does this to sufficient granularity that a compiler actually can implement it.

Basically we seem to have a collection of loose bits that variously ensures we have a public foundation for software development, and other loose bits that ensure people get paid for disclosing things.

The thing we don't have is one single cohesive system where people get paid to disclose the state of the art as a public foundation for software development.


I really don't get it. People build open source projects because it gives them unlimited freedom to build what they want. Open source was never about money. If you care about that there's far easier ways to get paid (and disclaimer: they're usually boring AF.)

You don't have to try turn every project into a business... There's also a pretty big catch-22 here in that most of these projects are only widely useful precisely because they are free. With that came the users, the plugins, bug fixes, and features. Take that away and many projects will have never became popular and then you'll have solved the issue of not being paid for your work (because no users will exist to buy your software.)


The problem from the maintainer side is:

0. Don't give away something and expect tips, donations, or anything else because it will only lead to resentment. If you voluntarily give something away, you basically lose all control of how it's used in the real world. If someone intends to make money from code, then OSS is probably the wrong approach.

The challenges from the user side are:

1. Donate time, money, and effort based on utility and necessity to support what's vital.

2. Be a proactive self-starter whenever possible rather than depend on others for support.

3. Some maintainers and communities turn out to have an un{cool,professional} culture of hostility, uncooperativeness, or unhelpfulness. Don't waste time with that.


The feeling of entitlement of some developers is sometimes baffling. They have a position of authority in a project, and got that authority based on their demonstrated trustworthiness and ability to deliver useful software. Now they don’t feel like doing that anymore, but instead of resigning their position in the project like a responsible person, they want to use their earned trust to be paid for software development. Congratulations, you’ve come up with a business model. It might work, or it might fail. But it has nothing to with the software project. Open Source is not a business model. It is a development process.


> they want to use their earned trust to be paid for software development.

They're entitled to do that, and you're entitled to fork it.


Everybody’s entitled to be impolite. But I can still argue against it.


they own the project, not you. open source licensing does not mean giving up the authorship.


They own the copyright. The project is a thing that happens in concert with users and contributors, just like art requires an audience to be art.


Side note: donations are kind of difficult in a cooperate environment. Once I request that the department donates a modest amount to an OS project. We had to call it a 'license fee' internally. Paying it fine - donating is not :)


You, along with the original author, are selectively framing the issue. The original author's words:

> This all boils down to a situation where you have many profit-generating companies using software that some programmer volunteered to write. That software contributes to that company making even more money. But the developer sees none

Which developer? Because what I see going on matches what Stringer actually says earlier in the post: "There are lots of users, many in a corporate sense using my software to further progress their organization."

So you have at least two persons here; there is no "the" developer.

First, you have a company trying to make money. And then you have a developer trying to get money from their company (and not just that, but getting it, and generally trying to get more). Let's call this a type-1 developer. On top of that, you have a developer upstream writing the software in question that "contributes to that company making even more money". Let's call this a type-2 developer.

What we're neglecting to acknowledge here, and what most conversations like these fail to acknowledge , is that it's not merely "the company" that is benefiting from the work of the upstream developer. It's the type-1 developer, too.

If type-1 developers are effective at converting the labor from type-2 developers into personal enrichment, internal accolades from their employer, general career trajectory, &c, then type-1 developers really ought to acknowledge their culpability in the system that leaves type-2 developers undercompensated. This doesn't really happen, though. Most developers with a type-1 role wrt some money-earning scheme (i.e. the ones employed at a company) seem to treat their TCP, which is on average includes a salary alone that is well above the combined income of a typical household, as a sacrosanct natural right that should not be examined at this level.


I don't agree with the author on how financial compensation should be structured or where does it have to come from.

My idea about what's currently in open-source domain is that it can be split into two categories: infrastructure projects that enable users to use their computers at the basic level, enable networking communication and maintain state-provided services land in "category A", while "category B" can be roughly described as interesting hobbies, leisure, entertainment etc.

What needs to happen, in my mind is that we need (international) organizations like eg. WHO to take care of the "category A" projects, where governments would have to allocate resources to finance and oversee these projects. Much in the same way how governments spend money on postal service or regulate / oversee banking. So, projects like Linux or OpenStack need to be under such international umbrella. This would require a bureaucratic process of examining such projects, estimating their usefulness, budgeting them etc.

On the other hand, non-essential projects, or projects that explicitly don't want government oversight / intervention could still work on the currently employed scheme: donations, sponsorship, volunteering.

In other words, I believe that some people working on open-source projects today ought to be paid. We just need a framework which establishes how much and how many such people can be employed for how long etc. It's prudent to make them (international) government employees to avoid playing into interests of sponsors who might not act in the interest of anyone but themselves.

For me, this would also solve a situation whereas employees of private companies are told / paid to work with open-source technology, but are powerless against the maintainers of such technology, while having no plausible alternatives. A lot of such projects succeed based solely on the good will of the open-source maintainers, but some fail due to the lack of, or deliver lower quality products. Having essential services covered by a government entity, and, by extension, being open to citizen complaints and wishes would make it possible to fight back against maintainers lacking the said good will.


The EU has an elaborate system of VAT taxation. It is an accounting nightmare, but it is fair tax: every part of the chain is paying according to their value-add. Whole of the EU has it. If EU wasn't so anachronistic, the accounting for it could be completely automated.

But nobody ever thought to make a similar system to pay people for the value they add to the chain. On the internet it's possible, and many blockchain systems promise something similar. But big tech wants all the profits, from everyone's creations, all for itself. And governments are silently guilty standing in the background


> nobody ever thought to make a similar system to pay people for the value they add to the chain

of course, you are joking! look in the USENET news archives.. from the early 1990s.. you will see many proposals like "micropayments" .. later, even standards proposed. Also see the importance of "ad free Internet" and how certain govt-company groups try to add their own "ID" to people and machines.


ok they thought of it and never did it, which has the same effect


who exactly is the mysterious and all-powerful "they" ?


Let’s clarify the difference between hobbyist software and open-source software.


I think there should be some serious changes about this. Github already knows which software packages a company uses. They could facilitate this. For example if the OSS maintainer asks for it, any company more than say three members should pay a monthly fee per package. Even 1 USD per package per month would make a huge difference for OSS. So if your javascript package.json has 20 dependencies, and you are actively developing, every month you should expect to pay 20USDfor that package.json.

I know the math above can be challenged from multiple aspects. But we need to start from somewhere.


Then suddenly a company paying more will feel like their demands are worth more than random Joey’s demands, and soon the backlog of the project is the company’s backlog and the maintainer will be treated as an employee with nonsensical deadlines and fixed long hours.


> 1 USD per package per month would make a huge difference for OSS. So if your javascript package.json has 20 dependencies, and you are actively developing, every month you should expect to pay 20USD

The proliferation of tiny NPM packages is bad enough already. It will only be made worse by the cobra effect.


Once you make a system like that distributing money, it becomes a game and people start exploiting it, and it all turns to crap.


It's not just open source, it's open everything. You either work for bigTech or you work for free. Entire generations of people have been conditioned to create content for free and behemoths monetize it. It feels like a 21st century Marx hasn't been born yet


Maybe someone should build ecosystem with payments for this type of work. You pay for package and it comes with warranty, guarantees, fit for purpose and so on.

It notices the upstream dependencies and bills you accordingly.


> I would be willing to bet that 99% of these companies don’t neglect compensation out of malice.

There is no malice. FOSS is free and open. There are many softwares that chose to be paid ones and they are successful.


This is consistent with our findings in the OneBusAway project, an open source real time transit app that is hugely popular in Seattle, and used across the world, including in San Diego, Washington DC, Boston, Tampa, and New York.

We’ve been appealing to our end users for funding to help keep the development of the mobile apps going, which you can contribute to, as well: https://opentransitsoftwarefoundation.org/donate/


Work on the passion project! Always work on the passion project in your free time.

Companies that depend on your hobby code can send you some maintainers if they aren’t happy with your hobby output progress rate.


"My choice of license allows you to hire a contractor and fix or change the code in the way you seem fit for your purposes".

There's user entitlement, but there's also lack of dev entitlement toward the license terms they themselves chose.

This should be a template response in GitHub issues by default:

  > Remember that this project is:
  > * PROVIDED “AS IS”
  > * FREE OF CHARGE
  > * WITHOUT WARRANTY OF ANY KIND
  > * WITHOUT PROMISE OF FITNESS FOR YOUR USE CASE
  > * WITHOUT LIMITS FOR YOU TO USE OR EDIT


I'm on the same boat, so I built a marketplace for devs to charge for our software. Blueprint here: https://github.com/poss-market

Long story short: I recently put the marketplace down, because I lack business skills

If any of you is able to help with business side of the project, please reach out - mail in my profile


Let me just copy-paste it for easier access:

- Your company's perspective: Pay for the software to receive reliable products from trusted vendors

Business receives reliable open source software that is maintained on a daily basis, features are constantly developed and they receive a support from open source creators

- Why?

It's cheaper to pay a few (dozens / hundreds / thousands) bucks each year for a library, tool, component, etc instead of build it on your own, maintain, test, take care of security updates, do customer support

- Yours (open source developer's) perspective: Get paid to build, maintain and support your software

You as a developer make money by selling licenses to your open source software

- Why not free open source?

Because you still need a day job and do your open source after hours. Thousands (millions?) of companies make millions (billions?) dollars each year by incorporating your software in their products or using your software in their ecosystem, but you are left with $0 profit from it

- But I want my open source to be available to regular people for free

With poss market license it remains free for non-profit/personal/scientific users, if you choose to. It's just MIT License slightly modified


That non profit license it's a big turd. It's nonfree. Period.


I'd like to see some form system where you keep track of what you actually use. Apportion money appropriately and you can make an annual / monthly / weekly payment and it gets distributed in a somewhat sensible way.

Yes there's edge cases, but at the moment there isn't really a good way to spread my money around.


IMO, OSS works because it is open and free. Most OSS projects use each other. If you are building some OSS project then are you not using other OSS projects? Many contributors will not be able to build if it requires/expects money to use other OSS projects.


I wonder if, society-wide, the best way to allocate resources to free/open source software would be just reducing mandatory work hours. Say, if the average ~ 8h per day were reduced to 7h or 6h, how many of those freed millions of person-hours would be redirected to hobby software projects?


You’re suggesting we reduce the work day just for software engineers (many of whom probably work longer than 8 hours) but not other engineers, teachers, autoworkers? Or for everyone, just so people have more time to work on OSS? I’m all in favor of a shorter work week, but this seems a fringe motivation


Society-wide, for everyone. Most people would use those extra hours for things unrelated to software, like, spend more time with their children. But if even 0.1% of that goes to software, it still would be a huge amount of extra manpower. It's unfortunate despite all the productivity gains from technological advances in the last 60 years or so, the work week stayed the same size, roughly. Workers didn't earn a fair share of productivity gains.


I’d be pretty surprised if that increase averaged more than 15 seconds per person per day and shocked if the increase was more than 3 minutes on average.


  Python 3.11.6 (main, Oct  3 2023, 00:00:00) [GCC 13.2.1 20230728 (Red Hat 13.2.1-1)] on linux
  Type "help", "copyright", "credits" or "license()" for more information.
  >>> population_base = [100_000_000, 1_000_000_000, 8_000_000_000]
  >>> for population in population_base:
  ...     print('15s/day for',population, 'people equals:', round((15*population)/3600), 'man-hours/day')
  ... 
  ...     
  15s/day for 100000000 people equals: 416667 man-hours/day
  15s/day for 1000000000 people equals: 4166667 man-hours/day
  15s/day for 8000000000 people equals: 33333333 man-hours/day


Now compare that to the total productivity loss (using whatever marginal efficiency deflator you think is reasonable).

If you're trying to get shorter workdays, go for that.

If you're trying to get more open source labor, go for that.

Arguing that the best way to target the second is via the first seems tenuous at best.


I guess that means I'm not the only person to use a repl for calculations. Neat!

(Though this has evolved a bit for me, in order of tidiness/laziness : repl -> jupyter -> GPT+ data analysis)


From all the discussion here and previous it seems OSS is unsustainable.

People pay for software, notably Office, IntelliJ, OS, Adobe, video games, enterprise s/w and many more. For normal consumer products things are simple you pay some money for product and can have simple expectations that s/w will work. Every once a decade the direction a s/w takes major change, and you have to decide if you want to stay with it or move to something else.

Now with OSS both sides expectations have become implicit and ambiguous. In letter they come with no warranty but in spirit it does. No sane person would depend on database/compiler which can stop working or won't fix bugs without recourse. It may be OSS but I don't have time/skills to fix myself, so implicit understanding is that community at large will fix it.

Next is the issue of payment to the community. how much should be the payment, who should be paying and should be paid? No payment was discussed up-front, but it is expected implicitly. Should I review all s/w I use to understand the payment I should have been making. Maybe I should stick to only commercial s/w as expectation of payment is clear or maybe s/w being free but created by large corporates are ok as no payment is expected. Is making s/w in NodeJS / Python risky, as I don't know if community is paying for all the libraries I am using and how much I should be paying?


It’s important to set an example to avoid being dismissed as a hypocrite. This author should post the inventory of all the dependencies their projects use across the board along with how much the author contributes to each of them monthly.

That would absolutely get people off the fence and to start agreeing.


"Unsustainable" might not be the exact right word for it. I mean, it's software - if you can compile it, and run it, it's not like age will actively deteriorate it like a physical good. (Bit rot is definitely a concern, but far less of one than e.g. salt corrosion.)


My company uses lots of libraries from different sources. They are considering on allocating money for most of them. We'll start small but the idea is to keep funding those projects since we use them as part of our core products. We hope others step up too.


If you want to get paid maybe don't give away your software for free? This comes across as major sour grapes. "I made this free thing for people to use and they don't pay me for it!!" Ok, then maybe don't give it away?


Just close the issue section. Then you only have to review the PRs where CI is green.


Last time this was brought up someone said, well yeah it's a resume builder. And get a job with it, then work on it at work. That's why they hired you, you're the xxxx guy.


I support some open source software.

It's a bit annoying as from an accounting point of view I'd rather they just invoiced me for a service.


One person's passion is another person's chore.

Focus on your passion.

The success of OSS projects is a function of how many people are passionate about it.


I honestly do not get the Open Source movement.

> It is quite literally a free lunch at the expense of hard-working individuals.

Yes! This. That's the point.

I'm a Free software developer and that's why I give my code away: to solve someone's problems with software. I can do that. I'm not particularly good at most things, but when it comes to writing software I'm very capable. In other words, I am a "free lunch" generator.

To me the entire point of computers and software (where these intersect with economics) is to change the structure of the economic system itself to a more humane system (that works in harmony with the global ecology, but that's a tangent to my main point today.) "Let the robots do the work and we'll take their pay."

Science and technology have won the day. We have the knowledge and resources to take care of everybody on Earth without "disadvantaging anybody" (as Bucky Fuller liked to say.) You don't have to "earn a living" anymore. We won history.

Software is just the clearest, cleanest example of the general phenomenon of science and technology obviating the physical bounds that held us back until now.

Getting back to software development: technology should be deployed so that folks only have to work a few hours a week to pay for their living expenses (e.g. $300 per month should cover food, housing, clothing, health care, etc., and over time that number should decrease!)

In that milieu people can develop software and give it away without the extra constraints of having to make it profitable in and of itself.

This is the whole point of technology in general and computers and software in particular: change the structure of the economy so that we can all "live happily ever after".

(And get on with space exploration and mitigating climate change.)


Alternatively, the lack of a non-corporate sponsored source of health care and income in the US is unsustainable. :(


Do people donate more if they see that the app is developed by a lone-wolf developer rather than a team?


Are open source developers really motivated by money? Sometimes exposure is all they need


This is made even worse by ai companies recycling the code.


I'll tell you what so many tech bros tell artists upset about AI - you should be working for passion and love of the craft, instead of profit. Compensation only corrupts the dignity of the soul and results in terrible software, and programmers who only care about the paycheck.

Maybe you can find a second job, and focus on creating software as a hobby.


With eGames and other subscriber things taking off, could this be applied to come up with a better open source compensation model?


Linus Torvalds $50M net worth says otherwise. There are however very few "winners" and a lot of losers.


If he sold his OS like other US companies then his networth would be $50B not $50M.

You can argue that Linux can't reach that kind of successful if it is nonfree, but there were a lot of poorly written OS that sold millions.


Bad example. He also was part of a number of startups including Transmeta.


Open source and "give me money" are the antithesis of each other.


This is a complicated problem I see pop up on HN every once in a while, in different forms. I think there is neither an easy solution, nor a simple one.

Each culture is different, but many people now see 'free' and don't think of how that product is getting created.

For Open Source the problem is even worse. As a project becomes more popular there are more demands on a maintainer's time, which is in short supply for most good senior devs. They have a demanding job, they have a wife, they have children, they have other family, they have friends, they have their own self-learning. This doesn't count the lucky ones whose employers pay them to work on Open Source software. Once a FOSS project gets to a certain adoption level it becomes a supply & demand problem where the demand quickly outstrips the supply.

How do we fix this? Well, we can either reduce the demand (PRs, issues, etc on a single project) or increase the supply (hours of dev time).

One way of reducing the demand is to have many projects that do similar small things, splitting users across the ecosystem. The NodeJS NPM system is like that. I think that leads to problems with reliability, technology selection choices, and vulnerability finding/fixing. Then again, NodeJS is still going strong.

Increasing the supply from one person is hard. For most the supply spent on personal relationships (family, friends) should not change, except to go up. That leaves the supply spent on work. This is a hard problem too. Most devs work a minimum of a 40 hour week. The only possibilities are going freelance, so you can choose your own hours if you can financially justify it (many freelancers work more than a 40 hr week though), or going part-time (which is not an option for many). Let's say a senior engineer makes $160k salary (not looking at options, etc in this math). For him to go freelance he would need to cover family health insurance and life insurance, say $2000 per month, $24k total [1]. Taxes will be around $60k [2]. These are both much more than he'd pay working for a company. To get the same spending power freelance as he did at a company, he's going to need to make about 40% more (16% for FICA taxes, 24% for insurance), or around $200k. That's not doable from donations, for any other than a select few maybe.

What about around half? He can make $100k from freelancing, $104k from Open Source donations. For Patreon the average backer pledges $6 per month [3], or $1.50 per week. You'd also need to figure out what pledger rewards were. You would need around 1800 backers to do that. As a project rises in popularity you will also have an opportunity to get a co-maintainer or two who helps oversee PRs, etc. The pledges should be split among the co-maintainers, which means more pledges needed. The co-maintainers can also start to have some of their freelancing be consulting on using the project. JBoss is a great example of that, so are a number of other projects. When you get to enough consulting on it, with 2-4 other maintainers, you might save each other costs by incorporating as an S-Corp.

Ok, so if that works, why isn't everyone doing it?

There are a number of reasons.

First, security & stability. Some people need the stability, structure, and security that comes from working in a company. Freelancing is a lot of work, across a diverse set of skills, and there are no guarantees of a next paycheck. You might make $10k one month and $1k the next (an outlier, but it happens). So you have to be very budgeted, with a nice safety net in your account for dry spells.

Next, skill set & capabilities. Some people just are not good at marketing, or working with people. I think you cannot be successful in freelancing without having some skill at marketing and at working with people. I also think you can't really be successful as a software engineer without those skills either,but that's a different topic.

Finally, risk. I touched on this in the first point above, but it's worth touching on again. Freelancing is high risk. Your work could hit a dry spell. You could get sued (you did get liability insurance right?). Some people, or their family, find it unhealthy to have to deal with that level of risk.

Are there other solutions? Probably. Better ones? Possibly. Dev collectives, bounties, FOSS organization grants, FOSS organization patronage (Google Summer of Code is an example) are all other ideas that come to mind.

As always, I am a dev - I am neither a lawyer, nor an accountant, so do not take the above as legal or financial advice.

1. https://www.ramseysolutions.com/insurance/how-much-does-heal....

2. https://www.quora.com/If-a-professional-freelancer-were-to-m...

3. https://www.crowdcrux.com/patreon-statistics-and-demographic....


I agree, however, compensation in general is reaching a point where rational value calculations are fraying. I can't explain why an engineer, though well paid, is making .01% of the CEO's salary, nor can I explain why an engineer doing the same work but in the Philippines is making 40% of the salary of the one in the USA.

I was very inspired by "Walkaway" by Cory Doctorow. It involves a world where people detach themselves from "Default" (global capitalist society) by living in abandoned towns, building the tooling they need to re-establish a modern quality of life. He pulled a great deal on the open source movement in his speculations of how this might look. What I didn't realize at the time is it is essentially an anarchist proposition of community self-reliance. In the novel, there's no point in seeking compensation for your work, because your basic needs are already met by a share-and-share-alike society, and therefore everything you do fulfills either a very clear personal or community need (building a tractor, a house, software to manage a farm, a public spa, or repair schedules), or, is purely for pleasure.

My friend that's sticking it out in the USA is doing the "correct" path for an engineer: First gig in our hometown, transitioned to NYC, did a 4 year tour there saving a couple hundred K, house upstate, still working and saving for retirement but also farming ants and doing his other odd projects for his pleasure. In a recent conversation he mentioned frustration at the poor retirement opportunities for most of our generation. You gamble your life saving's on the stock market, or, do something that doesn't really benefit the world like flipping properties, if you can afford it. If your interest is self fulfillment, community fulfillment, and financial fulfillment as we grow older, that doesn't really exist, at least not in any combination that we've been able to figure out. He's thinking about some kind of ethical business venture, or maybe just a fun thing he can kick off that he can hire his non-engineering friends into like a cute little sandwich shop or something, but as he enters that world he's realizing all his competition is hyper-capitalized businesses or people that he can't possibly compete with if he doesn't do the same shit they're doing, such as filling their kitchens with undocumented immigrants. Basically, if he wants to do good and get paid for it, the opportunities just don't seem to be there.

So therefore, long term what I want to strive for as I build out open source software is actions that "break us out of the box." I and my like minded friends don't really think capitalism is going to cut it in terms of actually rewarding with money our efforts to do good in the world; after all, an investment banker makes more than a teacher and firefighter combined, and does functionally nothing useful. Therefore I'm interested in building things that free people from a financial burden. Every little financial burden I can free people from is a success. I love when I read stories about people building out little GPT programs that can automatically negotiate parking bills or whatever. Or scan your email to automatically apply for rebates and coupons. Or, outside of actual coding, helping people find out that their library has a streaming app they can use for free, so they don't have to pay netflix anymore. Or helping people turn their lawns into gardens, to reduce their food bills.

From a software standpoint, the "Awesome Selfhosted" project is very inspiring in this vein: https://github.com/awesome-selfhosted/awesome-selfhosted Lots of tools that many people pay for that you can instead deploy on your own and use for free in a way you control.

That's the kind of open source software I want to build. Trying to get paid to build FOSS is a distraction, instead I want to build things that will help people not have to pay for other stuff. I make plenty of money in my day job, I'm good on that front. Pipe dream, we do enough of it, and the question of "getting paid" becomes moot.

Even in this thread we can see the toxicity around trying to get paid to do good in the world. "What, you did something good for free and expected to get paid for it, what are you, an entitled moron?" vs "FOSS software is the backbone of your organization, if you don't pay for it, you are evil." I think it's just so frustrating how twisted up things are. Normally you get paid to do engineering, but if you build something genuinely useful for people, now you don't get paid, but somehow you're an asshole for asking to get paid, and also you're naive for thinking any organization would ever pay for something they don't have to pay for... what a mess. What a rats nest of competing values and accusations. It's not worth trying to fit what imo often inspires FOSS, namely "fixing a problem in our society," into the capitalist mode of thinking, "and getting rewarded for it." If you want to fix things in society, build FOSS, if you want to get rich, take contracts, charge your clients 200/hr for engineering time, put Indian engineers on it, and pay them 10/hr. There, now you're rich. So what?

Edit: on reflection I think basically our efforts to do good for people by writing foss will simply be exploited for profit by corporations, so better to walk into this understanding that, and for those that aren't happy with that state of affairs, try writing foss that can help other people escape these kinds of exploitation.


>> I can't explain why an engineer, though well paid, is making .01% of the CEO's salary, nor can I explain why an engineer doing the same work but in the Philippines is making 40% of the salary of the one in the USA.

That's economics 101 and not the problem of a particular profession


Fantastic post. Your logic is a perfectly hermetic circle.

I'm sure the OP can competently explain all of these things. What they can't do is justify them, or reconcile them with the principles that their society has instilled in them.


Sure but it makes it a lot harder to figure out how much someone "deserves" for writing a FOSS project.


It's really interesting to me how the vibes have shifted against open source in recent years. I remember when open source came out, it seemed like an implicit critique of proprietary software as stuffy and corporate. But proprietary software has an advantage: The devs get paid.

If you want to get paid for your work, why are you choosing to give it away for free? I'm not judging, I'm genuinely curious. Are there any open source boosters left, and if so how would they make the case for open source at this point?

Maybe what's needed is a "for-profit open source" license, where the code is free for anyone to read, but it's illegal to use for commercial purposes without paying. I'm guessing this approach is already being explored?


I do free open-source work because I want to reshape the world, and this is somewhere I have leverage. If I was paid to do the work, then I would have to deliver what the customer wants, which is not always aligned with how I see things.

It’s pure ego, but I hope it benefits the world too :)


Thanks for replying. Yeah that seems like a decent model -- it starts as a passion project, then acquires users, then the dev stops having as much fun and starts feeling a sense of responsibility.

One solution is to announce that you're abandoning the project and suggest that its users make a plan to fork it / take over maintenance. Instead of adding a social norm that open source devs should get paid, we could drop the norm that open source devs should feel obligated to maintain projects for free. Maybe every README could have info about the primary maintainers and how enthusiastic they think they're going to be about the project going forward, so people can make informed technology choices. That way no one complains about a bait and switch.

Another idea is for the dev to respond to issues on Github by saying things like "I can fix this if you pay $X"


Another approach might be for employers to allocate 20% of employee time to open-source work.

Benefits:

- recruit high quality developers

- up-skill existing developers

- devs will sometimes fix things that the company is using


>Maybe what's needed is a "for-profit open source" license, where the code is free for anyone to read, but it's illegal to use for commercial purposes without paying. I'm guessing this approach is already being explored?

Nonfree and proprietary licenses have always been an option. The problem is developers want the convenience that FOSS culture provides without actually making the sacrifice of putting end-user rights before their own profit. Coding (specifically web dev) has turned into a money train and FOSS devs want on board.

FOSS licensing is an ethical stance. That ownership of software, (nonfree) copyright and intellectual property is fundamentally immoral, and authorship doesn't grant you privilege over the code you write. And that stance has a cost. If developers want to get paid, get a job writing code and a paycheck, or use a nonfree license. Otherwise, stop being hypocritical. You chose this path.


>Are there any open source boosters left, and if so how would they make the case for open source at this point?

I consider the way I publish MIT projects to be mostly in good faith. I put it out there because I like having my name associated with useful implementations of things. If my code, worked on with my own hands, is spread via unattributed copy-pasting? Good. Even if I don't know about it, somewhere out there my code is powering something.

I started this mindset when I was a new grad, and to achieve a task I would first look at a bunch of different open-source projects to get a sense of how they were approaching the problem domain.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: