Hacker News new | ask | show | jobs
by SquishyPanda23 2618 days ago
I don't understand this sentiment. The whole point of choosing a permissive license is that you want others to have the right to profit off of your work and give you nothing in return.

If you don't want others to have that right, then choose a different license.

But don't grant the right and then complain when people exercise it.

14 comments

I think you might want to look into, if you have not already, a topic referred to as "gift culture"[1]

The hard reality, that someone like myself believes, is that open source works because most actors try to be considerate of others. It falls apart when everyone acts selfishly. I personally believe the world is better off because we have open source software(as generally defined by the OSI and other groups). So my concern, and I'm guessing the concern of others like the author of this article, is about losing open source as we know it today. The fear is that as actors like Amazon behave in a very anti-social and self interested way, other actors in the ecosystem will be drawn into behaving similarly. Eventually we'll return to the era when software was almost always closed.

Of course, you may not find any real value in the spread of open source software. If that is the case, then I would imagine this situation seems strange to you.

[1] http://www.catb.org/~esr/writings/cathedral-bazaar/homestead...

The SSPL "debate" was indeed a shit-show hijacked by people either abusing permissive-license ideologies with a corporate interest in mind, or so blinded by that ideology that they are unable to grasp the idea that freedom is an inherently contradictory concept, and that to maximise overall freedom across space and time it is necessary to restrict freedoms that result in a restriction of more freedoms.

Good on these guys, I hope they build a licensing model or some other thing that can stand up to Amazon. I still consider SSPL to be "free software" very much within the ideals that movement, regardless of what the OSI says.

>I still consider SSPL to be "free software" very much within the ideals that movement, regardless of what the OSI says.

Yeah, I think the issue is that these days there's a lot of open source developers, who zealously believe in open source, but are working for corporations. They have a natural incentive to maximize the usefulness of open source for corporations, whether they explicitly acknowledge that or not. On a social level, I think that's having many effects, one of which is the backlash against SSPL, which is obviously hard for mostly-proprietary corporations to comply with.

Many open source programmers have built a mental model around the notion that the scripts that operate and deploy an application (service) aren't part of the application (service), and therefore don't need to be open source. But that doesn't make any sense from a software-freedom perspective! The fundamental tenets of open source are that users should be able to use, modify, and redistribute the application. If the users don't have access to the scripts that are required to actually deploy a modified version of the service, then it's not meaningfully open source. That's a new perspective, it's true, but I think the old perspective (the scripts to deploy a service don't need to be open sourced) was just wrong, it came from a long period of biased, commercial-centric thinking.

>I still consider SSPL to be "free software" very much within the ideals that movement, regardless of what the OSI says.

SSPL is less free than most of propertiary EULAs. It is literally impossible to comply with the section 13 of the license.

SSPL requires the user to release the source code of everything they are using to host their service and license it under the terms of SSPL. Everything, that even includes operating system and firmware of the server used to host the user's service. No one is able to do that.

I don't understand how can anyone defend that awful license.

Full Disclosure, I work for MongoDB. Please check out the SSPL FAQ (https://www.mongodb.com/licensing/server-side-public-license...). Section 13 is focused only on entities that wish to offer MongoDB as a public third party service. They are free to do so under the condition the hosting company offering MongoDB as a service makes "service source code" open source. For nearly all MongoDB users, this has no impact.
Why did they create SSPL when AGPL already existed?

IMHO all use cases can probably be covered by MIT/BSD, GPL, LGPL, and AGPL. Everything else is license proliferation and adds confusion and problems sharing code between projects.

https://www.mongodb.com/licensing/server-side-public-license... "Why did you base the SSPL on GPL v3 instead of AGPL?"
MongoDB was already AGPL, but that didn't suffice. Amazon simply took the free version of MongoDB, as is, deployed it on its systems in a scalable way, and sold that to customers. They gave the code for MongoDB away, per the terms of the AGPL.

Hence, the need for a new license.

However, they seem to have kept the deployment infrastructure as a trade secret, and since that didn't interact directly with MongoDB's interfaces, it șes that it really didn't come under the scope of the AGPL.

Companies did that for years with Linux, Apache, MySQL etc., and noone got riled up enough to produce this mess.

I think another commenter got it right: this is a fuss created by commercial entities that wanted to have their cake and eat it too.

> Why did they create SSPL when AGPL already existed?

Because they were already using the AGPL, and it did precisely Nothing to stop Amazon from turning into a massive free-rider who undermined the very ability of the project to fund continued development of the project Amazon was free-riding on.

But why should Amazon be prevented from running said software? "Because I don't like it" isn't a good reason.
They shouldn’t, per se. But if they’re not going to be good citizens by contributing back to the project they’re profiting off of, while simultaneously attacking and undermining the ability of the project to fund itself, that’s a massive Free Rider problem that in the long run ends in the loss of a lot of important Open Source projects.

We can attempt to solve this free rider problem, or we can shrug our shoulders and decide we’re just comfortable with a world with a lot of dead Open Source projects and a lot more proprietary software. But “the current situation is fine and sustainable” is head-in-sand thinking. This Bad Citizen behaviour is an existential threat to the long term prospects of Open Source.

I agree. If it is free/permissive license then the point of such a license is that anybody can use it freely. Why does MongoDB not want Amazon to run it freely? Because MongoDB wants to make money.
> "So my concern... is about losing open source as we know it today."

Open source was born out of a closed source world. It couldn't possibly have been a "gift culture" at that time, and yet it birthed and blossomed and amazingly so. To seriously believe open source would go away requires a belief that the forces that birthed it in the first place no longer exist or have significantly diminished. I'd be interesed to hear you expound on that.

That's a rather ahistoric view. Software was initially very much a gift culture in the mainframe, mini-, and micro-computer eras. Even proprietary software licences were often thrown in gratis by vendors trying to sell high-margin proprietary hardware. Proprietary software was largely developed in-house for a company's own use, and regarded as a trade secret, not published as object code and licensed to others.

This state of affairs continued through the initial phases of the workstation/PC era. It was when IBM PC clone hardware (with their narrower profit margins) started to dominate that proprietary software gained more attractive margins, and the ISV era really took off.

It was this growth of proprietary software cutting into and threatening the existing gift-culture during the 80s that prompted the formation of Free Software and Open Source philosophies (the latter named in the 90s but existing all along).

I don't think it's that hard to understand. To some degree, Amazon's behavior is exploiting an idealism that has given us software such as Linux that we're all benefitting from today, and it's easy to see why a starry-eyed engineer would want to carry on that legacy and create a project such as Redis with a permissive license.

What you say ("The whole point of choosing a permissive license is that you want others to have the right to profit off of your work and give you nothing in return.") is obvious in hindsight, and should go without saying if you start a project with the express intent of commercializing it. However, in many cases, it's not the obvious decision for reasons related to the project's genesis (e.g. Spark or Mesos being student projects), and in others, it's not the route taken because of an idealistic impulse that I think would be really unfortunate to see squashed.

> What you say [...] is obvious in hindsight

It was also widely known for many years before Redis was a thing, i remember Slashdot comments from early 2000s about how BSD proponents are taken advantage of and they seem to like that whereas GPL proponents are taken advantage of as much as they take advantage those who take advantage of them (weird phrasing because the original quote i remember was a bit more explicit).

So it isn't really something you only knew in hindsight, it is also something that comes by ignoring people who were warning you about the consequences of your choice (royal you here).

Amazon is, in effect, bringing attention to this issue and I am glad that they are.

> What you say ("The whole point of choosing a permissive license is that you want others to have the right to profit off of your work and give you nothing in return.") is obvious in hindsight, and should go without saying if you start a project with the express intent of commercializing it.

Even if you do thoughtfully choose a license with the express intent of commercializing the work, some competing project elsewhere - student projects, in your example - will eat your market. It is about time players entering our industry be warned of the effects of such "pissing-in-the-pool" activities.

> some competing project elsewhere - student projects, in your example - will eat your market.

If a student somewhere is willing to do the same thing as your company for free and release their work under MIT, why is that a problem?

This smacks to me of Microsoft complaining that projects like Linux shouldn't be allowed to exist, because its unreasonable to expect them to compete with free.

If eventually we get into a state where Open Source development really isn't viable, then people will stop doing it, fewer people will be eating your market, and then Source Available projects will become commercially viable.

> If a student somewhere is willing to do the same thing as your company for free and release their work under MIT, why is that a problem?

There isn't a problem with that. The problem is when such projects aspire to commercialize their work, find it hard, and then complain when other commercial entities exploit their work.

The hypocrisy I am pointing out is that to get a software adopted initially projects choose overly permissible licenses; then when they try to monetize the project, they run into issues and cry foul.

"exploit", you need the quotes because nothing was exploited. Someone else was able to execute better than you were, that isn't a crime.
Are you saying that choosing a permissive license is like "pissing-in-the-pool"? As if do so contaminates the market for everyone?
> Are you saying that choosing a permissive license is like "pissing-in-the-pool"?

Yes, choosing overly permissible licenses (non-GPL OSS ones, in particular) contaminates the market for other software projects operating in that market.

Yes. The whole AWS problem stems from having too much software under "permissive" licenses and now enough under reciprocal licenses.

Reciprocal licenses work like herd immunity: you need a large enough ecosystem to effectively keep freeloaders at bay while rewarding those who cooperate often.

How would less permissive software existing have helped e.g. MongoDB with their "AWS problem"?
MongoDB did not have an "AWS problem". AWS did not release anything related to MongoDB until after they stopped making open-source releases.

MongoDB had a "We gave others freedoms we didn't like" problem, so they rescinded those freedoms. Freedoms that they'd given in the first place to profit off of the reputation of Open Source Software. If they'd never given those freedoms out, they'd never have had any problems.

Linux uses GPL, it kind-of forces the tit-for-tat relationship.
Sure, but in this case e.g. GPL vs BSD is only marginally relevant (any modification needs to be GPL in the GPL case) to the particular case of selling OSS software as SaaS since either license lets you package and sell the bare software.
This is exactly it. GPL worked in the past, but if we take a look at Android (which is based on Linux) we can see that it failed to protect users' freedoms completely.
Something that GPLv3 would have prevented.
Then Android would probably have just based off BSD like iOS did.
> an idealism that has given us software such as Linux

No, Linux is GPL licensed, it's not a naive permissive license.

Yes, but you’re still free to turn around and sell Linux as part of a SaaS offering as Amazon does. It saves you from someone surreptitiously forking your project and selling the fork without contributing back improvements to the public, but it doesn’t totally sidestep the issues in the article.
True, but SaaS didn't exist at the time Linux was invented, so it's hard to fault Torvalds for not foreseeing this particular issue. The broader point, I'd argue, is that the idealism behind many successful free software projects was tempered by realism in choosing licenses that compel contributing back to the community.
SaaS has been around since the 1960s
Mongo was AGPL.
There was no “idealism” behind the creation of Mongo, ElasticSearch, or Redis. They were all trying to profit and used open source as marketing.
In practice, lots of initial authors choose licenses out of tribal affiliation and not simple logic or strategy. People who are inclined to distrust the FSF are likely to pick a permissive license even though the truth is they expect things that can only be guaranteed by a copyleft license.

Conversely the LGPL and family exists in some sense because the free software community tried to apply copyleft to project that can really only be successful with a permissive license.

Likewise, I don't understand your position. Just because something is legal doesn't mean we're not allowed to complain. Besides the legal contract, the social contract can be just as important.

For example, my country has freedom of speech and assembly and so forth, and it's easy to see cases where someone exercises their legal rights in ways that are supremely annoying to others, and not in any way productive for society. When we see people abusing the system, we speak out about it. The nail that sticks up gets hammered down.

What's the alternative? Disallow freedom of speech? Sometimes we might feel tempted, but it turns out that that has all kinds of terrible problems. As they say: this is the worst form of government, except for all the others that have been tried.

There are many cases where doing the minimum that the law allows is fine and accepted. (Most people don't intentionally overpay their income tax.) There are other cases where doing something that's merely not technically illegal is frowned upon by social convention. What we're seeing is the corporate world (legal minimum) and the individual world (social contract) colliding. Who wins? So far, the corporations are.

It's easy to say "You should have picked a different license, then!" after the fact, but maybe there isn't a license which would have worked better. Maybe this is the best of several bad options. (Maybe using a more restrictive license would have caused the company to ignore the software entirely and write their own completely proprietary alternative, for example.) Maybe using the internet soapbox to plead for leadership is actually the optimal strategy.

The GNU GPL was an amazingly clever hack to use the legal system to assist enforcing a social contract, but I don't think we can expect to find solutions like that in every case.

There's a famous project that did something similar to this. It's WURFL. The creator behind the project got offended when a big co (Google I assume, not sure) who forked his project and never paid him anything at all. I believe it was under a different, very permissive license. When he found out this happened, he immediately, deleted repos of the code copies of the old license and published a new "commercial" license screwing companies who depended on his database. Luckily, someone cloned the project on Github, but he took it also down with a DMCA.

https://shkspr.mobi/blog/2012/01/wurfl-and-database-copyrigh...

I really hate people who don't understand what open source really means and get offended when someone uses their work in a way that doesn't violate the license, but doesn't give back.

> When he found out this happened, he immediately, deleted repos of the code copies of the old license and published a new "commercial" license screwing companies who depended on his database. Luckily, someone cloned the project on Github, but he took it also down with a DMCA.

I don't understand this. If the old version was licensed permissively what argument does he have to take down a copy of it with DMCA?

And the original companies using it wouldn't care - of course they'd have their own vendored copy internally - they don't need GitHub to keep using it.

Right. I think it’s a bit rich of companies such as Elastic to extend existing open source projects, surf on the goodwill of open source, and then turn around and complain when other companies use elasticsearch as open source.

The real issue with OS today is that it is too difficult to reward authors and contributors with actual cash money. Until this is fixed, “open source” is doomed to be a bunfight between well funded companies and self appointed governing bodies.

Let’s find a way to pay hackers!

I think the corporate patronage is alive and well. If you look at Apache or Linux Foundation, lots of contributors are employees of large corporations. This works out ok in the sense that lots of great software is being created.

I think the problem with Elastic is they have lots of VC investment pushing for a big payout, so it’s not a “pay the hackers” it’s a “make a big payout for founders and investors.” Which I’m not against and think is cool, but I don’t really care about it that much.

I heard somewhere that Amazon did try to do a deal with Elastic and didn't like the price?
I think "hackers" should just ask for money for their work before you are allowed to use it, just like they did years ago - how to do this was already a problem solved even in the 90s. Sure you wont get brownie points with those indoctrinated by the GNU propaganda, but at least you'll be able to get food from the supermarket. And besides, cults are only nice at the beginning when there are parties, later they start to suck when sacrifices enter in the picture.
> ...this was already a problem solved in the 90s. Sure you won’t get brownie points by those indoctrinated by the GNU propaganda...

The “indoctrinated” industry has created a massive community and even more massive ecosystem of interoperability which almost certainly wouldn’t exist under the walled off from everything else and “fuck everyone” nightmare of the 1990s.

Those 90s walled off isolated companies were significantly more cult like and significantly less effective than the system which won out in the open market—the “GNU propaganda” as you refer to it.

>I think it’s a bit rich of companies such as Elastic to extend existing open source projects

I'm not exactly sure what you mean by "extend existing open source projects". Elastic the company was founded by the creators of Elasticsearch and is the way that its authors and most of its contributors are rewarded with actual cash money.

> I'm not exactly sure what you mean by "extend existing open source projects".

I think s/he means Elastic's use of Lucene - https://lucene.apache.org/.

Elasticsearch uses Lucene for the actual inverted index DB systems. They then built a robust and updateable distributed system on top of it. By updateable, I mean that Lucene indexes are fixed at creation, and Elasticsearch coordinates multiple index versions to expose an updateable index system.
I guess it was referring to the fact ElasticSearch is build on top on Lucene
They probably meant Lucene that ES is based on.
The article title is actually "Lack of leadership in open source results in source-available licenses", OP was editorializing. In fact, your sentiment is explicitly stated in the article:

> Amazon’s behavior toward open source is self-interested and rational. Amazon is playing by the rules of what software licenses allow.

The submitted title was "Amazon has exhibited offensive and aggressive behaviors toward open source", which was taken from the body of the article. That's not necessarily editorializing, if the language is representative. But we've changed it back to the original article title now.
The article talks about people switching to source-available licenses as if it were a bad thing. I'm unconvinced. If you have commercial ambitions and are uncomfortable with Amazon using your software, maybe open source is the wrong choice for you?
Yeah, this strikes me as someone trying to legislate a business model into working: engage open source contributors for all features but also have an exclusive rights to sell them in an Enterprise offering without competing with Amazon.

The stronger part of the argument is that Amazon is being anticompetitive by using their privileged role as AWS' hardware operator to compete with app providers in on higher layers. Maybe in a few years we will have a lawsuit related to the one Apple is facing now about ios apps.

What's legal and what's right are very different things. It's perfectly fine to criticize Amazon for behaving poorly even if it's something they are legally permitted to do.
The basic argument is that Amazon is Free Riding because they get massively more out of the resource than they put in, by virtue of their scale alone.

The free-rider problem occurs when those who benefit from resources, public goods, or services do not pay for them, which results in an underprovision of those goods or services.

https://en.wikipedia.org/wiki/Free-rider_problem

Amazon isn't free-riding any more than everyone else. If I can buy hardware and hire SREs to run mongod myself, I should be able to pay AWS to do the same things for me, and it's weird that the authors expect a cut in one case and not the other.
It’s impossible to free ride with a permissive license like the one used.

It’s like complaining because Seattle sets up a free subway that supports infinite riders at $0 marginal cost and Amazon has all their employees ride it instead of making google buses.

There’s also an issue that Elastic’s district was actually worse than Amazon’s new distro due to license confusion.

> It’s impossible to free ride with a permissive license like the one used.

On the contrary, permissive licenses has been quietly pushed by companies, together with replacing Free Software with Open Source, in order to exploit it.

This is also incredibly worrying for the original goal of open source which was individual user's rights. I think it will be very difficult to make a license that cleanly allows me a personal user to change/use/distribute the source, but not a big business like Amazon. And sure, maybe its as simple as "are you profiting from it" -- but then we get into weird edge cases of me using your software on my router that I use for my real estate business or something. With open source, the requirements are really easy, as soon as there is a door for someone to get a cut of what you make, we get into the territory of whether you become a big enough target to start demanding a cut from. And then it's up to the courts to decide. That might be great from the author's point of view, but I think completely goes against the whole point of the software user's freedom.

For example, is it that far fetched that at some point someone will come up with the abstract argument that your blogging service is really actually just a fancy interface to your MongoDB instance -- and thus you should pay up since you are a MongoDB provider.

> And sure, maybe its as simple as "are you profiting from it" -- but then we get into weird edge cases of me using your software on my router that I use for my real estate business or something.

Just to be clear, if you are referring to Commons Clause, you can freely use the software for real estate or whatever, you just can't sell the router itself, software itself, or offer paid consulting / support / hosting for the software (well you can, but you need to obtain a commercial license - which is fair enough, since you are making money off the software, not off you real estate business).

This is a common misconception about Commons Clause. You can use it for commercial purposes. Exception is when you are selling the software itself, or the services that base on it.

As for blogging example, the concern is imho not justified. Hybrid licenses need support of community as much as open source ones and such behaviour would be suicide. It would help if the projects were clearly stating the allowed (and disallowed) usages in advance, but it's a bit early... There aren't many projects using Commons Clause yet for example.

> Exception is when you are selling the software itself, or the services that base on it.

I think we're agreeing here: no one actually knows the boundaries of this. I'm simply not interested in being the guinea pig of where the line is of "the services that base on it". In my experience the actual deciding factor for this is when you become successful enough and worthwhile to sue. Then it's up to some judge in Texas to decide whether my service is "based on" this technology? I mean, I can't run my services at all without Linux -- I think they'd have a really good argument that my entire business is "based on it". You and I may see how this is silly, that's not sufficient for making me feel safe in a legal environment that currently rewards patent trolls for example.

> It would help if the projects were clearly stating the allowed (and disallowed) usages in advance, but it's a bit early...

If we're in "warrant territory" of explicitly stating up front every possible "OK use case" to make the user feel safe, then its either going to have so many allowable use cases as to be self-defeating, or not possibly able to predict really exciting unexpected uses and rule itself out from those domains. At the absolute minimum, I'm going to start to actually have to read over the license with a lawyer now (as opposed to one common understanding of something like MIT), since I can't imagine a "one size fits all" of acceptable explicitly spelled out use cases when the whole point of these licenses is to carve out meaningful profit areas for the project itself - something that in my opinion is going to vary greatly project to project depending on the unique features it provides.

Yes, I think we are in agreement. Except that MIT is not as well understood as most people think it is (Kyle Mitchell wrote about it, can't find the link right now), so you might want to lawyer up for opensource too. :)

I just think a solution that better aligns incentives of users, businesses and developers is needed, because opensource doesn't do its job good enough. But time will tell which licenwe will get enough backing to succeed in dethroning it.

Sure, but the whole point is that the parties choosing to adopt "Source Available" licenses are doing so because they failed to predict how their users would use and profit from it, and in response, are wanting a new arrangement that better benefits them. So in some sense, we know ahead of time that this is a group which has been upset by unexpected use of their software. Now they've created a license that specifically gives them the benefit of the doubt in such scenarios in the future (vs. MIT which gives that benefit of the doubt to the user). As such, I as a user would be entering into an agreement that specifically is weighted against me in a case that has happened before, with a party that has shown in the past to want to change the rules when they felt they were not being sufficiently compensated. This makes me feel significantly less safe without the presence of a lawyer than with a license that has lots and lots of example usage. Would you say that's fair?
Fair to the user - less than with FOSS, but more than with proprietary licenses. Fair to developer, yes.

But the problem for me is that if developers don't have incentives aligned with their users', then we get low quality software. I am a FOSS user and have been for many years, but while I appreciate the freedoms it grants me, the whole experience is... Let's say "inconsistent". I would prefer limiting some of the freedoms in exchange for better software, and especially in exchange for having it at all on mobile.

I think the somewhat extreme view FOSS movement holds about freedoms actually hurts opensource adoption, because it hurts its quality and availability.

Note that I don't mind Amazon (ab)using FOSS so much as I mind not having any freedom on mobile.

> I don't understand this sentiment. The whole point of choosing a permissive license is that you want others to have the right to profit off of your work and give you nothing in return. > > If you don't want others to have that right, then choose a different license.

I want you to have the right to be an asshole, but I'd prefer it if you were not an asshole. I don't want to enforce my preferences through contracts, licenses, and law. I might still call you out if you're an asshole.

How hard is it to understand this worldview? A world of freedom, where people do the right thing because it's the right thing to do, and not because they are given no other choice.

The article says that even a non-permissive license (such as GPL) won't stop Amazon from taking your code and running it as their own service.
A lot of people has been mislead (by some propaganda) to think that "permissive" licenses would be enough to build a collaborative ecosystem.

Now they are starting to realize they were naive.