29 comments

[ 3.0 ms ] story [ 90.2 ms ] thread
This is missing the main way people get paid for open source work, which is to work for a company that will pay them to work on an open source project. Everything from Go to React to Bitcoin falls into this model.
Yes... it's not just missing, it doesn't fit with this guy marketing his license, so it was excluded.
It's right there as option 3, "paid open gigs".
What if we as a community developed a new way of paying for open source software with micropayments, based on how widely it was actually installed and used?

What if this system would be self-enforcing because of a network effect, like the Brave Browser does kinda? It could be enforced with a browser extension or by mobile web browsers.

There was a time when cryptocurrency promised to do that just, with utility tokens before regulators made everything either act like a security token or nothing. Before it was discovered that Ethereum wasn’t going to be scalable enough for actual payments and tokens would just ever be for occasional transactions between exchanges and most tokens became instruments of speculative investment and day trading instead of actual medium of exchange for goods and services?

(comment deleted)
I've heard that Giordano Bruno said that whatever has the most value and the least cost of storage becomes money. FWIW.
Why not just release proprietary software if you want funding for your work? Selling licenses for using software is one of the easiest ways to fund software development since 1980. Customers have more respect for companies with straightforward licensing plans, and well-funded software can offer customers high levels of technical support. People know they get what they pay for, so no need to be afraid to charge users for your quality work.
Free software means freedom, not price. There isn't any reason you can't offer your users freedom as well as a quality paid product -- selling warranties, support, and licensing exceptions are all valid business models regardless.
There is, the more money you make the better the product will be. Opensource goes AGAINST quality software:

1. Selling warranties - the better the product the less there is a need for a warranty.

2. Selling support - the better the product, the less there is a need for support.

3. Licensing exception - not sure what that is.

Again, open source today is :

1) Competitive strategy used by big companies against rival - for example kubernetes and its eco-system as a strategy of google against AWS.

2) Bait and switch - also known as open core. For example redis or hashicorp. I will open source a "community" edition to increase adaptation, but all the useful features are behind a wall. I think it was mongo CEO who actually stated that in an interview.

I don't believe in the mythical perfect software which has no bugs and which requires no warranty or support. You can't write complex pieces of software without requiring these things. By licensing exception I mean a dual-licensing sales scheme.

I agree "open source" is mostly a corporate bait-and-switch which is why I focus more on the "free as in free speech" aspect.

Thanks. My point is that I want to create as high quality software as I can, and decrease support to zero. I want to get paid for doing tests. I want to add fault tolerant mechanism to mask failures,etc.

However, if my pay is based on support, I have an internal conflict.

There is something to be said about code review (which was the original Linus argument). However, I should not expect quality reviews from non paid developers.

Someone has to maintain those tests. Those qualify as "support". The idea behind code review isn't that amateur developers are going to do it, but that other companies can independently pay someone.
Closed source is the quality issue. Competition is an artificial driver of innovation which actually just leads to fragmentation and lower quality across the board. The fact that higher pay leads to better quality is only a stipulation of our current societal culture and the problems inherent to it. As a global culture, our entire value system is broken from top to bottom in order to benefit a privileged few.
(comment deleted)
It's funny how we sit here splitting hairs over how open source devs can get jobs or fucked. Google's got over $100b in cash. Apple's got over $100b in cash. AWS nets Bezos about a million in profit an hour. Open source contributes massively to their opportunities and technologies. These companies are dependent on open source software being written and maintained to power their products and operations.

The missing open source funding is sitting in plain sight, held by companies who literally colluded to not even pay their own workers market rates.

Maybe one solution is a blanket prohibition of FAANG companies using our software until this abusive relationship is made more amicable. It sounds stupid but any one of them could slap together an UBI for 100,000 open source developers around the world. Together they would barely notice the cost. Isn't that hilariously unlikely from companies utterly dependent on open source software with perhaps more than a quarter trillion in cash between them.

Would the terms of the AGPL3[1] fit what you're talking about?

The idea of the AGPL is that if you expose a service online which uses AGPL licensed software, you're required to publish the source code with any modifications or additions you've made to it. I'm not sure on the enforceability of these provisions (how would we know if i.e. Amazon was using a modified version of AGPL software and not publishing their changes?).

But, if it works as intended, the AGPL would require that these companies publish the improvements they make to open source software. This would prevent situations like Amazon using modified Linux on their servers without contributing the modifications back to the community. This is a more careful closing of the larger loophole in non-copyleft license that allows, for example, Apple to take BSD code for MacOS X, without contributing back to BSD.

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

No. You can't pay rent with their improvements and there's only certain types of software, and a handful of titles, that these companies modify like that.

Funding open source development needs to be across-the-board inclusive, it is the "R" in "R&D". Open source benefits from a massive parallel pipeline of bad projects and inferior efforts and abandoned ideas from which comes great stuff, but even the bad stuff can teach a lot.

If those improvements align with your customers' goals then yes, you can pay rent with them.
(comment deleted)
> No. You can't pay rent with their improvements and there's only certain types of software, and a handful of titles, that these companies modify like that.

I don't know about that. I suspect that a lot of the time, when a company wants to use modified open source software, they pay someone to make the modifications. Usually, they hire their own person, because they can pay them to make the modifications and then they own those modifications and can keep them internally, but that has a lot of costs: they have to pay the person to become familiar with the source code. It's much cheaper to pay the original developer to make the modifications you want, because they are already familiar with the source code. So if companies couldn't keep the results of the developers' work, they might as well pay the original developer to make the modifications, which both pays the developer's rent, and allows them the choice of what parts of the modifications to include in the end product.

> Funding open source development needs to be across-the-board inclusive, it is the "R" in "R&D". Open source benefits from a massive parallel pipeline of bad projects and inferior efforts and abandoned ideas from which comes great stuff, but even the bad stuff can teach a lot.

This is a good point.

AGPL doesn't fix the problem as it isn't a matter of these companies using the code, but the developers being taken advantage of unfairly. Amazon publishing their modified Linux wont be of much help to anyone who isn't Amazon and uses Amazon's hardware - the only one who might be helped is other entities like Amazon (namely, Google, Apple, etc). The problem isn't even companies not contributing back changes (Apple does, for example), it is merely developers essentially working for multibillion companies "for free".

Of course this is a problem that developers made for themselves and something that they were warned against but chose to ignore.

I think that this is maybe mistaking why some developers create free software in the first place.

Personally, it's not about money when I do it--for me it's about pushing humanity forward with new capabilities. So for me, the problem really is companies not contributing back changes. Even if companies use my software, I don't see it as me working for them for free, I see it as me working for humanity for free.

That said, no free software I've ever written has ever gotten a significant user base, so perhaps my feelings would be different if I were a more successful free software developer.

The missing open source funding is sitting in plain sight

But these large companies do massively fund open source. They just do it by having their engineers create open source software, rather than paying money to independent engineers.

Kubernetes, TypeScript, Go, Tensorflow, React, Angular, these open source libraries have had millions of dollars of engineer time put into them, and that cost was primarily paid by large tech companies.

That's a tiny, luxurious little subset of open source. Open source is also 500,000 other projects being worked on in parallel from which FAANG are waiting to exploit anything of interest. Underneath their open source software is a chain of open source dependencies all the way down to the bare metal where the developers are not even considered.
I think there are more ways to make money from open source than that blog post lays out. I thought the SFOSC docs do a good job surveying the possible business models with open source -> https://sfosc.org/docs/book/business-models/

IMHO, the "free software product" model and/or the OpenSaaS model are the two strongest choices. They both seem to have healthy revenue generation potential, while allowing a community to form and develop around the software.

There's an extent to which this whole discussion feels 'close but no potato'.

While we generally agree that open source software is good for business, consumers, society and developers and as open source developers we enjoy developing and sharing open source code; we also have to make rent and buy food.

The responses to that fall into one of two categories:

+ This is obviously unfair, the world sucks, but no one particularly wants more closed-source software/libraries/frameworks so quit your bitching and suck it up, after all if <team name here> can do it why can't you (neglecting that donation driven models don't scale for all the components of an open ecosystem)?

+ We should change our licenses so that people with money have to pay for it.

No one was lied to here particularly, the license terms are there and they tell you you're surrendering rights to your work when you choose a permissive license. But equally modern development is almost impossible without open source components and businesses aren't willing to pay their way or do everything in house.

Where do we go from here? Well, I think these licensing discussions are in general harmful to open source (ignoring free software here because, just because). We all benefit from knowledge being a commons and from being able to see, repurpose and audit source code. But if the system is rewarding nonsense (basically all modern software development, every social media app, every advertising platform, almost all enterprise software, etc, etc.) while the developers of the genuinely socially useful stuff go hungry then maybe the system isn't fit for purpose.

I don't have concrete suggestions beyond telling people to think bigger than just which license to choose and to stop trying to harm the open source ecosystem to get paid. System change needs a coordinated effort from people working together, we have to build and articulate a demand for change that comes from the masses of developers, not solely a few people. Again this is all thoroughly hand wavey and sadly I don't have any answers but I'd be interested in building a socialist vision of software as a public good and knowledge as a commons that enriches everyone, rather than creating minefields for litigation with new licenses.

I think it's a careful balance between contributing for the greater good and hoping it compensates you later on (whether that be fame or fortune).

IMO, the perfect storm is to create a software that solves the layperson's problems just fine (enticing adoption). And then has a proprietary section that makes more sense for those who have the money (re: @beneologist).

Let me say up front that I'm a Free software fanatic. RMS was correct. I don't really understand Open source philosophy. I'm not trying to start a flame war, just disclosing my bias.

The point of Free Software is sharing without letting the other guy hoard improvements or lock you out of sharing.

Recall that the whole thing got started when RMS wanted to fix the software in his printer and Xerox said "no". That's the genesis of the GPL.

Getting paid is orthogonal to writing Free software. RMS himself makes his money by writing new software on contract not by somehow selling his existing code.

This works.

Bash and readline are maintained by one guy https://news.ycombinator.com/item?id=20772053

> Ramey has now worked on Bash and Readline for well over a decade. He has never once been compensated for his work—he is and has always been a volunteer.

You have perhaps used that code for years and never thought to pay Mr. Ramey, eh?

I'm using a Prolog compiler that's written and maintained by one guy, an Associate Professor at Centre de recherche en informatique at the Sorbonne: http://www.gprolog.org/

If you are paying for software and do not have a truly novel application in 2019 then you are wasting your money.

If you want to get paid for writing software that isn't solving a truly novel problem then I don't know what to tell you, I think you're kind of deluded. (If you want to get paid for software you already wrote then IMO you're a miser.)

"He who works for the fruits of his labors is a miser"

~ Krishna

these efforts are attempting to turn npm into a platform for monetization, but it's too low-level for that and the consumers of it are other programmers, who clearly aren't paying for jack.

The consumer needs to be a customer of an actual thing (like a finished product), not the neat-shaped-nail that you designed that is 1/100000th of the finished product.

Does npm already support commercial licensing of libs (I honestly don't know)?

The most successful platform for open source money making is wordpress, as far as I can tell and by a very big margin.

Wordpress powers thousands of real small businesses and is a massive informal economy all on its own. It is what success in the bazaar looks like as far as I can tell.

I would love to document all similar platforms (wordpress plugins/themes, aws appliances, classic shareware/indy games, ????)