Hacker News new | past | comments | ask | show | jobs | submit login
Software Below the Poverty Line (staltz.com)
345 points by fold_left 6 months ago | hide | past | web | favorite | 231 comments



Electron maintainer here.

Most of the maintainers are being paid to maintain Electron full-time. I've worked in jobs before where you got to do "some open source during work hours", but in the case of Electron, most of our people are specifically paid to work on Electron.

Yes, absolutely, find and use more ways to fund Open Source, but describing Electron as a project below the poverty line is plain incorrect. Yes, we too need funding, but that description strikes me as inaccurate and thus problematic.

"Below the poverty line" means something, doesn't apply to Electron, and saying it because it sounds good trivializes a problem in a world where 1/7 children in the US live _actually_ below the poverty line.


As I shared with you on Twitter (1), I think the definitions of the terms might have been misleading. For instance, although the charts use the word "salary", in my blog post I defined what those terms meant:

> ...how much yearly revenue for a project goes to each “full-time equivalent” contributor. This is essentially their salary. Or, said better, this is how much their salary via donations would be if they were working exclusively on the open source project, without any complementary income. It is likely that a sizable amount of creators and maintainers work only part-time on their projects. Those that work full-time sometimes complement their income with savings or by living in a country with lower costs of living...

Later, when I specifically mention Electron, I say:

> This doesn’t mean the people working on those projects are poor, because in several cases the maintainers have jobs at companies that allow open source contributions. What it does mean, however, is that unless companies take an active role in supporting open source with significant funding, what’s left is a situation where most open source maintainers are severely underfunded.

In summary, this means that projects categorized in red or orange can be one of these cases:

- Maintainer is an employee earning fair salary, and nearly nothing (<10%) from donations: Electron et al

- Maintainer is independent, earns significantly (>50%) from donations: Sindre Sorhus (AVA), myself (Manyverse and Cycle.js), Paul Frazee (Beaker Browser) and others

- Maintainer is independent, earns entirely from donations: Titus (Unified) and others

The core message of the blog post still stands true, unless companies take a central role in sustaining open source (which is your case!), what's left is a situation of unfair compensation to open source maintainers.

[1]: https://twitter.com/andrestaltz/status/1139533257077338112


Does Electron have another revenue stream that isn't accounted for here? Are the full-time employees paid a wage above the poverty line? If so then yeah, this doesn't make sense.

But I think the sentiment isn't trivializing, that 1 child out of 7 might have a parent who works on one of these projects.


> Are the full-time employees paid a wage above the poverty line?

Yes, very much so. It's tech. We're all really, really lucky.


I really respect people who work in impressive tech jobs who can admit this.


I tell every entrepreneur that asks me for advice that the donation model for any business gets no more than 1-10% (depending on the industry) compared to a business model of selling commercial software. This is the difference between poverty and 6-figures. The open-source model is good for launching your own career, but you should avoid trying to make the career the open-source project itself.

The open-core model is a good alternative if you wish to be around open-source software. Or make your project de-facto standard and charge for consulting. Or, you can make an entirely commercial project that uses and contributes to open-source projects. That way, you are surrounded by open-source and can help them financially to add features you need.


Consider public-private licensing. Choose a license that requires sharing back, or limits to noncommercial use, and sell individual exceptions to that rule. https://indieopensource.com/public-private/indies


This, I think, is the key. The few projects I'm working on right now are not at the point where business logic would come into play, but all contributors are in agreement that they would support this model over all.

It allows the public to continue to use your work to collaborate and create better things, which is the point of open source, while allowing businesses (which should be able to afford to license a software product) to still pitch in and generate a profit. Both of these will attract talent and interest and allow collaborators to prosper.


This approach is as old as the hills. From RMS' Copyleft: Pragmatic Idealism:

> Many years ago, a friend of mine was asked to rerelease a copylefted program under noncopyleft terms, and he responded more or less like this: > > > "Sometimes I work on free software, and sometimes I work on proprietary software---but when I work on proprietary software, I expect to get paid." > > He was willing to share his work with a community that shares software, but saw no reason to give a handout to a business making products that would be off-limits to our community. His goal was different from mine, but he decided that the GNU GPL was useful for his goal too.

The approach is far more common in other kinds of licensed, creative work. Creative Commons' choice to standardized noncommercial license terms helped make commercial-noncommercial licensing familiar in photography, illustration, music, and so on.

The model has gone by a few names. Those researching should search on "selling exceptions" and "dual licensing", too.

I'm doing what I can to popularize through License Zero (https://licensezero.com).


Some of the times when people would repeat things RMS said about sustaining Free Software work by making money from consulting on the side, this seemed misleading.

I understand RMS was at times the beneficiary of people who were sympathetic to his mission. For example, students said at one point he was living in a university office that someone arranged to be allocated to him.

Personal sacrifices like this, towards his principles, were to RMS's credit, but the suggestion that one could just pick up consulting work on the side seemed misleading. RMS was one of the better programmers, and famous, and even he didn't seem to pull off that sustainability reliably.


RMS originally made money for FSF by selling copies of Emacs and other programs on tape. That was back when the first person to buy on physical media couldn't just slap on the Internet.


That's before my time, and I think some of the stuff I heard about was from when most people were getting GNU software via FTP, and later. (Though FSF sold paper books.)


Walnut Creek CDs were quite common.

I did buy a bunch of them on regular basis.


Just remember: a license which limits the use (even commercial use) of software is not a free software/open source license.

People may use whatever license they wish, but it's important to be clear about what is (and is not) FOSS.


That is untrue.

The term "free software" was effectively coined by RMS & The Free Software Foundation. It is used explicitly when referring to copyleft licenses, which restrict certain uses of the licensed software in order to protect user freedoms. You can argue that other people use the term in other ways, but the most commonly accepted definition is the one used by the FSF.

The term "open source" is somewhat vague. Software that is merely "open source" is not necessarily licensed in a way that allows redistribution/modification. The only thing guaranteed about "open source" software is that you can read the source.


>The only thing guaranteed about "open source" software is that you can read the source.

'Open Source' was/is a rebranding of the term 'Free Software' to make it easier to sell to suits. Eric Raymond has said as much about his invention of the phrase. The idea that it's just about "being able to read the source" is wrong. It's not vague at all, you just didn't do your research.

https://opensource.org/osd-annotated


Quibble: ESR did not coin (nor did he claim to coin) open source, that honor goes to Christine Peterson.

Otherwise, I concur.


No, open source is a different term representing a different set of ideals. Here's an essay explaining the difference and the cases where open source software is not free software: https://www.gnu.org/philosophy/open-source-misses-the-point....


The only people looking to redefine (yes, redefine, there is no supposed ongoing dispute or vagueness about what it means to be FLOSS software) are those looking to push their own agenda, its not an honest conversation and never has been.


There is heaps of vagueness in both the Open Source Definition and Free Software Definition, especially about copyleft. See, e.g.:

https://writing.kemitchell.com/2018/11/05/OSD-Copyleft-Regul...

https://blog.licensezero.com/2018/09/14/free-to-take-freedom...

There are heaps of disputes about whether licenses qualify. Check OSI's license-review list, or Twitter, or, frankly, HN.


What is and isn't FOSS is not clear and never has been, when it comes to copyleft. We could rewrite any copyleft license as a limit on use. Don't use this MPL library to build a closed, competing fork. Don't use this GPL program to build a larger, closed program. Don't use this AGPL framework to build a closed web service.


> What is and isn't FOSS is not clear and never has been, when it comes to copyleft.

OSI and FSF would disagree.

> We could rewrite any copyleft license as a limit on use.

What is the purpose of your argument? What are you trying to achieve? Do you want a Lobjan specification of FOSS? There may be difficult cases around the edges of the definition of FOSS, but restrictions on commercial use are not one of them.


OSI itself hosts the best evidence that its Open Source Definition isn't clear: its license-review mailing list archives. Have a look sometime!

As for FSF, their process for considering licenses is a black box. We have "What is Free Software?", published largely in response to the creation of the Open Source Initiative. But it's no more a technical specification than OSD is.

I never claimed that restrictions on commercial use are "open" or "free", or that any particular license that does so is "open" or "free". I have and do claim that neither OSI nor FSF provides any clear, complete guidance on what "open" or "free" copyleft can and cannot do. Consensus within the relatively small groups of folks actively engaged with those institutions is founded in good-sounding generalities, not any rigorous definition.


> never claimed that restrictions on commercial use are "open" or "free", or that any particular license that does so is "open" or "free".

There was enough ambiguity in your statement on public-private licensing that I felt the need to make the clarification. My intention was a much a "public service announcement" as anything.

> I have and do claim that neither OSI nor FSF provides any clear, complete guidance on what "open" or "free" copyleft can and cannot do. Consensus within the relatively small groups of folks actively engaged with those institutions is founded in good-sounding generalities, not any rigorous definition.

A fair contention, though I might disagree. However, that does not change the fact that non-commercial licenses are not FLOSS. Both the OSI and FSF have made that patently clear.

Your initial advice was fine, I just want to make sure that people who follow your advice don't confuse non-commercial source-available licenses with FLOSS.


As an author of some niche open source, I've tried simple licensing like that (e.g., "GPL, or ask me about other license"), but the software had only a few commercial users that I know of, and I never made a penny that way.

You need commercial users who want to use your stuff enough, and the GPL/LGPL/whatever license won't work for them, such that it will get pushed up to someone who'll follow through and negotiate a license.

(You also need it to not quietly be used by parties ignoring the license, like has happened many times with Linux and certain GNU-ish libraries that would be expensive to reimplement.)


I've advised a number of clients away from public-private licensing toward simply approaching their clientele directly and pitching traditional software deals. Some who manage to sell licenses that way choose to release their work under copyleft or restricted terms, after the fact.

The tell is a known, small, approachable target market. Especially when the developer already has positive relationships with important would-be customers.


A very good example on this is Vue.js. While it is very popular, a quick look at the donation amounts on Evan's patreon page gives a good reality check for those who are dreaming of living off donations.


I'm not sure what you're implying. He makes $20k a month from Patreon. That is an extremely comfortable amount of income.


Vue.js is one of the most used JavaScript frameworks out there.

If this was a commercial project, his income would be magnitudes higher.

Yes, $20k a month is comfortable. But is it appropriate given the popularity of Vue and considering how many organizations profit from it?

Now, if you scale this down to a framework that has half or a quarter of that popularity. When do you reach the point where it isn't comfortable at all anymore? And does that still seem appropriate?


> If this was a commercial project, his income would be magnitudes higher.

If it was a commercial project I imagine there would likely need to be other staff involved, and adoption would be lesser. Whether that ends up being more or less money for him in specific in the end (or whether the project/company would survive) is not without question, in my mind.


The argument you make is quite popular. I'd say adoption would only be lower because there's competition that's also MIT licensed. And if that wasn't there, every framework author would be better off (e.g. in a public-private licensing scenario).

It will be hard to find evidence for both sides I guess. So it boils down to being kind of a gamble: adoption or fair compensation — you can't have both.

This looks like a race to the bottom to me, which is what the data presented in the article seems to support.


> If this was a commercial project, his income would be magnitudes higher.

Not necessarily. I would expect part of the reason it's one of the most used is because it's non-commercial.

I do agree it's not fair compensation, though.


If this were a commercial product, he owned the company and wasn’t an employee, and he could still get the widespread adoption that open source can bring.

I might suggest for a company to use VueJS since it is open source and donate but I’m never going to suggest that a company bases its product on Telerik components.


How do we know that $20k/month is all that he's making? It sounds like that's just one of his income streams.


That's not all, as he's pulling revenue from multiple sources with Patreon being only one of them.Even with extremely conservative estimates he should be making at least $500K. However the point of my previous post was that one needs to take his project to stratosphere for it to generate anything substantial using this model.


Is Patreon his only source of income?

on edit: I should have probably asked one the child comments, but this is ok here as well.


His donation amount is not bad but if you think about it like a salary; it's kind of low considering how well known he is in the industry.


> how well known he is in the industry.

That is also part of his compensation.


But you can’t eat goodwill.


You can eat the food that is bought with the fees that can be easily gained from speaking and consulting.


Or, phrased differently, from working another job.


Or, phrased differently, he's already doing whatever he's doing, and $20k/month is just one income stream.

I'm a developer who's presented at conferences. I don't consider that "another" job, but rather, part of this job. And I don't have any monthly donation income coming in at all.


A job you could only get by having the reputation in the first place.


That's hardly another job. It's completely based on Vue. I know if I needed an expert on it and he was available that he'd probably be my first choice.


Is this advice based solely on your own experience (I see that you are an open source creator, thank you), or are basing this advice on actual data that you have collected/analyzed? If you have actual data would you consider sharing it?


Some products wouldn't exist without open source. There are many sides to this coin.


I could convert my website to a paid model, but as you mentioned I use it for growing my career.

But really, I just wanted to help people.

Here is my great question, can I help more, if I charge money?


Absolutely. Imagine how much more you can help if you had a team helping to build and grow your website. If you want, don't take a dime for yourself and instead invest it all into growing your business and helping others. If you're delivering something that gives real value to someone's life, and it's priced correctly, they will pay for it.


But what about the people you won't be helping any more if it becomes commercial? That could vary wildly depending on the context.


Can you help anyone if you're homeless on the street?

At some point there is a trade off to any number of choices. I choose to keep active employment, and open what I can, when I can. Mostly utilities that I wrote for work that aren't core functionality that it makes sense to separate out anyway. Heaven help me if something got too popular and people wanted a support model.


>Here is my great question, can I help more, if I charge money?

It depends on which dimension of "help more" you want to affect.

I looked at your website "efficiencyiseverything.com" and here's how I would break it down: "more people" vs "more features"...

- if you want to help more people, it's better to keep it free because no subscription/paywall payments means the biggest audience (including those without discretionary income) can be helped by your information

- if you want to help less people but add more features, you should charge money. The paying audience will always be less than a non-paying one but the ones who do monetarily support you can be assisted with new website features that requires revenue to develop

(One can sort of try to get the best of both of the above scenarios by keeping it free with voluntary donations but to me, that just simplifies down to "free" since the percentage of donators will be very small.)


>if you want to help less people but add more features, you should charge money

I would add one more thing. It would help less people in short-term, but in long-term, it might actually end up helping more people, as those features have the potential to attract way more people than you would have gotten without those features but for free.


Thank you for these ideas. I think I will keep things free.

I have a day job that Pays great.

I need to find a way to incorporate premium features.


You would be able to afford helping more if you charge money, now you're your boss, you charge based on what you believe and know you need to survive and based on periods where you aren't consulting.


I find the author’s view puzzling. For open source projects that have the goal to become profitable and have full-time staff working on them, there are plenty that make this happen. For example, Ghost (the blog engine) via providing sourcing. RedHat similarly provided services and consulting on top of their open source contributions. Databricks, founded by the creators of Spark, is a unicorn.

The author is looking at the wrong type of metric. Expecting that every open source project on Github will get donations to pay each contributor a full-time salary is nonsense.

Also, on top of the value add services profitability route, the article does not take into account how many companies have full time employees contribute to open source as part of their working hours - a very tangible open source investment. While the author asks for companies to donate 0.5% or more of their profits to open source projects, I work at an unprofitable unicorn (Uber) which is a heavy contributor to open source itself and my team contributes to open source as part of our work: both to other projects, as well as open sourcing tools and improvements we built.

The same can be said for some of the most popular open source projects. Angular? Originally by Google engineers, on Google company time. Tensorflow? Also Google. React? Built by Facebook. Atom? By Github. And the list continues with many-many projects.


>> The same can be said for some of the most popular open source projects. Angular? Originally by Google engineers, on Google company time. Tensorflow? Also Google. React? Built by Facebook. Atom? By Github. And the list continues with many-many projects.

It's not a coincidence that most popular open source projects come from big corporations. Their popularity has more to do with capital and social networks than actual merit. Also, I'm highly skeptical of open source projects which come out of corporations; their primary goal is not to help people, it's to gain mind-share and control.

There is not an ounce of altruism in corporations.


To follow up on your point, this is the real reason FAANG write open source software https://www.gwern.net/Complement


Open source software produced by consortiums of corporations is sort of a way to engage in anti competitive cooperation without running afoul of anti trust laws.


Unpopular opinion: this is absolute non-sense. If you want to create a commercial organization to maintain a project, by all means go ahead, but the idea that all open-source work should be paid for in equal terms is not healthy in the long term.

The community aspect used to be the most enjoyable part of open-source, and I gladly donated (a lot of) my own time. It’s about people coming together around a common need - if there’s enough demand more people will join in. I loathe the current state of marketing/funding/clout based OSS where projects become institutions of their own and break the natural attention balance.


I find that opinion, is not so much unpopular rather it might be that it arises from approaching the the question with a different set of parameters.

I am one of those people who write software for fun. I'm guessing I'm wired to get a dopamine rush from solving an interesting programming challenge the same way that someone doing the NY Times crossword puzzle is when they get all the words. Nobody claims that someone who spends hours doing crossword puzzles over the year is an underpaid crossword puzzle solver.

So when people have do things for themselves, perhaps their compensation is in the doing.

But when someone else decides to use some open source software, they are in a different place. They are using it as a tool that gives them value. Using our crossword solving problem; the person who gets a copy of the puzzle solver's answers and just fills in the squares is a user not a developer.

This is where the open source contract breaks down, because you can get user's who file issues to be fixed but supply no money or manpower to fix them. And the people who are writing the software because they enjoy writing software, may have no interest in your particular interest, it might bring them no joy at all to work on it, so they don't.

And in that gap, you get CVEs where an issue results in security problem for the tool user, but you don't have anyone able (or perhaps willing) to stop what ever they are doing and work on it. Could you imagine a person demanding someone figure out the word for 18 down "right now" because their other project needed that work to continue?

I would be interested in seeing an open source license that made the software free to use for anyone who contributed at least one fix or one feature to the code each year, but cost $10,000/year to license to use if you chose not to contribute any fixes or features. I don't think you need to restrict it to features or fixes that eventually get integrated just contributed and could be integrated (pass all CI/CD requirements). The reason there is the user would end up having to pay a software developer, perhaps part time, to come up with those features/fixes and presumably that would cost more than the $10,000/year.

My point is that without a way to tie the economic value of using the software back into its development cost (in order to pay people to do the grunge work that often nobody wants to do) you end up with imbalanced value equations like the ones we have today where you can't charge for the source code to people who just want to exploit it and add value in their own products that they keep.


> you can get user's who file issues to be fixed but supply no money or manpower to fix them

And then maintainer responds, "not on my roadmap, but patch would be welcome".

> And in that gap, you get CVEs where an issue results in security problem for the tool user, but you don't have anyone able (or perhaps willing) to stop what ever they are doing and work on it.

About time for idle users to step up and invest into their own security, right?

> free to use for anyone who contributed at least one fix or one feature

Sure, screw software freedoms, let's build unenforceable licenses with perverse incentives, driving NIH behaviour and contributions for sake of the fact of the contribution.

Free software is doing fine (and this gets better as mankind gets wealthier), thank you. Please don't contemplate force-feeding it.


> Free software is doing fine (and this gets better as mankind gets wealthier), thank you. Please don't contemplate force-feeding it.

Respectfully, if you read the linked article here, or the stories of people who maintain key infrastructure going broke[1], those pieces conclude exactly the opposite. They conclude that "free software" is not doing fine at all. Rather free software not benefiting at all from the wealth of the corporations exploiting it to their bottom line.

[1] https://www.propublica.org/article/the-worlds-email-encrypti...


There are other people contributing lots to GnuPG and alternatives. GnuPG development receives thousands of euro in donations every month. Werner also seems to run a commercial company around GnuPG, hope it is doing well. Doesn't seem as tragic as "The World's Email Encryption Software Relies on One Guy, Who is Going Broke", did i miss something?

FOSS authors shouldn't tie their destiny to a project they like to work on. It quickly gets ugly, one example being Eric Raymond, who took the stance that he will work on whatever he feels like, "because it has to be me who is doing it", dismissing loads of people saying "get a job and stop punishing yourself and your family". But still his supporters back him to some extent via Patreon.

You can follow your passion, but who's to blame if you don't maintain the balance? If you have a kid to raise, but you'd rather hack on free software all the time instead, are you eligible for free childminders and nursery just because?

Can you be doing whatever you feel like, have no obligations to anyone, and expect to have a decent living?


Ok, I can understand your argument, which if I restate it is this; "There are free software projects that are explicitly set up to support the developers, so the burden is on the developer to set up such a system, not on the users to find a way to support the developers." Would you agree with that restatement? Did I understand you correctly?

Where I am is in an interesting subsection of the entire solution space of "free software". Consider your statement:

> Can you be doing whatever you feel like, have no obligations to anyone, and expect to have a decent living?

On the surface, the answer to that question is no. Because of the expectations aspect. But phrase it a bit differently and we get to where I am;

"Can you be doing whatever you feel like, and one or more companies are making millions in revenue based on products made possible by what you are working on, and expect to have a decent living?"


I completely don't understand what you said about burden on developers to set up some system.

> "Can you be doing whatever you feel like, and one or more companies are making millions in revenue based on products made possible by what you are working on, and expect to have a decent living?"

Still no.

There are few good reasons to contribute to open source, and they are nothing about profits other users make, because the process and the product are rewarding to the contributor.

Now there are some bad reasons to contribute to open source, where the motivation is perverse, the situation looks distastrous, and only these cases would take advantage from any such policing, subsidizing, taxing, wealth redistribution.

Does that person do the work to use the product themselves? Then such external factors don't matter, the person extracts the value they intended to have.

Does that person do the work to meet interesting challenges, mess with smart people, and have fun? Obviously it's nothing about getting money from other users.

Does that person do the work to promote themselves in careers? Other users matter only as big or numerous names, not as revenue.

Does that person do the work with the only outcome being the profit for companies which the person expects to pay back, while putting on work under the license which does not require users to pay at all?

Or, in addition to that, they bring a FOSS product to the market, profit from providing value-add services to that, but get broke because someone else starts to provide similar value-add services with their product, all being legal?

Your thoughts are completely about these people, and these people have really perverse motives from the outset.


Okay, I see where you are going with that.

If I read you correctly, you feel strictly that when someone contributes to open source their reward is that the product/feature works for them. There is no other consideration expected or needed. Is that correct?

Where we might differ is that I have observed that people contributing to open source feel a sense of pride or "ownership" over the work they have contributed.

Further, when someone who has not been part of the community, or contributed to it in any meaningful way, uses that work to make themselves and perhaps people that work for them wealthy, I have observed that the people who feel ownership feel a certain level of "unfairness" if you will.

In a strict libertarian point of view there was never any sort of economic contract to share any wealth created by a thing with the people who created and maintained that thing. As such the people who created it are without recourse and should be happy with the satisfaction they got from creating and maintaining it in the first place. And that was "their choice" that they made.

If that is what you're saying, I don't find the feelings these people have to be "perverse" (which by definition would make them abnormal). I am not arguing that the people start out with a motivation to "make money on their work", I was discussing the situation that the original author notes which is that sometimes a little gizmo you make is useful to a lot of people, and so it gets very widely utilized. The number of users creates a tremendous maintenance burden which is unfunded. That maintenance is, in my opinion, a value-add service which isn't being compensated (or is being compensated at a below poverty level according to our author).


>you can get user's who file issues to be fixed but supply no money or manpower to fix them

A model I've seen that I'm optimistic of is assigning bounties to tickets. I've seen two flavors of this:

A. Users put money on tickets. Maybe three people put $25 dollars each on a ticket, so it's now worth $75 to resolve. Someone comes along and gets a pull request merged that solves the ticket. They get the money that's on the ticket.

B. Users contribute to an overall project budget (perhaps through something like Patreon) and a project lead assigns the money to the tickets that he wants to entice people to resolve.


>I would be interested in seeing an open source license that made the software free to use for anyone who contributed at least one fix or one feature to the code each year, but cost $10,000/year to license to use if you chose not to contribute any fixes or features. //

Any fix? I mean you can get a fix for something on Fiverr, I expect, but that might make more work for a project than it usefully resolves.

Personally I'm not a programmer, I've sent a couple of pull requests at most, but I do share stuff that I do - like I add places to OSM, upload "art" to OCAL [though it's down at the moment, worryingly], answer question on SE network sites and sometimes on Launchpad, report bugs and test other's bugs. Basically I do my best to be a contributing part of the FLOSS community.

I guess I see programmers create the many FLOSS apps I use as something like being a Scout leader (which is a volunteer position that costs you money), they do it to make a positive and lasting contribution for society with no expectation of financial gain. Though I realise, many do work on FLOSS for wages, just as many people work in outward bounds or as teachers, or what-have-you.


I see a lot of projects that I want to contribute to but I have absolutely no idea what needs to be contributed. Recently I created an issue for a tool that creates a template for a project. The tool allows you to enter an upper case folder name but if you start the project it will fail. So is the bug that you are allowed to enter upper case names or is the bug that the project fails to start? The fix probably wouldn't need to change more than a single line of code. I have no way to know that so instead of writing a misguided pull request I just created an issue instead.

Contributing to a project is incredibly difficult if you are an outsider.


> is not healthy in the long term.

Healthy for whom? Creator of Vue.js pulls in like 240k. Every open source contributor of any sort of popular project should be getting at least that much through various deals or pull the plug. Hold your software hostage, get freeloaders to pay a pittance for it. Ridiculous that so many billion dollar companies use these things and feel no obligation to sustain their development and have a mechanism set in place to do that automatically or as a part of due course of using that software.


Projects can do this already. It's the reason we have licenses. The problem are people want to license under MIT, but want more than just recognition.

If you want to get paid, use the GPL, and offer dual licensing. It's that easy.

Oh, it's not "that" easy? So you are really just using MIT as a marketing tool until you get large enough where you can pull the rug out from under everyone and start demanding things?

The problem isn't open source. The problem is the expectation that the MIT license means more than it does. You got what you asked for.


...should be getting at least that much through various deals or pull the plug. Hold your software hostage, get freeloaders to pay a pittance for it.

Funny, but this was almost exactly the unspoken (and actual) ethos of the Sales department dominated old school software company founded in the late 60's I used to work for.


Whoa. I was going to comment, but now…

I'm Chris from Airwindows. I'm patreon-backed and make upwards of fourteen HUNDRED dollars a month to serve a specialty market, audio plugins, that is heavily burdened by selfish devs and burdensome DRM strategies. Some of these companies are maybe million dollar companies but many are relatively small fry who still believe they 'should' get 240k (as if! This is still the music business! Or you could say that nothing in the music business is actually popular, therefore none of these can count as popular projects were they OSS)

I license by MIT license. My pitch regarding that is that I require credit, and nothing else. From my point of view, in my business (again, the music business) since long before I was born, the only people who get to be 'popular' are those who sign off on horribly exploitative contracts and get abused just like the OSS developers people are talking about. I assume it'll be the same with me so I allow 'exploitation' on the grounds that I generate enough goodwill to slap back at anyone who's found to be ripping my stuff without credit or shout-out. It's my problem to turn that into revenue.

I can easily believe the '1% to 10% of what you'd make commercially' line. I'm seeing more like 20-25% of what I would make commercially, but if you are an entrepreneur you must consider cashflow. The commercial thing is bursty: feast or famine, and it drives you in perverse directions, makes you play to your impression of what will be the most popular thing.

If you market yourself as an OSS dev free to do anything creative regardless of market pressures, that's its own demographic. It's working okay for me, because I do not have to pay Silicon Valley housing costs, or employees. Like Robert Fripp, I am a 'small, independent, mobile and intelligent unit'.

Why?

You said freeloaders. That angers me. I have a different name. I call them 'musicians'. Often they make the musics and genres I personally like. They also have to eat. I am able to provide them with tools that become their resources. I'd do more if I could: working on it.

If you aren't living on under $1500 a month you have no business calling a sum of money a 'pittance', and in no case do you get to tell me to hold my software hostage. (so I won't. No hard feelings)

You appear to be talking from a 'capital maximization' position, and from that angle all you say checks out. I am talking from a 'providing freedom' position, from which the actions of companies mean diddly-squat. I am there because should they license my stuff (some is trivially simple, some is quite significant) they will take my musicians and hold them hostage and demand a 'pittance', or better yet they'll demand 'a lot' simply because they can.

My musicians (or at least many of the worthy ones) are starving broke, because art does not make money. OSS is a way for me to make some money in a context people understand while giving these people not only tools, but the RIGHT to own, use, redesign these tools. What I give can't be taken away.

Won't trade that for money.

If that is hard to understand ask RMS. (ironically… since I'm using MIT and not GPL. But he would understand, plus people can take my stuff and extend and GPL it if they like. I could switch to GPL at ANY point, if I wanted)


Coming from ex-USSR country, I really don't get people who shake their fists saying that somebody is not fairly compensated, and deserves more, and somebody (rich businesses and enemies of nation obviously) should pay for it. Venezuela waits for you, evil capitalists are defeated here, and govt takes care of everyone.

> Every open source contributor of any sort of popular project should be getting at least that much through various deals

If they don't have such deals, who is to blame? Users who are busy with their life, take a lot of things for granted and don't think much about thousands of FOSS libraries and apps they use every day? Government which doesn't subsidize FOSS contributors? Or maybe contributors themselves who are sloppy at selling themselves and getting deals?

> Ridiculous that so many billion dollar companies use these things and feel no obligation

Maybe exactly because FOSS is about terms which allow such use, and enable companies to build business models on that?


Maybe exactly because FOSS is about terms which allow such use, and enable companies to build business models on that?

Sure, but if such a business takes off and is awash in money then the owners should help to water the tree. Maybe that means writing a check once a year (boo hoo, goodbye money uwu) or contributing some business skill/innovation so that developers or artists can concentrate on their professional discipline rather than having to gain a load of business skills that they may not be temperamentally or intellectually suited for. Why isn't it as easy to monetize as to share a repo?


I suggested a simple solution for the problem. Ask users to meet a certain fund raising goal and if they don't come up with it, either stop working on the project, or pull it entirely and let them worry about it. This is a capitalist approach to the problem of capitalists exploiting communists. Better approach is probably not license your stuff under exploitative licenses and put clauses in there for bigger companies using your work.


The problem here is, nothing you can possibly do is worth more than money to a dedicated capitalist who already has tons of money.

You can do stuff they exploit, or not. Doesn't change the relative size of the pool of money from your true userbase (likely much smaller), and nothing you do can force the capitalist to buy into your code at a less-exploitative license.

They can and will just pass. And you can pressure your users in a wide number of ways: they are the same dark patterns used by proprietary, totally-closed software. You can become that to get paid… or, more accurately, you can become that, try to squeeze blood from a stone, and find out whether you can torture your users into providing you with the level of luxury you see fit.

This is not the motivation of Free Software, and is barely the motivation of Open Source. Might as well just be proprietary and be done with it. All this works on many levels and money/compensation is only one of the levels.


What is the problem you are talking about? Who exactly has that problem? What are "exploitative licenses"?

If money paid by licensees is the primary driving motivation for development, then FOSS is completely wrong type of licenses for this. This is called commercial development.


I expect creators of big libraries to make even more than $20K a month because of speaking gigs etc. But specifically why did you list $240K for Vue.js creator. Are they making money in some specific way?


>why did you list $240K for Vue.js creator

I presume gp's calculation was $19,394 multiplied by 12 months equals $232,728. Monthly amount came from:

https://www.patreon.com/evanyou


The most interesting part (IMHO) of the post addressed Github, a multi-billion dollar acquisition on the backs of the open source contributors whose primary beneficiaries never seemed to give even a small portion of the profits back to the community.

If there are other people figuring out how to exploit the tendencies of open source developers, certainly it's fair to discuss how said developers can see a bit of those resources. Especially when the big winners aren't even considering giving back in a serious manner.


I find the Criticism of Github and Microsoft unwarranted; They contribute significantly to both the open source and startup business ecosystems;

Importantly; Free Public Github repositories; these aren't free to provide, they require storage and bandwidth. And not just for major projects, but any project. @ 28 million open source repositories, if you attribute that to the equivalent of $1/year; that is 10x what the author is calling for

Microsoft does a lot more too, whether it's "protecting" patents for Linux, or providing Visual Studio, Atom, sponsoring meetups and hackathons, and much more.

Disclaimer; Guest of Azure Incubation Week, had Microsoft sponsor BarCamps, and hackathons; And I host open source projects on github for free.


I completely agree with you. People should look at companies like Telmex (Mexican telecom company, owned by 3rd richest person in the world). They surely use a HUGE amount of Open Source and contribute zilch back.

In contrast, Github and Microsoft are huge contributors.


> "The most interesting part (IMHO) of the post addressed Github, a multi-billion dollar acquisition on the backs of the open source contributors whose primary beneficiaries never seemed to give even a small portion of the profits back to the community."

There I was, thinking that hosting (through high availability, and great tooling) the repositories for free was Github's way of "giving back to the community". But apparently that's somehow not enough?


That might have been a credible argument if the github platform were open source (as is the case with gitlab), but in absence of that it's fair to compare to similar free offerings like sourceforge and bitbucket.

Providing free hosting didn't win sourceforge or bitbucket or any of the other firms a multibillion dollar payout. What did was capturing the mindshare of open source developers and hosting high-profile projects. Ultimately, the value is derived from the fact that "everyone is using it" and the ecosystem built around it (because everyone is using it).


Honestly, AGPL license your projects: That will prevent obnoxious companies from taking your work without giving back.

If you deliberately pick a BSD-style license, then you don't get to complain about 'big winners' not cutting you a slice. They're doing exactly what you told them they could do.


People pick a BSD-style license because that's what they are told to do by VC-backed startups looking for a return. It's used as a marketing tool. The GPL and associated licenses are given a bad rap.

And now we have people complaining about big companies literally agreeing to the terms set out by little projects and someone they are being unfair?

The thing about AGPL is that you can still dual-license if you want. AGPL by default, and allow companies to purchase a non-AGPL version if you want.


Ah, an issue close to my heart. I work full-time on open source, making my money from three places:

1. Donations directly via Patreon, Liberapay, and fosspay[0]

2. Paid subscriptions on Sourcehut [1]

3. Part-time consulting gigs [2]

[0] https://drewdevault.com/donate

[1] https://lists.sr.ht/~sircmpwn/sr.ht-discuss/%3C2019042616072...

[2] https://drewdevault.com/consulting (numbers undisclosed)

With 1 & 2 alone, I'd be making about $34,000. Not poverse, but I am preparing to move into a 200 sq ft apartment in a couple of months. Consulting gigs help a lot - working on these anywhere from 0-24 hours a week brings me up to a comfortable standard of living.

I think what helps is that I'm a person, not a project. By working on lots of different projects, I get a lot of different people interested in paying for my work. The income from any of my ventures alone would not pay me a livable wage.

I've put a lot of thought into how to make money from FOSS, if anyone has questions or wants to send me their thoughts, I'm listening.


Question: do you see your income being suitable to live a decent lifestyle in the USA when supporting a family(1-2 kids) - paying for their healthcare insurance, other misc bills?

Rationale: if a career line can't sustain supporting a family, I usually think it's a gigantic waste of time (as a a full-time career) for the average person (who will want to have a family and pay for their medical care).


Maybe? It depends on how well Sourcehut does. Or, if I focused on consulting, I could probably make a very good living. If I were able to secure full-time contracts (i.e. 40 hours a week) at my usual consulting rates, I would be a wealthy man.

However, at the moment raising a family isn't a goal I have in mind. And I wouldn't characterize a desire to have kids as "average" - the birth rate is in freefall in the entire developed world and fewer people are planning on having children today than at any other point in history.


Normal people already can't have a family or pay for medical care. I can't fault anyone for wanting to code open source in order to barely survive, versus working several precariat jobs to survive and having no time to think.

My biggest luxury isn't money, but time and freedom from commercial pressures on my work. That's a quality-of-life issue making my subsistence WAY better than I'd experience working other subsistence jobs.


> If anyone has questions or wants to send me their thoughts, I'm listening.

Ask a company that's using your libraries heavily to hire you full-time and have you do internal consulting for them while still working on the project, mostly. That path comes with its own pitfalls, though.


That is the nature of most of my consulting work (it's generally related to wlroots or Wayland in general). But it doesn't work for any of my end-user software, makes it hard to work on several unrelated projects like I do, and sets up an unhealthy power dynamic that makes you subsurvient to authorities who care more about a bottom line than the project (see Redis for an example of this gone wrong). Those pitfalls you mentioned are numerous and difficult pills to swallow, too.


Care to say more about the Redis case? I haven't followed it carefully enough to make sense of their organizational trajectory.


RedisLabs switched a bunch of their software to nonfree licenses and antirez can't really do anything about it. No matter what he says, I don't think he's in a position (i.e. financially) to oppose that decision by RedisLabs, even though it's clearly against the interests of the open source project.


Sorry but this is absolutely inaccurate. Redis Labs switched the license of a set of modules I never developed a single line of, so it was completely their work I never took part into. The Redis codebase that I and the community developed in the latest 10 years is, probably, one of the last few examples of popular codebases yet under a BSD license. It sounds quite natural that I don't have the right to say Redis Labs what to do with the code they created around Redis itself. I expected the power to say what to do with the codebase I was working on, the Redis core, and indeed it is yet BSD.


Expected this comment. That's why I wrote:

>No matter what [antirez] says, [...]


Yep but it is important to have arguments. I'll show mine, and then it's your turn to convince others. So this is the timeline:

- I start the Redis project, BSD.

- I get sponsors.

- Finally the sponsor becomes Redis Labs.

- I continue to develop Redis with my private roadmap, still BSD.

- Redis Labs creates modules and other forks with enhanced capabilities, that were mostly out of the scope of the original project.

- Redis Labs changes the license of such add-ons to a proprietary one.

- The project on Github that everybody is participating to, and the only one I continue to develop, remains BSD.

Given the above, it's up to you to tell exactly what went wrong with Redis. If you believe for the story to be right that I had to force Redis Labs to license their code in a specific way, I think your reasoning is odd.


I'm not going to let this get derailed into a public fight with you about this. Take it to email if you want: sir@cmpwn.com.


I find the author's attitude maddening. People writing open-source software are not being exploited. People writing open-source software have alternatives. They can simply stop writing open-source software.

It does a disservice to the millions of people on the planet who do not have alternatives, and who are truly being exploited.


Author also comes from perspective that somehow "project" in itself is good and should be sustained. Open source projects are not endengered species to keep it alive.

If no one is interested in paying for project, then people don't need it. Simple as that, when project breaks like open ssh companies will chip in...


>when project breaks like open ssh companies will chip in...

Although, in that case, they really didn't. At least not enough. That's why you ended up with a Core Infrastructure Initiative. (Which, to be sure, is indirectly companies chipping in because that's mostly how the Linux Foundation gets funded but it's not individual companies bankrolling critical infrastructure software.)


Good example. People expect FLOSS developers to contribute work on their weekends and never complain about not being paid. Meanwhile Linux runs the power plants that keep the lights on.


That is the problem that devs are nice people who are doing it for free on weekends. This should end, and pointy haired bosses should deal with fallout at best from their own pockets.


Let's try replacing FLOSS with scientific research and see how wrong it sounds:

"Author also comes from perspective that somehow research in itself is good and should be sustained. Scientific research projects are not endengered species to keep it alive.

If no one is interested in paying for research, then people don't need it. Simple as that, when science breaks like open ssh companies will chip in... "


All those crap papers that people write just to get PHD should vanish.

On the other hand how much science went into SpaceX and reusable rockets? How much science is in chemistry to get new drugs because there are tons of people who would pay for that. Somehow LHC got funded and it was not cheap.

In past inventors were guys that had too much free time and too much money.


Author here. "People writing open source software are not being exploited." Well, I got the curiosity to check the data after having just met with people writing open source software. So I think if you make that claim, you should back it up with at least non-zero evidence. I have done my part.


Okay. You claim that Electron is a below-the-poverty-line project - one of the projects where people are being 'exploited'. Electron is a GitHub project and GitHub got acquired for $7.5B. That doesn't seem particularly 'exploited' to me.

(Why you compare GitHub's acquisition price to the amount of money being put into open-source instead of seeing it as money being put into open-source is beyond me)


On Electron, I wrote this in my article:

> ... such as Prettier, Curl, Jekyll, Electron. This doesn’t mean the people working on those projects are poor, because in several cases the maintainers have jobs at companies that allow open source contributions.

Then,

> Why you compare GitHub's acquisition price to the amount of money being put into open-source instead of seeing it as money being put into open-source is beyond me.

Because Microsoft, as a public company, cannot make an acquisition the size of 20% their profit that year without a clear plan for ROI on that cost, and this will likely happen through some integration with Azure, since the GitHub CEO reports to Microsoft's VP of Cloud and Enterprise. And even if GitHub is seen as a platform that supports open source (therefore money into the platform being a positive for open source), it is weird and unfair for a support partner to earn significantly more money than the core persons involved in open source.


How are the Electron project creators and core contributors not 'the core persons involved in open source'?

My point is that it's like saying "software developers don't make much money when you exclude corporate salaries and stock bonuses". These open source developers are nowhere near the poverty line and coming to a conclusion that these projects aren't sustainable doesn't make much sense.

Edit: maybe your point is that the donation model isn't sustainable. But it reads like you are trying to make a bigger statement about open source sustainability given statements like:

"I was able to calculate how much yearly revenue for a project goes to each “full-time equivalent” contributor. This is essentially their salary"

"More than 50% of projects are red: they cannot sustain their maintainers above the poverty line"

"Unless companies take an active role in supporting open source with significant funding, what’s left is a situation where most open source maintainers are severely underfunded." (this reads to me like 'unless you include salary and stock, software developers are poor')


> How are the Electron project creators and core contributors not 'the core persons involved in open source'?

I didn't say that and would not have agreed to saying that.

Notice what I did say, though:

> "Unless companies take an active role in supporting open source with significant funding"

When a company has employees working on an open source project, such as Electron, that is an active role in supporting open source.

There are different projects, some are internal company infrastructure that was open sourced (React, Electron, Angular, etc), and some are built by hobbyists/indies (Unified, Prettier, Core-js, etc). Companies definitely take a good active role in the first type, and less so in the second type. However, quite often there are projects of the second type being used as dependencies in projects of the first type, as well as in proprietary software, of course. This is why I raise the need for even more company active involvement in open source. It's more about requiring their participation in the culture of gifting (because open source is a commons), than it is about requiring specific donations on specific projects on a transactional basis. In my article I address why companies typically don't participate in open source commons: because companies have a financial brain that guides them towards profit and competitiveness, not gifting. This is why we must "rewrite some rules of society".


> It is weird and unfair for a support partner [GitHub] to earn significantly more money than the core persons involved in open source

>> How are the Electron project creators and core contributors not 'the core persons involved in open source'?

>>> I didn't say that and would not have agreed to saying that.

?

> requiring their participation in the culture of gifting

If it's required, it's not really gifting, is it?

> why companies typically don't participate in open source commons

Open source has never been better supported by corporations. Billions (probably tens of billions) of dollars are being poured in to open source. redis was a hobbyist project and now it's backed by over $100M in corporate money.

I just very much dislike this view that open source is in a bad place because it doesn't fit some moral judgement of how money should work in open source. It's like Stallman's campaign for 'freedom' as long as your view of 'freedom' is exactly the same as his.


This is not responsive to the parent poster's point. You appear to have a disagreement about the meaning of "exploited," not about the data.


You have a weak understanding of how an argument is made.

I accept all of your evidence prima facie, and yet I still reject your premise. Figure it it out. I've done my part.


Exploitation implies helplessness. Writing OSS is a choice. I think the subject is a lot more complex than that, but that’s the parents’ point.


> Exploitation implies helplessness

No it does not. Look at the definition.


> Exploitation > 1 the action or fact of treating someone unfairly in order to benefit from their work: the exploitation of migrant workers.

A license exists that denotes the requirements for using the software. This license is decided by the creator. It's the creators "requirement" or "demand" for using their work. Some open source projects choose to use multiple licenses, like the GPL + another license business can use.

Some go with MIT which demands a lot less from both parties.

As long as the license is followed, it's assumed that both parties are being treated fairly as they've agreed to follow the license. Considering the creator chose the license themselves, it's safe to assume they agree with its premise, and anyone following the agreement they went with isn't unfairly exploiting them.

e.g. It's a fair trade.

The creator also benefits by attracting additional talent to the project because of the license being used. If the license was not an open source license, would they have attracted that talent?

To suggest that these companies are unfairly exploiting these individuals, you'd have to show why agreeing to the terms the creator set out is unfair, especially when other common and easily accessible licenses exists that solve these very issues.


I guess the parent means that some people don't have a choice in their situation (or not as much). Open source maintainers do have this choice.

I like contributing to OSS and do so frequently for fun. But the idea of it being a (sole) source of income is scary unfortunately.


They're being "exploited" in the sense the word is used in the critique of capitalism.

They're producing immense value but other people monetise that value while they're barely receiving any meaningful compensation if at all.

It comes more easily if you accept the definition that working as an employee is inherently exploitative as you need to produce more value than you are paid in wages for your employment to be profitable to the employer (who ideally profits so much from the difference that they are compensated for the economical risk they carry and their initial investment, i.e. capital).

Certainly calling it exploitation carries a value judgement but objectively this is how open source works: in a capitalist system, most labor is exploited and because it's largely uncompensated open source is being particularly exploited.


Yes, and what I meant by exploitation is this: open source is a culture of gifting, either in the form of new projects, or pull requests, donations, or other forms of volunteering. Companies (not all) quite often consciously do not participate in that culture, but still use the code and community to create their surpluses.


Well, that's why the GPL was created: to make it impossible to siphon off profits by building on open source. Of course that is wildly incompatible with how most businesses operate, so the corporate world pushed open source authors towards more business-friendly licenses like MIT and Apache.

Of course what most people overlook with GPL in businesses (as an individual) is that as using the GPL excludes you from large sections of the economy and thus carries a cost not everyone can afford. In turn companies frequently use the GPL for "open source washing" via public/private licensing.

In the 90s I used to hear a lot of people joking that the GPL view on open source is communism. After having shifted politically to the left I now think that joke is actually truer than most people realise. And the incompatibility of a communist "gift economy" (i.e. take what you need, give what you can) with the capitalist host system lies at the core of most of the problems we see with open source sustainability.

In other words: open source "economics" (voluntary mutual exchange with no strings attached) is entirely alien to capitalism because in capitalism this behavior is essentially economic suicide except for a few scenarios (e.g. general marketing like Google, onboarding and recruiting like Facebook or promoting commercial services like Microsoft). Much like how CJ characterised npm Inc in her JSConf EU talk, these companies aren't walking all over open source authors because they're evil, they're doing it because they have no useful way to interact with them except for marketing.

Your piece reads mostly like it's trying to get employees to force their employers to support open source via the usual means of labor struggle (i.e. threatening to withhold their labor, shame them so others withhold their labor) but that to me looks more like a band-aid.


Maybe "exploited" is a little strong but some of these projects are essential components of modern development stacks.

So it's not just the injustice of people toiling away and eating ramen that is at issue here. What happens if people take you up on your advice? What is incentive for quality people to keep churning out open source tooling?


I have to agree with you here, I find no exploitation in committing to open source projects. I believe nobody does that for money and the expectations are clear in that regard to begin with.

That said, of course I'd like to see good open source maintainers enjoy a comfortable life.

However, the author appears to live in Finland. Accepting donations is illegal in Finland, so that income model would not work there anyway.


I think he means to say that companies who are benefiting from someone's work must pay them.


Exploitation does not require people to be forced to work.

Also claiming that people can "simply stop writing open-source software" is a false dichotomy and quite patronizing.


I've worked for 2(out of many) employers that allowed me to spend significant time committing our improvements and modifications upstream to open source projects we used in-house. This was very enjoyable, and I wish more employers behaved that way.

One of the enjoyable aspects of this practice, was during the selection process for "what software do we want to use?". I didn't have to select only open source projects which were "almost a perfect fit, with XYZ problems we can live with". Instead, I got to select software with (to me) better criteria:

* what are the upstream devs like to work with?

* what is the future of this project?

* is this project something we would be proud of our association with?

* working on this project, will myself or my team be exposed to new skills and technology?


I think part of the problem is that a lot of big, "old school" companies seem to think their code is special. Every shell script, every ugly library, every half-functional API is some precious gem of intellectual property to be hoarded and protected at all costs.

We, of course, know that's completely ridiculous. But try convincing your manager that.


Hits close to home. Many closed sources libraries are nowhere near the level of _documentation_, quality, and collaboration that is routinely expected of open-source software.


Their code is special, in that is is unsuitable for open source due to how impossible it would be to describe to someone outside of the organisation how to use it!

I feel a bit like that with Microsoft open sourcing a lot of its projects. Ok so now I can get the MSBuild source code, great... but how the * do I understand it? And that's a developer focused company, let alone some company that paid some cheap developers to knock something up in houses 6 years ago that no one even in the company is brave enough to touch. They might not even know how to build it!

The point is to make their code open source they'd need to do a lot of work to document (at a minimum) and refactor (ideally) the code to make it good enough for open source. They'd need to remove dependencies on proprietary tools (in house or paid) as much as possible.


there's the opposite problem as well:

"We don't want our brand to be damaged by showing our bad code to the public"


So true. And these crappy wheels keep getting reinvented over and over at different companies. Sharing the effort and making a better wheel for everyone sounds like a good idea so long as it's not your core business. There must be a downside right?


> working on this project, will myself or my team be exposed to new skills and technology?

How much weight would you say you give this piece of criteria in the overall decision?


A lot! The devs get to weigh in a lot on this choice, and we chose OpenStack (almost) entirely because of the ancillary stack that comes with it(RMQ, libvirt). Our devs wanted an excuse to spend time with the libvirt APIs, and use RMQ in general.


Do you still think that choice was the right one?


"The results I found were shocking: there were two clearly sustainable open source projects, but the majority (more than 80%) of projects that we usually consider sustainable are actually receiving income below industry standards or even below the poverty threshold."

This is a general principal of the world. Almost everything, including customers, getting dates, and wealth follow the same pattern: Pareto.

There's even a Bible verse:

Whoever has will be given more, and they will have an abundance. Whoever does not have, even what they have will be taken from them.

Matthew 13:12

May be more interesting to compare the jobs allowing open source contributions at the top of the scale.

Or put another way: comments closer to the top attract more karma than those at the bottom.


That Bible verse is Jesus talking about people having no knowledge of the kingdom of heaven. What little knowledge they have will be taken away, and that's why he's speaking in parables, and not saying things more plainly. I don't see how that applies to this article.


You're right about that specific verse but that line is repeated throughout the Bible - some within the specific context of compounding money (Luke 19:26).

It applies to the article because the Pareto principle (also known as the Matthew effect [1]) explains why there's so many open source projects with low revenue and only a few with six figure revenues.

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


That's the thing about stories and literature, they can be different things to different people.

A story about loss can be a love song to one person, a dead loved one or a missed opportunity to another...


Please do not use the quote from the Bible in an inappropriate context.

Matthew 13:11 is

He replied, "Because the knowledge of the secrets of the kingdom of heaven has been given to you, but not to them.

The context makes it clear that 13:12 is talking about spiritual possessions/riches, and not an endorsement of the 1 percent. Camel, eye of the needle, not serving God and mammon etc. all deal with this.


Luke 19:26 repeats the line but within the context of money. It certainly isn't an "endorsement of the 1 percent", but more a statement of truth observed in virtually every human domain.


I do agree. But ever since Malcom Gladwell popularised the "Matthew effect", I am sad that an-out-of context quote is used to justify the promotion of deliberate cold-blooded apathy towards inequality. Whereas it is very clear in other contexts that the New Testament discourages accumulation of wealth. (Disclaimer: I am not a Christian, but read the Bible and other scriptures regularly).


I don't understand how you got "endorsement of the 1 percent" from "general principal".

Think of it another way. Imagine two people with Tom Brady's talent: one ends with mansions in Southern California and multiple superbowl titles, the other ends up unemployed in Arkansas.


People can use quotes from any book in any context they wish.


The Church has always said that the same Bible verse can have multiple true, correct meanings, as long as they don't contradict one another.


In other words, "The rich get richer and the poor get poorer."

Although, technically that Bible verse has significantly richer and more useful meaning than your interpretation, I don't think it doesn't mean what you said either. St. Augustine affirms the common opinion of the Church Fathers that each Bible verse may have multiple true meanings as long as they aren't incompatible with one another.

But I've seen this principle very truly at work: you have to spend money to make money. Those who have very little money to start with, usually can make very little money in return. Especially in software, if you don't spend a decent amount of money on advertising, you will almost never get anywhere.

Fortunately for those of us who don't have that money to make more money with, there are other things in life than money, and Jesus also says "blessed are the poor, for theirs is the Kingdom of Heaven."


Since we're already derailing a conversation about open source sustainability by discussing the Bible: the only problem with "blessed are the poor..." is that getting into Heaven doesn't feed them or provide them shelter and it's very little use if the whole afterlife thing turns out to have been a false hope and the majority of Christians certainly doesn't seem to think that this in any way means they should give away their wealth to become more worthy of Heaven -- quite the opposite: they use it to justify keeping the poor poor because income inequality is really working in poor people's favors if it makes it easier for them to get into Heaven, etc etc.

Promises of a better life after death are consoling if you're at the end of a terrible life on Earth but the only good they do to the poor in desperate need is that they make them more accepting of the injustice they're experiencing.

Shut up about what happens after death and help the people who are alive right now and suffering. Because if you're wrong about the whole afterlife thing, all those people who suffered got the short end of the stick and if you're right and you still helped them, the only bad thing you maybe did to them was making them have to "work" as hard as you did to get into Heaven (if your understanding of poverty easing entry was even correct in the first place) but at least they didn't have to do it on an empty stomach while unable to afford healthcare.


> getting into Heaven doesn't feed them or provide them shelter

That's quite the opposite of what Jesus says:

> Then he will say to those at his left hand, 'Depart from me, you cursed, into the eternal fire prepared for the devil and his angels; for I was hungry and you gave me no food, I was thirsty and you gave me no drink, I was a stranger and you did not welcome me, naked and you did not clothe me, sick and in prison and you did not visit me. [https://www.biblegateway.com/passage/?search=Matthew+25%3A31...]

Jesus was ultimately concerned with each of us relieving the suffering of others while on earth, so much so that he did this constantly himself while on earth, and told all his disciples, for all future generations, to do the same. I'm sorry that there are many "Christianities" now that have considered this teaching optional.


So then emphasise that message and cut down on the "blessed are the poor" nonsense. Because in isolation that message is absolutely harmful and if the dominant interpretation of Christianity instead was "give as much as possible to those in need or you'll be punished in eternal fire" there wouldn't be much need to comfort the poor.


Read up on St. Francis of Assisi or St. Ignatius of Loyola. They sold all their riches, gave the money to the poor, then went and begged alms everyday and gave the food and money they received to the poor people that could not beg for themselves, such as people who were in hospitals or the infirm elderly. These are the true Christians. Anyone who says they're a Christian but is not concerned for relieving the suffering of others is deceiving themselves, and scandalizing people like you and me into thinking Christianity is something it isn't, which is why it took me 25 years before I finally became one.


Well, if "all of those people" aren't real Christians then it doesn't matter what real Christians believe in because there's more of "those" and they're doing real harm whatever you want to call their faith.

It doesn't matter what you or I believe in when enough people who have the means and power to influence many people's lives seem to adhere to the Abominable Fancy doctrine and whatever subset of Leviticus is useful to justify their hatred.


Well hatred is hatred, and everyone recognizes it. That's why even so many non-Christians and non-Catholics loved Pope John Paul II and Mother Theresa, because they were filled with love and had no hate in their hearts. Saints just like these two have for thousands of years been drawing so many people into the Catholic Church, and encouraged them to love with a truly selfless love. St. Francis de Sales, St. Benedict, St. Terese of Liseaux, St. Augustine, so many, too many to count. They're inspirational to so many of us, and when we asked them "where did you get this love?" they keep pointing at God and especially Jesus in the Sacraments, so we go to Mass and try to become just like these saintly, holy men and women.


My company pays me handsomely for working - in part - on Open Source projects.

It's kind of the reverse of what's described here, I do not live off donations to the project, instead I "donate" some of my paid time to the Open Source project... That way my company, the Open Source projects, and myself benefit.

What I do benefits other users of those projects and we benefit from other contributions.

Open Source is about sharing ideas and code, not about living off a project. IMHO at least.


"The results I found were shocking: there were two clearly sustainable open source projects, but the majority (more than 80%) of projects that we usually consider sustainable are actually receiving income below industry standards or even below the poverty threshold."

I fear that open source is actually just the tech industry's group of underfunded-but-vital-infrastructures that are constantly either forced to work for poverty pay or go corporate/private(and externalize the costs to society as a whole). Similar to single-payer healthcare systems, domestic violence sheltering, child protection, pet shelters, and education systems.

Specifically that I fear once these entities try demand to be paid what they're worth, there will be criticism and controversy.


"I fear that open source is actually just the tech industry's group of underfunded-but-vital-infrastructures that are constantly either forced to work for poverty pay or go corporate/private(and externalize the costs to society"

The whole idea of open source is to share your code with the world without expecting payment. These developers can just as easily release a commercial app with appropriate licensing.

"Specifically that I fear once these entities try demand to be paid what they're worth, there will be criticism and controversy."

Once someone gets used to free, they will be shocked when you decode to give them a bill one day. In some sense, the open source community has devalued their own worth by giving software away for free for decades.

It's a bit like the copyright infringement discussions I see so often on HN: Most of these companies would have never paid for open source in the first place, so we shouldn't really consider it a loss of money/revenue.


I just don't get this discussion. And part of it worries me.

Open source isn't what you do to get vc funding, it's not what you do to build a unicorn (it shouldn't be). It's in the name, open source, it's a charitable act.

I worry this attempt to commercialise open source is corrupting it. For sure a lot of companies derive a lot of value from open source software but the user is irrelevant to the act of open sourcing something.

The problem, if you believe there is one, is that work that genuinely delivers benefit for society, is not rewarded economically. While the rich have more money than they can feasibly spend. The problem then is actually how we structure the economy and society, instead of applying a sticking plaster of commercialisation around open source and getting upset when big companies use the software under the licence available to all users, or relying on generous patronage, why not envision a society in which delivering valuable software for free is treated as more valuable than building Uber for dogwalking.

I haven't fully structured my thoughts around this so they're still half baked but it seems we're discussing the problem from the wrong angle?


Yeah they are, but it's a marketing problem.

I'm working on it directly as I am a fairly influential (in my small pond) OSS developer working for less than the poverty line (thank goodness I live in the boonies, plus I've been fortunate)

You have to SHOW the benefit and continually make that case that you are doing something beneficial, and that you are doing it open, that you are in fact giving it away as speech that can be taken and restated and rephrased and reused, becoming a broadening language.

The marketing angle is to continue to do this publically, in contrast to the 'rich and big companies' who absolutely try to exploit everyone and everything, and are horrible to work with or for.

You can't stop them being rich, or exploitative, or even from having a lot of power. But you can make people ask 'why are we using those things again?' because to exploit at that level, competitively, involves pressuring people really hard and taking their stuff away. It feels bad and looks bad.

You can do open source and be truly kind. You must start out wealthy enough that you can survive it, because so far people still align themselves with the power, they still will tend to side with the big company or whoever wields more money. That's basic human nature: animal, even.

But we can get 'em asking questions and being open to sharing and cooperative behavior… because that is ALSO human nature.


As the open source author of a popular project (5 years old and over 5K stars on GitHub), I can relate the problem but at the same time, I think that some solutions could make the problem even worse.

There are actually two 'fairness' issues in open source and from my experience each one is as bad as the other:

1. Fairness in terms of projects getting the amount of attention that they deserve.

2. Fairness in financial terms.

If corporations start donating and drawing attention to some projects more than others, it will cause both problems to worsen. This is because open source projects which are backed by a lot of funding and have strong connections with corporations tend to naturally draw more attention and thus funding because developers and bloggers are more likely to talk, write and tweet about them (regardless of actual merit). It reinforces the importance of social connections and turns an otherwise honorable and altruistic pursuit into a social-climbing financial scheme.

TBH, I'd prefer it if corporations did not get involved at all. If they did, I could only pray that my project would get its fair share of funding. The unfortunate reality of capitalism is that some people will get very lucky but it's just not going to be you. Luck is often paid for at the expense of others; if your competitor gets lucky and walks into a pile of a few million dollars, that's very bad luck for you. Corporations already took the meritocracy out of tech startups, it would be a shame if they also took the meritocracy out of open source (more than they already have).

Open source is very far from a meritocracy but it's probably the closest thing possible to it in the tech industry and we should keep it that way. The best way to do this is to keep the big money out.


Some of this data doesn't seem right.

For example, the author lists Gatsby as "below poverty threshold". However, Gatsby raised $3.8M recently. https://www.crunchbase.com/organization/gatsby-e828 I'm pretty sure they are able to pay people better than poverty wages.

Another important omission is that many developers contribute to open source as part of their work for a larger company. The core React team, for example, is primarily working for Facebook. They spend a lot of their time working on Facebook-internal things, but a lot of their effort is going towards the open source community as well.

The real lesson here is that the OpenCollective model (where these numbers come from) is not where most of the funding for open source engineering is coming from. Most of the money paid to open source software engineers comes from companies that produce open source code as a byproduct of their main mission, like Microsoft building TypeScript or Google building Go.


I think historically (like over the last 30 years) most successful open source projects have been maintained by people who have jobs for companies which do other things as their primary function and revenue producing business (whether non-software 'enterprise' or other software products; or academic/non-profit), who work on the open source on company time.

While I think there may be structural reasons that this is harder to do now (including increased complexity of software, and companies more ruthlessly chasing 'efficiency'), it seems important to at least include in the discussion.

For instance, OP says:

> Only accept jobs at companies that donate a significant portion of their profit (at least 0,5%) to open source, or companies which don’t fundamentally depend on open source for their products

OK, but how about "or companies that have employees, ideally including you, spending a significant amount of on-the-clock time originating, maintaining, or contributing to open source." Is this not mentioned because it somehow seems even less 'realistic' than companies donating 0.5% of profit to open source?


Author here. Actually I did mention in the article that company time was a good option:

> This doesn’t mean the people working on those projects are poor, because in several cases the maintainers have jobs at companies that allow open source contributions. What it does mean, however, is that unless companies take an active role in supporting open source with significant funding, what’s left is a situation where most open source maintainers are severely underfunded.


I don't think that logic holds.

It may be that most open source maintainers are severely underfunded, but your numbers alone don't show that, because they don't account for how much support there is from on-payroll work.

See the current top comment from Electron maintainers for instance.

"supporting open source with significant funding" (in the specific sense of transfering funds to an outside entity responsible for development) is not the only way of "supporting open source" financially. Paying your employees to develop, maintain, and contribute to it is another. I suspect it is the primary way historically for historically succesful open source (although research in this area would be helpful). It might (or might not) be the primary way even now; we don't know from these figures alone.

Employees paid to do on-the-clock work might (or might not) be sufficient to sustainably provide resources/"funding" to open source. Or there might be reasons it's unlikely to work, or unlikely to work as well going forward as it is historically.

I'm not sure straight-out donations to entities developing open source have ever historically been responsible for successful open source resourcing -- and yet we've built software empires on open source. There may be reasons this is not (or no longer) sustainable, but that doesn't necessarily mean this kind of fundraising will ever be more successful than it has been historically (not very, I think). Understanding what has worked in the past and making a case for why it no longer will would be one way to make the case. Just talking about current levels of direct donation without talking about how open source has actually been resourced/funded historically, to me is not a very persuasive case. (Then there's talking about the idea of monetizing open source with 'open core' or 'PaaS' or some combination, which I think some people think is what will save open source, rather than direct contribution. I have my doubts, but it's another possibility).

I think these are all important questions.


Having met with many open source contributors and maintainers, the one pattern I see from those who do it consistently is that they are usually pretty wealthy or gainfully employed. It's almost like a status symbol to be able to have many open source projects that you can afford to work on for free. And a lot of open source projects are really just part of commercialized software that has been extracted and made available to the public for free, so there has already been some revenue from it.

It is pointless to feel outraged about open source projects being "below the poverty line". Virtually no one is actually being forced into poverty by working on open source projects, and if they are, they're doing it wrong. Open source ventures are primarily a rich man's (or woman's) game.


Sounds like survivorship bias. The people who are able to start and keep working on open source projects have other income sources, because the current donation model affords them below-poverty wages.

I would like open source to be a viable model for projects run without maintainers needing to be independently wealthy or full time employed elsewhere. This article is pouting out that we’re a long ways off.


There is definitely survivor bias, you're completely right.

At the same time, I know for a fact that if I had my name at the top of the list of a well known open source project, I could tack an extra 50k/year to how much I ask for my next job.

The same holds true for conference speakers. People will say how much work it is and how you're usually not paid for it... But last time I talked at a conference my inbox exploded with people wanting to give me the moon and then some.

Millage varies and there are many other factors at play for sure, but there is a lot to gain by doing this stuff. There's a reason that so many people try to be the next Webpack, the next big test runner, the next big site generator, etc.


> I would like open source to be a viable model for projects run without maintainers needing to be independently wealthy or full time employed elsewhere. This article is pouting out that we’re a long ways off.

Why? There's no guarantee that's going to result in better software anyway. Sounds like a desire to just be able to work on absolutely whatever you want and get paid (very well) for it.


>I would like open source to be a viable model for projects run without maintainers needing to be independently wealthy or full time employed elsewhere. This article is pouting out that we’re a long ways off.

You can somewhat get there by purchasing the source code to closed-source products and then open-sourcing it.


Also, some open source projects are of the category "gosh darn it, this just wants to exist, regardless of whether large numbers of people are willing to use it and popularize it".

The developer is gainfully employed with another source of income, but believes in that project.


I see you have not met substack, Dominic Tarr, myself, Titus, and others. Here is substack's lifetime earnings: https://twitter.com/substack/status/829802572508639232 This Twitter thread is also quite on topic with your comment.


I don't see your point. If you want money go make money, it's not unattainable and it's fairly easy to get if you have skills. If any of those developers really wanted to prioritize money I'm sure they'd have no problem making plenty of it.

If you want to make free open source software then do that.

If you want both then build a business model around your open source software.


Without context that's not a very useful set of numbers! Did they select themselves out of better paying jobs or were they discriminated against?


Those people are basically telling him to give up on opensource and get a "real job".


Free software projects not earning significant donations is exactly the same phenomenon, or an aspect of it, as selling software (regardless of license) being difficult. Most software doesn't sell. Not only is it hard to sell software, it's hard to get people to just download it and try it for free. Most software will not find any users, let alone paying or donating users.


I wrote about this in the past how all these open source donation systems like OpenCollective and GitHub Sponsors are exploiting maintainers via gig economy dynamics: https://www.aniszczyk.org/2019/03/25/troubles-with-the-open-...

The solution is simple, having companies hire open source maintainers to work on their projects in some fashion or we need to make it easier for maintainers to start companies and build an actual business.


That doesn't sound simple at all. How do you incentivize companies to do this? And what does it mean to "make it easier for maintainers to start companies"?


For companies, I've been encouraging companies for the last several years to start formal open source programs to build a proper open source strategy: https://todogroup.org/guides/create-program/

From that, comes hiring maintainers and contributing to open source projects, fiscally or hiring maintainers.

Second, there are plenty of accelerators like YC itself that can help maintainers start a company around their project.


2 Important points:

1) In terms of financial remuneration, it's even worse than this. Consider Mastodon, which looks like it's doing pretty well. Well, according to his Changelog interview, Eugen also pays 5 moderators to help maintain mastodon.social.

2) Sindre Sorhus, statistically living in poverty, tweeted saying open source was the best decision of his life! Quality of life is increasingly diverging from income. And I hope it continues to, since mean income keeps diverging from median.


Absolutely. I am constantly seeing posters on HN who are clearly far unhappier than me, even though they are pursuing wealth with some success (or even a lot of success). I too am living in relative poverty (sub $1500 a month) and open source was the best risk I ever took.

There are some really interesting angles to consider such as the more predictable income of being supported as a working developer, rather than being paid for your 'hit products' and having to generate more hits or starve. Quality of life is also whether you're subject to ruthless pressures. You can trade off income for creative freedom, in a very natural way. Do weird noncommercial stuff if that is more important than maximizing revenue at any given point. There'll be a natural balance between how hard you're trying to please a customer base, and how much that base will reward you for pleasing it.


I find the mindset of this article to be mind-boggling.

The fact that open source developers aren't getting paid does not mean there is exploitation. Those developers don't have to work on FOSS. They could also work on proprietary software. The problem is that it is hard to develop a business model around developing open source software (it's also hard to develop a business around proprietary software, too).

If the current maintainer of a open-source project does not have the financial support to continue working on the project, they should put their open-source work on hold until they get their finances in order. If that software is part of a critical chain for a business, then that business should provide financial support. It is not a necessity that all current open-source projects continue to be actively maintained.


Wait until they find out how little the person dispensing soup in a homeless shelter is getting paid. OSS is usually like charity, you do it because you can afford to and want to and don't expect anything back from it. Some people end up full time employees in the charity sector, which is also a big industry reliant on free labor.


> OSS is usually like charity, you do it because you can afford to and want to and don't expect anything back from it.

There are reputational rewards associated with open source[1]. However, if you're solely contributing to open source for those rewards, you're going to have a bad time. I would agree that there needs to be a high degree of intrinsic motivation.

[1]http://www.catb.org/esr/writings/homesteading/homesteading


Key quote here:

> Open source infrastructure is a commons, much like our ecological systems. Because our societies did not have rules to prevent the ecological systems from being exploited, companies have engaged in industrialized resource extraction. Over many decades this is depleting the environment, and now we are facing a climate crisis, proven through scientific consensus to be a substantial threat to humanity and all life on the planet. Open source misappropriation is simply a small version of that, with less dramatic consequences.


Minor point, which always frustrates me when people say it. "proven through scientifical consensus". Nothing in the history of science has ever been "proven" by consensus. We get proof when observation matches theoretical prediction.


Will a licensing model that mandates companies who have a certain amount of revenue to pay up for using the OSS, work?

Are there any licenses like this?


Polyform Project (https://polyformproject.org/) just announced draft terms for a suite of standardized, noncommercial, source-available licenses, like Creative Commons' CC-BY-NC-*, but for software. The draft includes a "Small Business" exception that gives companies below certain headcount and revenue figures a free pass.


This is nice!


Unfortunately a license cannot do that without turning into closed source. AGPL is still the best option to mitigate the SaaS issue without fully solving it.

We need new models that don't depend on limiting access to software (or books, music...)


Unity3D has this sort of license, though it's not OSS last time I checked.


This only seems to take donations into account, which obviously doesn't make sense.


Agreed. The thrust of this article is correct, in that people should support open source projects as much as they can (I usually donate around $100 a month, which is really not that much). But, other sources of income are being missed here. Sometimes companies will pay maintainers as consultants for integration or new features. Sometimes people have companies that provide their project as a service as well.


Last week I attended a talk by one of the nuxt.js core devs, Sébastien Chopin. Nuxt, in case you haven't heard of it, is a framework built on Vue.js, with almost 100k weekly downloads on npm and 20k+ stars on Github. He said they have multiple sources of income, but donations and sponsors is just enough to cover hosting and offices. The team seem to get by on chômage (France's unemployment program, which is relatively generous... for a limited amount of time) and on some consulting work.

Maybe that's normal, but I hope that we can find more sustainable ways to develop great projects like this.


A "KeepAlive" system might work for funding software projects. If your company has a dependency on some open source software project, then it is very much in their interests to pay a "KeepAlive" amount per month to that project, ensuring that project remains alive and well and healthy, and thus your systems - which depend literally on that software - remain healthy.

"KeepAlive" is not sponsorship. Sponsorship has the perception/reality of being optional/nonessential and indeed there is an expectation that something further will be given to the sponsor after the money is handed over. Sponsorship isn't a great model for funding software projects. Even worse is donations.

Nor is a KeepAlive payment a support payment. in fact you might have a support system on top of your KeepAlive system. A KeepAlive payment system is simply a payment to ensure that software that a company depends on stays alive.

The super critical thing that no one seems to understand - (and Patreon is the prime culprit here) is that you simply cannot allow the money amounts to drop to the floor - it must not be possible to contribute $1 a month. This is just digital street begging.

Patreon - and any other sponsorship/donation/support/KeepAlive system that permits the payer to "choose their own price" is setting the whole system up for failure. Have you ever seen a "choose what you want to pay" system that does anything except drop straight to the pricing floor?

Any sponsorship/donation/support/KeepAlive system must assert value, must anchor the price, and must set a practical minimum that is required and not optional. For example $10/month for individual person KeepAlive payments, $200/month for small companies and $500/month for larger company KeepAlive payments. What's the value in 300 people throwing a $1 coin per month into your digital suitcase - that's what Patreon is.

Part of the problem is that software developers are typically afraid to set a realistic price point/value on their work, thus the KeepAlive system needs to do it for them - ensuring it doesn't turn into a Patreon like digital street begging system.


For an expensive US city with a "tech" concentration, only the article's "BLUE" category (6 figures) is usually viable, AFAICT. If you look at their chart as everything except blue being red, almost nothing is viable.

You can scrape by on some 5-figures in such a place (assuming no trust fund, and that parents didn't buy you a condo), especially if you have roommates and a hope in growth of circumstances (e.g., startup founder or equity-heavy employee, or the academic postdoc situation), but that's not a good plan for open source work.


Another situation where public good meets an economic system that only rewards tightfistedness. Why not have a system of public funding of valuable projects that everyone uses? Charity is weak. Democracy is strong.


In Islam's golden age, they came up with a trust structure known as a waqf [1]. A waqf is "an inalienable charitable endowment under Islamic law, which typically involves donating a building, plot of land or other assets for Muslim religious or charitable purposes with no intention of reclaiming the assets."

Working to endow charitable trusts might be a smart move for open-source projects.

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


Remember, the Free Software movement all started when RMS wanted to fix his printer. Xerox told him to go screw, so he did.

Should anyone expect to make a living writing software?

First: we don't need endless piles of software. Most of the software we actually need could be written by less than 0.001 of the programmers and "software engineers" working today. (And I could put more zeros in there and still be right-ish.)

Second: if you're not one of the truly good programmers[1] you should not be writing software for others to use. It is not needed (see point #1), and it's irresponsible. Most of us should be pulling off-the-shelf components and configuring and connecting them. Excel proves that most people's real software needs are mostly handled by Excel.

We don't write all this software because we need it, we write it because we like to write software. (And because we have tricked normal people into thinking they need us and should pay us tons of money. It's a huge scam.)

It's understood that the really good folks pretty much write their own tickets (meaning they can generally pick and choose what they work on, whether they are in industry or academia or just private individuals. I.e. Jim Simons does what he likes.)

So my question is: Should mediocre programmers get paid to produce inadequate software? At all? Regardless of the FLOSSiness of their licenses?

[1] People like DJB, Fabrice Bellard, Mark Miller, RMS, and their ilk. They're like professional athletes compared to you and I.


That's going too far. The public and businesses have benefited a ton from software written by non-experts and low-quality software. I think Excel spreadsheets still drive more value creation than most professional apps. The people you refer to don't usually write it. They mostly go to best paying companies in tech or finance. You could say our baseline is dependent on people with less skill stepping up to do what better developers weren't willing to do.

That assumes they know what we need. Biggest part of making the world's software is getting the requirements right. The intellectual elite have been consistently worse at that than folks with strong people skills to get the info out of the market or just folks in it that see the need(s). A recurring example is how they all think brick and mortar is obsolete due to Prime or whatever but a ton of people just want out of house or break from family. They don't know cuz they're coding amongst their peers instead of interacting with such people. So, folks with less brains who do listen wrote software and made plans to make shopping better with Best Buy, local grocers, and others slated for death thriving last I checked.

I learned long ago that intellectual superiority or best code aren't all that has value. Most people want software to get shit done or for entertainment with relatively-low standards of quality. So, anyone that can do that should jump in. Then, a small percentage of buyers and suppliers are about design or quality excellence. That's our thing. We'll keep doing that. Judging them won't help, though. Sell them on benefits after assessing if it would even have benefits from their perspective.


> That's going too far.

Maybe, but I don't think so. If anything, I'm understating things.

> The public and businesses have benefited a ton from software written by non-experts and low-quality software.

Yes but that has to be balanced against all the problems and delays and lost work, etc... that low-quality software has caused.

> I think Excel spreadsheets still drive more value creation than most professional apps.

That's what I'm saying: Excel's benefits don't require full-on programmers to reap them, normal everyday people can "program" Excel. It's not the ultimate be-all-end-all program, but it's damn near.

> The people you refer to don't usually write it.

By "it" do you mean Excel or the spreadsheets? I think you mean spreadsheets.

> They mostly go to best paying companies in tech or finance. You could say our baseline is dependent on people with less skill stepping up to do what better developers weren't willing to do.

I'm saying, in a nutshell, that the really good programmers should write infrastructure and "meta-tools" like Excel (or Elm-lang) and most folks should be able to get their daily problems solved and work done without recourse to too much technical folderol.


Wow, that's so different from my experience. It's like saying only world-class weightlifters should work in construction carrying stuff.

The world around me seems to be constantly screaming: here's yet another thing that could be made easier with better software, no stunning virtuoso performance required, just plain old hard work. Why do I have to lift my eyes from my phone to know whether or not the bus I'm waiting for is arriving? Scrolling is nice and all, but can that menu with a hundred items take up all the space available to it? The pharmacy cashier the other day asked me for the same information twice because two systems won't talk to each other. And a million other things.


> Wow, that's so different from my experience.

I'm an outlier. FWIW my worldview is self-consistent.

> It's like saying only world-class weightlifters should work in construction carrying stuff.

No, I'm saying only world-class engineers should design the cranes, so that regular folks can use them with minimal risk.

> The world around me seems to be constantly screaming: here's yet another thing that could be made easier with better software, no stunning virtuoso performance required, just plain old hard work.

With respect, I think that's bias. Ask an Amish person how much software is required to live a successful, fulfilling life.

> Why do I have to lift my eyes from my phone to know whether or not the bus I'm waiting for is arriving?

Wow, that's so different from my experience. In all seriousness though, if you're attention is so consumed by your phone that you have trouble noticing if a bus is arriving I'd say that's a personal problem.

Given the fact that our civilization is rapidly stuffing radio-connected computers in everything, I'd say that it becomes more imperative that we ensure that only the best quality software is deployed, eh?

> Scrolling is nice and all, but can that menu with a hundred items take up all the space available to it?

That's a problem caused by bad software, a symptom of what I'm describing.

> The pharmacy cashier the other day asked me for the same information twice because two systems won't talk to each other.

At the pharmacy there might be an good reason for that, but if not then you're describing another symptom of what I'm talking about. System design is hard, it takes really good people to do it right.

We are fortunate that, once written, high-quality software is just as cheap to use (actually cheaper) than crappy software, and we should take advantage of that. (E.g. use Elm-lang rather than JS flavor-of-the-month et. al.)


About the bus issue, I can perceive a bus coming "for free", but not whether it's my bus. I live in a big city, and it's normal for 10 or so unrelated busses to pass by.

And if someone really focuses so hard that they would not perceive a bus, would you really dismiss it as their own issue? What if it's a book rather than a phone? What if it's their child?


First, sorry for being rude. I could have phrased that better.

> About the bus issue, I can perceive a bus coming "for free", but not whether it's my bus. I live in a big city, and it's normal for 10 or so unrelated busses to pass by.

I live in a big(-ish, SF is only ~50 square miles) city, but I still can't relate personally to what you seem to me to be describing. I catch the bus a lot, and I like to read books while doing it, and I can and do maintain awareness of my surroundings and the people and vehicles and whatnot around me. I feel it's a matter of common courtesy. It's rude and a little dangerous to enter into a deep trance in a public space like a bus stop, in my opinion.

> And if someone really focuses so hard that they would not perceive a bus, would you really dismiss it as their own issue? What if it's a book rather than a phone? What if it's their child?

So, yes, in the context of a bus stop, while waiting for a bus, if one is so into one's personal whatever that one is surprised by the bus arriving, and this happens all the time, then, to me, it seems like one might have some sort of attention problem.

Look I'm all for software making the world a better place. That is literally my job and lifelong goal. I think you chose some bad examples. I want the robots to do the work and we all get on with Star Trek and sh-stuff. I'm into it. I just want the goddamned robots to work well. As it is now we have guns that shoot their own side, self-driving cars that run people over, IoT that I can't even, etc... and e.g. Mr. & Mrs. tractor-"owners" can't fix their own tractors anymore because there are computers in them now. WTF?

If you want to continue talking about this can we talk about Elm-lang vs JS? I'm not trying to pick on you personally, I'm wound up about the state of the industry.


Open source developer here making 7 figures per year on my own. I don't take donations, I use an open core model and charge companies for access to my commercial products. AMA!

https://www.indiehackers.com/interview/how-charging-money-fo...


Naive question - why isn’t more open source dual licensed commercial and GPL? If it’s licensed commercial, you would still be give it away for free.


That works fine if you are the only significant contributor to the project.

If you start getting significant contributions from people using the GPL version, dealing with the dual license can become problematic. Best for you is if you can convince the contributors to assign they copyright to you. That lets you then fold their contributions, and continue dual licensing the result.

You'll first have to make sure that the contributors own the copyright on all the code they contribute, because they cannot assign copyright of something that isn't theirs. Remember, your contributors are working on the GPL version, so they might copy/paste useful things from other GPL projects into their contribution without thinking about it, because that is fine under GPL. They might not stop and think, "wait a minute...this is going to a dual licensed project that requires copyright assignment, so I can't bring in outside GPL code!".

That's in the best case, where your contributors are OK with copyright assignment.

You might also start getting contributions from people who are not willing to have their code go into the commercial version. There are two ways you can deal with that.

1. Maintain two branches in your project, one for a GPL-only version, and one for a dual license version. If you want some feature in the dual license version that is in the GPL-only version via a contributor who won't assign copyright, you'll have to implement it yourself. You can use the implementation on the GPL-only side for guidance for things such as algorithm selection, as long as you are careful to not do anything that would infringe the copyright on the GPL code.

2. Reject those contributions.

The risk with that approach is that if those contributions are useful enough, your GPL version might get forked, and people who don't need the commercial version will choose the forked GPL version over yours, because it has better features.

Probably best to go with the branch approach. That way you are more likely to remain the primary source (no pun intended) for the GPL version. There will be some contributors who are OK with dual licensing, and with the branch approach you get their contributions and can ask make your pitch to them for dual licensing. If some fork becomes the primary source, you are out of the loop, and will likely never find out what contributions to that are from people who would dual license to you.


Vue.js is outstanding here. I spent the last weeks getting my hands dirty with Vue.js and I am quite disillusioned about the state of the ecosystem and the performance when it comes to large datasets --- compared with its competitors, notably React.js. Which is not even part of this small sample set of projects analyzed by Staltz. I wonder how it compares.


React is funded and staffed with full time engineers from Facebook.

React is a standout when handling large datasets, but tends to mildly underperform on small ones. Seems like a reasonable tradeoff.


> Only accept jobs at companies that donate a significant portion of their profit

One such company might be Bloomberg. I've heard that effectively 85% to 90% of all the profits go to charity.

I don't know how much of that goes toward open source; but it's still great overall, if you work there, to know that most of your work is helping make the world a better place.


I had no idea. Thanks for the info! Might subscribe just for that.

https://www.bloomberg.com/philanthropy/


As it happens the annual report for Bloomberg Philanthropy just came out today:

https://annualreport.bloomberg.org/


It doesn’t take into account that countries like France gives you some good benefits while you’re unemployed (like paying you the same salary you had before for a year) while you use this time to make FOSS that’s easy to maintain. There is a good study to be done on how people in countries with good social benefits make more and better FOSS !


I'd think a Universal Basic Income could help value work like this, work that the market traditionally does not reward, much like caregivers. Doesn't solve the problem of course, but could go a long way.


Easiest way to make money from open source:

1. Use open source as a way to develop your skills and increase your developer profile (for example presenting at conferences)

2. Use your acquired skills and prominence to land a job at one of the FAANG companies.

3. Bonus if you your employer allows you to work at least part-time on your open source project.

In general, open source is a lousy way to make money by building a business. However, it can be very useful in building your personal brand by both increasing your skills and demonstrating your expertise.


disclaimer - I'm the founder of https://codefund.io

This is a very interesting view of the current issues surrounding the funding of open source. I think there are also some assumptions surrounding the motivations of being a maintainer that may not be accurate.

As the founder of a company that's sole purpose is to bring funding to open source developers, bloggers and app builders, I do understand the issues with the "trickle economics" of generating funds for open source.

Let me first say thank you for your contributions. I do not believe that most people become open source contributors/maintainers for the money. They do it b/c they are good people trying to give back to their community.

The way I see it, maintainers need to be open to many different paths of generating funds. Open Collective and Patreon are incredible, however they often require an active effort in fund-raising to generate any significant amount of money. Tidelift is doing great stuff in this field as well by selling SLA contracts on open source projects, although it's difficult to qualify and the developers might not want to sign a contract. There is the promise of crypto-economics and how they might impact funding OSS (see https://oscoin.io). Finally, advertising (yuck?) has been a proven and more widely accepted form of funding as long as the user's privacy is protected. That's what we do. Fund open source maintainers through ethical advertising.

It takes a village to solve sustainable funding for open source.


I did not get to contribute much to open source. I do think it is a privilege if you are able to make something you want to make and give it away to people who use it a lot. You get to put your name out there etc. And if you can really afford it and that is where your heart is, why not.

Maintaining commercial software is not a choice. It's done out of pure necessity. My company wants to get rid of me for what I think are bad reasons. Meaning I need to pay for a lawyer to fight them. Its just misery for people to treat each other like that. This is common in IT. It does not take much and it really does not make as much as portrayed (globally speaking, as open source is global). I used to like the company but clearly they don't give much of a damn about the law (not US law) or just being good employers. Literally all It managers are like this. All I've met anyways and I've been around. IT is a brutal world. But you will get a new job? Yes I will get a new job. Of course I will. I can't afford not to.

As far as I'm concerned open source maintainers are the lucky ones. They do not need to deal with management.

Ps: not that I begrudge them extra wages. I'm all for it.


André Staltz's writing is always a pleasure to read. I still show people his intro to reactive programming https://gist.github.com/staltz/868e7e9bc2a7b8c1f754


This is why I went with dual license for my react animation library.

Full reasoning here https://omar.dev/articles/why-im-charging-for-react-spho.htm...


The methodology is highly flawed - with the amount of "educated guesses" the author takes, anything that comes out of that exercise is highly questionable.


Hi guys,

I wanted to respond to this forum, to hopefully, demystify some misconceptions or help folks, understand, what real self-sustainability is, or what it could mean to us as people, or as a collection of individuals.

Many people believe, that, just because you are being paid, or have money, that you or your service is part of a self-sustainable system, or sociopolitical or economic circumstance. And, by using money to purchase products or services that you or your business is being sustained.

Fortunately, that's not true.

Society, or real self-sustainability, doesn't work like that.

This was proven in 1930, by the Austrian mathematician, Kurt Godel, in his incompleteness theorem, paper.

Basically, Godel concluded, that there is no such thing, as a set-of-all-sets, or superset, in mathematics, or that such a statement, or set, can never be proven, or exist in nature.

Fast forward to 1936, and Alan Turing, uses Godel’s statement, as the “process” or self-sustainable mechanism, for his Turing machine.

Input > Process > Output

Basically, Turing is saying to Godel, you’re right, there is no such thing as a set-of-all-sets or superset in nature. But, what if there was? What would that look like?

And then, Turing goes ahead, based on that supposition, to demonstrate that such a set exists in his 1936, computable numbers paper.

So every time people turn their computers on, they are basically proving Turing right, and Godel wrong, about their being a set-of-all-sets or a superset in nature.

What does this have to do with self-sustainability or human sociopolitical or economic circumstance?

Everything.

All sociopolitical or economic responses or circumstances are built on their being a “process”, or set-of-all-sets, present in every human or non-human transaction or request. In other words, we as people shouldn’t be seeking to “create” self-sustainable services or mechanisms in the world, Godel proved that, that would be a waste of time. We, should be looking at, is ways to “serve” the self-sustainable mechanism, that Turing has proven exists.

What, if we alter, what Alan Turing is saying about their being a set-of-all-sets, that can be aggregated, to a set-of-all-sets that can’t be aggregated, but could only be served. In other words a forum, or circumstance in which ‘process’ or the set-of-all-sets is the only constant in the system, and that, the forums or requests, themselves, are the things or mechanisms, that scale or aggregate in the system.

One of the biggest bottlenecks we face as humankind or a society is the ability to scale our requests, so that they can be managed by multi-individuals or organisations simultaneously.

By inverting a Turing machine, we just might be able to serve one another globally, or as a new human circumstance that can scale to serve any human or non-human request.

!DA


The "open source model" is good for far more than launching your career.

You can contribue, create, participate, enjoy open source your entire life.

Contrary to American beliefs (being an American myself) not evertying is about making the most money.


With commercial/proprietary products, value is usually created by establishing a win-win situation: You as a customer buy something, because its value is above the price you pay for it. Pricing then essentially is about finding out what customers believe the value actually is. As long as this works, this is not a net zero, but a real win for both sides.

It appears to me as if open source tends to break this mechanism. The "customer" gets something that benefits them enormously. Meanwhile the project developers and maintainers sometimes struggle to make a living or earn amounts that seem to be out of touch with what one could earn in a comparable proprietary model. This is how it becomes a win-lose.

With certain open-source licenses, there's also a lack of incentive for giving back. Companies can often simply build proprietary solutions on top of the work of others without ever returning any reward (be it in the form of money or contributions).

It would really be great if there was a way to get the best of both worlds. I am afraid a lot of open-source software will not be produced anymore if the model isn't sustainable for developers and maintainers.

Just doing it for fun is surely feasible for some projects, but the bigger ones need full attention I'm afraid which they can't get without proper funding.


I'm talking about projects that are beyond the "oh, neat project" phase and living in the "why doesn't your project work with XYZ??" phase. Money is required for when you need to handle tech support, handle multiple versions with backported security patches, and other professional software practices that no one would want to do for fun.


As this article clearly states, it's _not_ good for making even a bit of money, let alone the most.


Do they not have to pay rent in other countries??


The parent was mentioning telling entrepreneurs this advice, who are interested in starting a business and making money.

"Contrary to American beliefs (being an American myself) not evertying is about making the most money."

It's not. But you will only really ever get to work on what you want when you are making enough money to quit your day job.

Contributing to open source can be a great experience. It can also be very taxing, especially when you have a family/other obligations outside of work.


This is where strong welfare systems have value in that it gives one the freedom to pursue this kind of thing without having to worry about health insurance and so forth.


However, those welfare systems then force other people to subsidize someone else working on something that, by definition, doesn’t contribute economic value that exceeds the cost of producing it. It’s an inefficient allocation of resources. Meaning money going to support someone building a “thing” nobody values instead of going to support a thing people do value. And by “value,” I mean willingness to pay for it. Free money in the form of welfare so someone could work on a hobby that may have no value is paid for by people who are creating value.

Should I get free healthcare and free food and free rent if I have a passion for making a widget that nobody is willing to pay for? Should I be able to spend my days walking in the woods while a barber spends his days cutting hair for money — money that is taxed to pay for someone to spend their day walking in the woods?

To be clear, welfare is valuable as a safety net, but it shouldn’t be a safety harness. If you are disabled or lost your job, definitely welfare is important. But welfare to support some guy writing a new JavaScript library nobody is willing to pay for? That’s ridiculous. Society needs people to build roads, cook food, and cut hair. If society rewarded people for sitting around doing nothing, then who would do those jobs? If people weren’t doing those jobs, who would pay the taxes for all the people that would decide to simply walk in the woods all day?

We would all like the freedom to pursue “this sort of thing,” however, what happens when everyone pursues “this sort of thing?” Who is going to pay for it? The guy hauling freight isn’t going to take too kindly to be paying for people to do nothing.

People should be able to do whatever they want, but it crosses the line of reason when other people are literally forced to pay for it.

Of course this will be an unpopular opinion here because there is an entitlement mentality that would suggest that someone’s latest JavaScript library should be tax subsidized. However, try making that case to a freight hauler who pays the taxes. Make that case to the restaurant owner that she should pay higher taxes so someone else can sit at home writing browser plugins or painting cute rocks with animal faces that nobody wants to buy.


"by definition, doesn’t contribute economic value that exceeds the cost of producing it"

You mean it doesn't capture the value. It may indeed contribute huge value without capturing it.


Exactly. The whole response ignores the existence of consumer surplus. We can see the silliness by applying to the actual examples - since core-js brings in $16204 and is used by 2442712, by such definition it only contributes $0.006 in economic value to each user. Would any of them accept 1 cent - or even a full dollar! - in exchange for not using core-js?


"Should I get free healthcare and free food and free rent if I have a passion for making a widget that nobody is willing to pay for?"

Yes. Because if your widget is open or bits of it can be recombined into other things, one of THOSE things might be amazing.

You are assuming great stuff comes from great creators, and that ain't natural. Read up on the Genetic Algorithm, and a-life. It is hugely important to produce a class of superfluous creators making pointless things many of which will fizzle out uselessly, but become part of the genetic soup from which more elegant, counterintuitive things will emerge.

You CANNOT have just only 'excellent, worth-money products that stand alone' as your genetic soup. It produces stagnation, local maximums, and the end of progress.

We have seen this soup of uselessness and lots of indulged, well-off people tinkering away on passion projects, able to just burn money on whatever they pleased without concern for whether it was marketable.

It was called 'Silicon Valley'. There was this thing called the Altair. Quite a story really. This is not in any way hypothetical.


Wait, how do you know it won't contribute economic value?

Maybe it doesn't do so today, but it may very well do so tomorrow. New projects need investment. When somebody spends their time on pursuing an endeavour that they think will have economical impact, then I don't see any issue with supporting them by at least not letting them sleep on the street and suffer from not having access to proper health care.

There seem to be plenty of open-source projects that are used by many people, but aren't rewarded in a way proportional to that. So one could also argue the other way around: Why should society allow for companies making money off people who then are supposed to get financial support from all of us?


if you could make money doing the same thing would you do it?




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: