> Since the SSPL forces any SaaS software that is aggregated with the covered software, but not a derivative of it, to nevertheless be open source, it fails this test.
Broadly speaking, what is the utility in not allowing this?
The OSI's purpose is to serve business interests. SaaS providers got their feet in the door before these database companies, so they're getting more of the benefits.
> Open source licenses vary, but the gist since the 1998 founding of OSI has generally been as follows: you can take this code and do what you want with it, but you can't make the code proprietary, and if you use it in another project, then that project can't be proprietary either
What? No, that's not what "open source" means. Not at all. That's "copyleft" or "viral" or "sharealike", but not a universal definition of "open source".
It is not even the definition of free software. The FSF itself acknowledges that permissive licenses are still free software. (all free software licenses are open source and viceversa, the different nomenclature is only a matter of principles).
Err yeah of course it's the right move. The article says that the other alternative to pure open source is proprietary. Well obviously proprietary is bad for society, so if there is a way to construct a license that's at least partially open that's way better than completely proprietary. It's sad but I feel that AWS in 2019 has completely killed a business model.
> "It's sad but I feel that AWS in 2019 has completely killed a business model."
AWS didn't "kill" anything since everything they did is allowed by the terms of FOSS licenses and was known to be possible for many years. It would be more accurate to say that there was never a valid business model in the first place. People originally wrote FOSS to "scratch an itch", not make money.
I'm a big fan of open source, but why is it obvious that "proprietary is bad for society", exactly? I'd venture to guess that most of the people that frequent this site work for companies that sell proprietary software in some form or another. People being employed is pretty beneficial to society.
My guess would be that the long tail of proprietary (due to existing market, mergers, de-facto standards, etc.) favors a greedy incumbent, which has basically never in history worked in the favor of the many. But published, open standards allow for greater adoption and participation, as well as a longer support lifespan.
The core ideas are:
1. Free software products have trademarked, proprietary distributions, with commercial terms attached.
2. Free software products (may) have 100% open source distributions, but they must use different trademarks and naming conventions, and receive no direct customer support or interaction from the upstream. They are strictly downstream repackaging of the proprietary upstream distribution. This is true regardless of which source code repository is being committed to - the user relationship is defined in terms of the commercial product, not the free software project.
By either using this model on its own or combining it with OpenSaaS, I think it is entirely possible to run a profitable business, while providing public access to the code that benefits society.
These companies aren't trying to do something good for open source software. They are trying to protect their own business models. IMO they have the right to develop and release software under whatever license they want.
But as a user of that software, make sure you understand: if they decide your use of their software has potential revenue that they want, they are going to adjust the license to try to force you to pay up.
That is, their software is only as open as is currently convenient for their business objectives. Really not "partially open" at all.
> As Perens puts it, "we have to draw a line between 'open source' and the right to make money with open source. The open source definition allows, but does not support, your right to make money. We're not going to change the rules because you can make money better that way."
This right here. When you open source something, you are basically volunteering to write code. By the very definition, volunteering to do something does not entitle you to anything. Imagine how weird it would sound if people started asking money to volunteer in soup kitchens.
If you think you are entitled to something for your work, don't volunteer. Make it a service and charge. If you think writing some code used by someone entitles you to some money, make it proprietary code and start charging like Microsoft does. No one is going to stop you.
Slight nit: when you open source something, you're not even volunteering to write code. There is no obligation on your part to continue supporting it at that point. You're simply giving out something that cost you some time (no materials).
Which may explain why people can feel entitled to getting paid for their efforts; we tend to feel that if we give something to others they owe us something back (this is why we have a bunch of laws against giving and accepting gifts in certain situations, because of the societal pressure to make it an equitable exchange), and it sometimes takes intentional reminding of ourselves that that's not how giving works, and that there is no actual quid pro quo obligation.
> Slight nit: when you open source something, you're not even volunteering to write code. There is no obligation on your part to continue supporting it at that point. You're simply giving out something that cost you some time (no materials).
Whether you offer paid support or not has no bearing on whether you release your code under an open source license.
Many companies offer support contracts for their open source software. Many paid employees work on open source software, not only volunteers (Google, Facebook, Canonical, Red Hat, SchedMD and so on).
I'm saying when something is open sourced, -the work is done-. You are not necessarily volunteering to work any more. The act of open sourcing something involves no volunteering; it involves giving something away. Likewise any patches you choose to release.
When I say 'support', I mean "Oh, this person filed a bug; I'll go fix it". I was not saying support with an implication of financial remuneration.
> I'm saying when something is open sourced, -the work is done-. You are not necessarily volunteering to work any more. The act of open sourcing something involves no volunteering; it involves giving something away. Likewise any patches you choose to release.
Open sourcing something is also not equal to distributing something for free. I'm sorry for nitpicking, but there's a lot of genuine confusion about this out there.
You can release something with an open source license without distributing it yourself.
The free software movement regards it as a moral imperative to license all software with free / open source licenses, even if you just give the software to your client and never upload it to Github or release it publicly online.
Even if you distribute it, you don't even have to have a bug tracking interface.
Open sourcing is simply attaching a free/open source license to a piece of software. Nothing more nothing less. Not participation in the community, not Github, not issue tracking, not upstream or downstream patch contributions, or volunteering or zero-price distribution or anything else.
How does "even if you just give the software to your client and never upload it to Github or release it publicly online" in any way conflict with what I said? I said "It's like giving it away" - I never said the size of the audience. I didn't say anything about widespread distribution.
And your point...is identical to the one I was making, that licensing something as open source is not volunteering to do anything from here on out, but instead just giving away the work you've already done.
It kinda does. Pretending otherwise is like asking people to pay 10$ before eating at a community kitchen. Or forcing people to pay to enter a public park.
You can ask to be paid to make the soup and then let others take it for free. Or to make it more apt. I can ask for money to build an unlimited soup dispenser and then let others take soup from it for free.
> You can ask to be paid to make the soup and then let others take it for free.
But you cannot cry and moan if you give away the soup for free to someone and then find that they are reselling that to someone else for money. Or to make it more apt, I can ask a Softbank for money to build an unlimited soup dispenser and then let others take soup from it for free. But I cannot stop the people that took the free soup I offered to give away/sell it to others
"But you cannot cry and moan if you give away the soup for free to someone and then find that they are reselling that to someone else for money."
Actually I think charities get really pissed off when you try do this? Isn't this why the individual packets of stuff often say 'not for resale' or whatever?
If you buy food products in bulk, the main bulk container contains legally required disclosures, disclaimers, ingredients etc. Individual packets within said bulk container lack such notices.
Compare a box a granola bars from Costco vs the same bar from a grocery store.
More open source code is written by for-profit businesses than by charities. It's just businesses that have an adjacent profitable service, like Google releasing Kubernetes in order to drive Google Cloud adoption.
Open source or free software was at no point defined as charity/zero-price/volunteer/hobbyist software. It is simply a question of the license. You can be a business, you can make money, you can employ professional programmers and create open source / free software.
Ask Google, Facebook, RedHat, Canonical, SchedMD (who produce Slurm).
Tons of open source software is being created by professional employees of companies today. It's not some hypothetical, this is today's reality.
And it's mostly about profiting from related services, paid support, training, consulting etc.
I realize it cannot work the same way for some minor app by a tiny company and it does create wrong incentives sometimes (you need to make things just complicated enough so they need to hire you for support and training, but not so complicated that it's unusable).
(By the way, nothing forbids you from charging for the software, source or binaries, even if you license it under a free software / open source license. "Free" is a catastrophic naming choice, as it doesn't refer to zero price. It is true, though, that anyone who buys it once can then redistribute the software for zero price, so you'd only get money from people who buy directly from you, instead of obtaining a copy at zero cost from somewhere else.)
This isn't a fair comparison. Community kitchens and public parks aren't undergirding every modern functional information-enabled economy. I'm not speculating who should be charged or how much/in what way, but it needs to be supported somehow if we want to continue to reap its benefits. There is no free lunch.
The worst possible comparison as both parks and kitchens are usually paid by the government, government takes its money from the taxation system. Meaning if you pay taxes you contribute to these facilities, thus it is fair for you to use governmental facilities and services, you might even call it a right to use those.
no, there is another step (at least).. That is, to understand the benefits of something specialized, to .. say economy overall; society overall; research and innovation; education; governance.. you must understand benefits to others past yourself and your team. This is a higher mental function, do not assume everyone understands this, or that you understand this, at all times. Volunteering your own time is yes, a question, but there are systems effects to something as specialized as modern code.
> When you open source something, you are basically volunteering to write code
thank you for the opportunity to clarify...
YOU - an individual coder;
OpenSource - a publication with license for others;
Write Code - specialized skills with high literacy;
Volunteering - social arrangement with time and resources.
You - Write Code - OpenSource => volunteering
when code is made OpenSource, the origins of the code over time are due to more than one person
when code is made OpenSource, benefits are primarily to systems, less so to the individual
to understand the decision to make OpenSource code, the systems that benefit extend to Five Areas (for example, to quote https://paulfuhlir.com/ ) .. listed above
_Some people_ might have you believe that if free software isn't generating ad revenue, or isn't being relicensed for cloud deployments to make gobs of money, then it's somehow "unsustainable."
I disagree, and choose to disregard most projects that behave this way.
You appear to have posted this just because he is the submitter of the article. Is that true? If so, that's crossing into personal attack, which is not allowed here.
Ok, that's fair. But intent doesn't express itself in internet comments, unfortunately, so if you don't disambiguate up front, you're likely to be interpreted through the most common filters, which alas are the nasty ones. I know it's extra work, but the burden is on each of us to do that.
feross has submitted a ton of great articles to HN and is often the first user to find them. From that we all benefit, regardless of our views on ads, etc.
I am rooting for two Rust alternatives to Elastic stack - Sonic[1] and Vector[2](logstash alternative). Too bad they currently cannot work together[3]. Java is a poor choice performance-wise, and in a scaled applications it can make a huge difference.
so even asking a question here got downvotes these days, how can I improve...
"would you please enlighten me here, how AGPL can protect Mongod been AWS-ed? i.e. AWS makes money out of it without paying Mongo, I just do not know much about the difference between licenses honestly and am genuinely interested in it. I did check tldrlegal.com" -- will this be enough to not hurt the downvoter's feelings?
thanks. I often got downvoted without a clue to myself, everything has to be perfectly 'politically correct and grammar perfect' these days, maybe because I was not a native speaker per se. I do feel that some people here are so sensitive these days, to the point I sometimes think their mental health is probably not that great, I know this is going to trigger more downvotes, you're welcome.
MongoDB used the AGPL for years but transitioned to the SSPL when AGPL turned out to offer insufficient protection from being "AWS"d.
Mongo's explanation: "[there was] confusion in the marketplace about the trigger and scope of the Remote Network Interaction provision of AGPL" [1]
Though, ultimately, AWS's "work-around" to this arms-race was to reverse-engineer MongoDB, abiding by its interface & APIs to offer a drop-in replacement: DocumentDB. [2]
> The AGPL to me clearly includes AWS in its text, as it's a service offered over the network?
It does. As a consequence, AWS would have to share the source code of MongoDB with everyone. Which costs them nothing and gains MongoDB-the-company nothing, while MongoDB-the-company probably looses a good chunk of income because AWS can offer their product better integrated with the rest of AWS, under the same billing, ...
I keep seeing this "AWS"d claim regarding MongoDB, but I can't find any references to any service by AWS at any time in the past that run or used any code of MongoDB. I can find services that run or use PostgreSQL, MySQL, Redis, ElasticSearch, but simply no MongoDB.
What I can find are references to small companies like mLab that provided MongoDB hosting/managing as a service, that MongoDB Inc. either bought out for cheap right before going proprietary, or outcompeted.
Perhaps I should've emphasised or clarified when I said "in the past".
This was released _after_ MongoDB went proprietary. MongoDB's decision to go proprietary could not have been influenced by this, because this did not exist at that time.
A very interesting article. As I read it, SaaS providers can integrate GPL code in their service without opening up any of their code, competing with other, similar services. But, isn't that what open source is about? Providing an utility for everyone to use, even in a corporate setting? It's like someone providing a Linux distribution with a license which says, that you're not allowed to make money with it.
I think MongoDB from the article simply provided a SaaS service, which was too simple too copy without any unique features. Ain't this their own fault?
Basically, open source software that has stood the test of time has either been supported by non-commercial entities (e.g. GNU, Firefox) or has been a collaboration of many commercial entities (e.g. Linux, clang, Java).
Trying to sell a free product that you are developing does not seem like a workable business model. Open-source products which are developed almost entirely by a company with a questionable business model are unlikely to remain healthy in the long run.
I think open source software providing (free) utility for everyone is just a side effect, not the original intend behind it. The original intent, as far as I'm aware, is to let users use and modify the software without restrictions. This obviously leads to the free utility, but if there was a way to achieve the former without the latter, it would be ok. There isn't, and so my argument might sound a bit silly. I do feel it's an important distinction to keep in mind when talking about the politics of it though.
Most of the examples appear to be NoSQL datastores. Now it is kindof obvious why Datomic is not open-source.
And yet software like Wordpress has thrived for many years without their creators being tempted to change licenses (Wordpress.com wasn't crushed by AWS, shared hosting or even WP-as-a-service vendors).
Consumers don't really care whether the software they use is open-source, they'll just use whatever looks good and works. So hosted WordPress does well, but Medium also does well.
Engineers are rightfully wary of using proprietary databases. Decades of bugs leading to integrity issues on decades worth of data. They're not willing to relive those days. Luckily, the world of open-source, battle-tested, academically reviewed databases is large and mature.
So any upstart peddling funky "throw out all that academic rigor and try this nosql shit" is rightfully squinted at. Open-source has essentially become table stakes for DBs, since no engineer will look at you otherwise.
These nosql companies are trying to be proprietary while still meeting the table stakes. Given the other expectations around open-source, the whole thing has a "two kids in a trenchcoat" look to it.
At this point I have yet to work on something that absolutely needs a NoSQL database so I may be a bit biased, but my general impression is they're a solution looking for a problem- or rather, the wrong solution to the wrong problem. I have used things like key-value stores such as memcached but it's also the kind of tools you don't use liberally unless you absolutely must. Perhaps a bit of obscurity isn't that bad of a thing after all.
Doesn't help that people have been talking about the issues with NoSQL for quite a few years now [0]
As far as i can tell, NoSQL is a reasonable way to store data that would otherwise go in a directory of files.
If the lookup is anything more complicated than "I know exactly which file I want because I saved the relevant key in a real SQL database," then you're probably doing something wrong.
Too many people start with NoSQL because "we gotta be cloud scale" without actually thinking about their data model, don't want to redo everything the first time they realize they need to do a join, and end up bolting on a slow, broken, inconsistent query system on top that ends up being orders of magnitude slower and more expensive than postgres running on a laptop.
> Engineers are rightfully wary of using proprietary databases. Decades of bugs leading to integrity issues on decades worth of data. They're not willing to relive those days. Luckily, the world of open-source, battle-tested, academically reviewed databases is large and mature.
Not that you are, but we need to be careful with the “open source === good quality.” OpenSSL has Heartbleed for years
Probably because Wordpress offers something a bit more integrated and a more complete package than "just" a database. Most people don't only use MongoDB or Elasticsearch, they use it along with something else which then forms a complete product, even if those dependencies are vital or truly what makes them shine.
Sometimes it feels like the conventional wisdom is that open source is struggling for a business model. But despite the competition from AWS, MongoDB is now a public company worth $7 billion. Quarterly revenue is $90 million. It seems like they have found a decent business model, to me.
The formula: make popular open source software, get an audience of people who happily use that software, sell related services to that audience.
It looks like open source in the traditional sense is on the wane. Powerful forces demand license stipulations that conflict with open source licensing. The social justice crowd doesn't want their software used by ICE, and big companies don't want their code releases to undermine their business model. In the future, hackers sympathetic to Extinction Rebellion may want to deny access to their software to organizations who contributed to global-warming denialism.
Eventually the OSI leadership will resign; they may be pressured to do so very soon. There are too many powerful interests for whom the OSD as it is poses significant problems.
Open Source is about licenses - Saas is making licenses obsolete.
I think the story is more about universal cloud providers dominating specialized Library as a Service providers (AWS dominating MongoDB) - the fact that the smaller providers publish their software as OpenSource is not relevant to the story, Amazon could publish their solution as OpenSource and still kill MongoDB.
It all leads to very big and probably monopolistic cloud providers. To have more competition maybe what we need is mandating Open Source for Saas. We would also have some positive externalities in the form of code. Businesswise this would not be a big deal - exactly because selling the full package (i.e. cloud provided Saas) is dominating selling licenses. There are some technicalities to overcome - like how/where it should be published, what should be published (what is the source? what code is really used in Saas and what is internal code?) and when it should be published (immediately upon going live?).
It can also be justified on the grounds of people should know what they are buying.
Exactly this. I don't see the point of, say, the AGPL because it can't possibly be enforced: Short of a whistleblower or other leak, have no way of knowing if I'm connecting to AGPL software, or merely something that's API-compatible.
> Exactly this. I don't see the point of, say, the AGPL because it can't possibly be enforced: Short of a whistleblower or other leak, have no way of knowing if I'm connecting to AGPL software, or merely something that's API-compatible.
I don't think that is people's main concern. As a developer I'd trust that most companies will honour the terms of a license, and if they don't it'd be unknowingly in most cases. It's too much of a legal risk, and not worth it in most cases.
The issue is that GPL licensed software can be legally used in Saas use-cases because it needs to be distributed for the gpl to get triggered. In the case of AGPL that loophole is closed, but it's still possible to use AGPL software in a Saas product in the case where it is not used directly, basically. For example, in most cases it's legal to call an AGPL command-line application you modified from a backend service, without having to share your modifications. At least that is my understanding.
Either way, my point is that the concern is about legal use-cases, not illegal ones.
> Exactly this. I don't see the point of, say, the AGPL because it can't possibly be enforced: Short of a whistleblower or other leak, have no way of knowing if I'm connecting to AGPL software, or merely something that's API-compatible.
but that's not specific of open source software. You could be running any closed source software without a license and nobody would know.
Unfortunately "you can take this code and do what you want with it, but you can't make the code proprietary" is not the Open Source definition AT ALL. This applies to software released under the GNU licenses, or copyleft licenses.
Open source can MOST DEFINITELY be made totally proprietary.
Is there a new license in use that allows fairly open use but not as a for-profit SAAS?
Is that what SSPL tried to do?
For years I hoped the LAGPL (Lesser Affero GPL) would turn popular. [1] But I guess it needs a bigger organisation behind to get real lawyers to write it and promote it.
In essence I'd just want MIT+NOSAAS or Apache+NOSAAS.
81 comments
[ 0.30 ms ] story [ 95.2 ms ] threadBroadly speaking, what is the utility in not allowing this?
What? No, that's not what "open source" means. Not at all. That's "copyleft" or "viral" or "sharealike", but not a universal definition of "open source".
AWS didn't "kill" anything since everything they did is allowed by the terms of FOSS licenses and was known to be possible for many years. It would be more accurate to say that there was never a valid business model in the first place. People originally wrote FOSS to "scratch an itch", not make money.
IMHO proprietary software is better than no software, but open source software is better than proprietary software in terms of societal benefit.
My favorite open source business model is the "Free Software Product" model. (Best articulated here -> https://sfosc.org/docs/book/business-models/#free-software-p...)
The core ideas are: 1. Free software products have trademarked, proprietary distributions, with commercial terms attached. 2. Free software products (may) have 100% open source distributions, but they must use different trademarks and naming conventions, and receive no direct customer support or interaction from the upstream. They are strictly downstream repackaging of the proprietary upstream distribution. This is true regardless of which source code repository is being committed to - the user relationship is defined in terms of the commercial product, not the free software project.
By either using this model on its own or combining it with OpenSaaS, I think it is entirely possible to run a profitable business, while providing public access to the code that benefits society.
Be careful.
These companies aren't trying to do something good for open source software. They are trying to protect their own business models. IMO they have the right to develop and release software under whatever license they want.
But as a user of that software, make sure you understand: if they decide your use of their software has potential revenue that they want, they are going to adjust the license to try to force you to pay up.
That is, their software is only as open as is currently convenient for their business objectives. Really not "partially open" at all.
This right here. When you open source something, you are basically volunteering to write code. By the very definition, volunteering to do something does not entitle you to anything. Imagine how weird it would sound if people started asking money to volunteer in soup kitchens.
If you think you are entitled to something for your work, don't volunteer. Make it a service and charge. If you think writing some code used by someone entitles you to some money, make it proprietary code and start charging like Microsoft does. No one is going to stop you.
Which may explain why people can feel entitled to getting paid for their efforts; we tend to feel that if we give something to others they owe us something back (this is why we have a bunch of laws against giving and accepting gifts in certain situations, because of the societal pressure to make it an equitable exchange), and it sometimes takes intentional reminding of ourselves that that's not how giving works, and that there is no actual quid pro quo obligation.
Whether you offer paid support or not has no bearing on whether you release your code under an open source license.
Many companies offer support contracts for their open source software. Many paid employees work on open source software, not only volunteers (Google, Facebook, Canonical, Red Hat, SchedMD and so on).
Open source and commercial are not antonyms.
I'm saying when something is open sourced, -the work is done-. You are not necessarily volunteering to work any more. The act of open sourcing something involves no volunteering; it involves giving something away. Likewise any patches you choose to release.
When I say 'support', I mean "Oh, this person filed a bug; I'll go fix it". I was not saying support with an implication of financial remuneration.
Open sourcing something is also not equal to distributing something for free. I'm sorry for nitpicking, but there's a lot of genuine confusion about this out there.
You can release something with an open source license without distributing it yourself.
The free software movement regards it as a moral imperative to license all software with free / open source licenses, even if you just give the software to your client and never upload it to Github or release it publicly online.
Even if you distribute it, you don't even have to have a bug tracking interface.
Open sourcing is simply attaching a free/open source license to a piece of software. Nothing more nothing less. Not participation in the community, not Github, not issue tracking, not upstream or downstream patch contributions, or volunteering or zero-price distribution or anything else.
And your point...is identical to the one I was making, that licensing something as open source is not volunteering to do anything from here on out, but instead just giving away the work you've already done.
You're nit picking where there are no nits.
Seems like fair trade
You can (and many companies do) make money with (i.e. commercialize) open source software.
But you cannot cry and moan if you give away the soup for free to someone and then find that they are reselling that to someone else for money. Or to make it more apt, I can ask a Softbank for money to build an unlimited soup dispenser and then let others take soup from it for free. But I cannot stop the people that took the free soup I offered to give away/sell it to others
Actually I think charities get really pissed off when you try do this? Isn't this why the individual packets of stuff often say 'not for resale' or whatever?
Compare a box a granola bars from Costco vs the same bar from a grocery store.
And how would you pay the 'employed' programmers that created the software if not by charging for the software
Tons of open source software is being created by professional employees of companies today. It's not some hypothetical, this is today's reality.
And it's mostly about profiting from related services, paid support, training, consulting etc.
I realize it cannot work the same way for some minor app by a tiny company and it does create wrong incentives sometimes (you need to make things just complicated enough so they need to hire you for support and training, but not so complicated that it's unusable).
(By the way, nothing forbids you from charging for the software, source or binaries, even if you license it under a free software / open source license. "Free" is a catastrophic naming choice, as it doesn't refer to zero price. It is true, though, that anyone who buys it once can then redistribute the software for zero price, so you'd only get money from people who buy directly from you, instead of obtaining a copy at zero cost from somewhere else.)
That's basically what NGOs are...
thank you for the opportunity to clarify...
YOU - an individual coder; OpenSource - a publication with license for others; Write Code - specialized skills with high literacy; Volunteering - social arrangement with time and resources.
You - Write Code - OpenSource => volunteering
when code is made OpenSource, the origins of the code over time are due to more than one person
when code is made OpenSource, benefits are primarily to systems, less so to the individual
to understand the decision to make OpenSource code, the systems that benefit extend to Five Areas (for example, to quote https://paulfuhlir.com/ ) .. listed above
does that make it clearer ?
_Some people_ might have you believe that if free software isn't generating ad revenue, or isn't being relicensed for cloud deployments to make gobs of money, then it's somehow "unsustainable."
I disagree, and choose to disregard most projects that behave this way.
I don't dislike the guy, I just know his views, and choose to contest them.
feross has submitted a ton of great articles to HN and is often the first user to find them. From that we all benefit, regardless of our views on ads, etc.
[1] https://github.com/valeriansaliou/sonic
[2] https://vector.dev/
[3] https://github.com/timberio/vector/issues/988
[1] https://www.fluentd.org (Ruby Language)
[2] https://fluentbit.io (C Language)
"would you please enlighten me here, how AGPL can protect Mongod been AWS-ed? i.e. AWS makes money out of it without paying Mongo, I just do not know much about the difference between licenses honestly and am genuinely interested in it. I did check tldrlegal.com" -- will this be enough to not hurt the downvoter's feelings?
Mongo's explanation: "[there was] confusion in the marketplace about the trigger and scope of the Remote Network Interaction provision of AGPL" [1]
Though, ultimately, AWS's "work-around" to this arms-race was to reverse-engineer MongoDB, abiding by its interface & APIs to offer a drop-in replacement: DocumentDB. [2]
[1] https://www.mongodb.com/licensing/server-side-public-license...
[2] https://aws.amazon.com/blogs/aws/new-amazon-documentdb-with-...
I don't understand how this flies at all. The AGPL to me clearly includes AWS in its text, as it's a service offered over the network?
It does. As a consequence, AWS would have to share the source code of MongoDB with everyone. Which costs them nothing and gains MongoDB-the-company nothing, while MongoDB-the-company probably looses a good chunk of income because AWS can offer their product better integrated with the rest of AWS, under the same billing, ...
What I can find are references to small companies like mLab that provided MongoDB hosting/managing as a service, that MongoDB Inc. either bought out for cheap right before going proprietary, or outcompeted.
It is even in the title: Amazon DocumentDB (with MongoDB compatibility)
But of course, they say it is only using a similar API and no code. We have no way of verifying this.
This was released _after_ MongoDB went proprietary. MongoDB's decision to go proprietary could not have been influenced by this, because this did not exist at that time.
I think MongoDB from the article simply provided a SaaS service, which was too simple too copy without any unique features. Ain't this their own fault?
Trying to sell a free product that you are developing does not seem like a workable business model. Open-source products which are developed almost entirely by a company with a questionable business model are unlikely to remain healthy in the long run.
And yet software like Wordpress has thrived for many years without their creators being tempted to change licenses (Wordpress.com wasn't crushed by AWS, shared hosting or even WP-as-a-service vendors).
What is different about these DBs?
Engineers are rightfully wary of using proprietary databases. Decades of bugs leading to integrity issues on decades worth of data. They're not willing to relive those days. Luckily, the world of open-source, battle-tested, academically reviewed databases is large and mature.
So any upstart peddling funky "throw out all that academic rigor and try this nosql shit" is rightfully squinted at. Open-source has essentially become table stakes for DBs, since no engineer will look at you otherwise.
These nosql companies are trying to be proprietary while still meeting the table stakes. Given the other expectations around open-source, the whole thing has a "two kids in a trenchcoat" look to it.
Doesn't help that people have been talking about the issues with NoSQL for quite a few years now [0]
[0] http://cryto.net/~joepie91/blog/2015/07/19/why-you-should-ne... (although I do wonder how much of these points still apply)
If the lookup is anything more complicated than "I know exactly which file I want because I saved the relevant key in a real SQL database," then you're probably doing something wrong.
Too many people start with NoSQL because "we gotta be cloud scale" without actually thinking about their data model, don't want to redo everything the first time they realize they need to do a join, and end up bolting on a slow, broken, inconsistent query system on top that ends up being orders of magnitude slower and more expensive than postgres running on a laptop.
Not that you are, but we need to be careful with the “open source === good quality.” OpenSSL has Heartbleed for years
The formula: make popular open source software, get an audience of people who happily use that software, sell related services to that audience.
Eventually the OSI leadership will resign; they may be pressured to do so very soon. There are too many powerful interests for whom the OSD as it is poses significant problems.
I think the story is more about universal cloud providers dominating specialized Library as a Service providers (AWS dominating MongoDB) - the fact that the smaller providers publish their software as OpenSource is not relevant to the story, Amazon could publish their solution as OpenSource and still kill MongoDB.
https://medium.com/hackernoon/aws-and-mongo-and-open-source-...
It all leads to very big and probably monopolistic cloud providers. To have more competition maybe what we need is mandating Open Source for Saas. We would also have some positive externalities in the form of code. Businesswise this would not be a big deal - exactly because selling the full package (i.e. cloud provided Saas) is dominating selling licenses. There are some technicalities to overcome - like how/where it should be published, what should be published (what is the source? what code is really used in Saas and what is internal code?) and when it should be published (immediately upon going live?).
It can also be justified on the grounds of people should know what they are buying.
Exactly this. I don't see the point of, say, the AGPL because it can't possibly be enforced: Short of a whistleblower or other leak, have no way of knowing if I'm connecting to AGPL software, or merely something that's API-compatible.
> Exactly this. I don't see the point of, say, the AGPL because it can't possibly be enforced: Short of a whistleblower or other leak, have no way of knowing if I'm connecting to AGPL software, or merely something that's API-compatible.
I don't think that is people's main concern. As a developer I'd trust that most companies will honour the terms of a license, and if they don't it'd be unknowingly in most cases. It's too much of a legal risk, and not worth it in most cases.
The issue is that GPL licensed software can be legally used in Saas use-cases because it needs to be distributed for the gpl to get triggered. In the case of AGPL that loophole is closed, but it's still possible to use AGPL software in a Saas product in the case where it is not used directly, basically. For example, in most cases it's legal to call an AGPL command-line application you modified from a backend service, without having to share your modifications. At least that is my understanding.
Either way, my point is that the concern is about legal use-cases, not illegal ones.
but that's not specific of open source software. You could be running any closed source software without a license and nobody would know.
Open source can MOST DEFINITELY be made totally proprietary.
Is that what SSPL tried to do?
For years I hoped the LAGPL (Lesser Affero GPL) would turn popular. [1] But I guess it needs a bigger organisation behind to get real lawyers to write it and promote it.
In essence I'd just want MIT+NOSAAS or Apache+NOSAAS.
[1] http://mo.morsi.org/blog/2009/08/13/Lesser_Affero_GPLv3/