14 ms·
Making the GPL more scary
- qwerty456127 8y agoDo I understand it right, that whatever a project I build using MongoDB (i.e. any website/app that uses a MongoDB instance as a backend to store data directly or via a middleware layer or has a feature of connecting to MongoDB) I must open-source it completely? This feels a way too radical if so.
- filmor 8y agoI think this is only about cases where you expose MongoDB directly, not if you use it in the backend.
- verst 8y agoI believe that is what prompted the Server Side Public License (SSPL) creation, but as written could be interpreted to cover more than just offering MongoDB as a service. From the SSPL: 13. Offering the Program as a Service. If you make the functionality of the Program or a modified version available to third parties as a service, you must make the Service Source Code available via network download to everyone at no charge, under the terms of this License. Making the functionality of the Program or modified version available to third parties as a service includes, without limitation, enabling third parties to interact with the functionality of the Program or modified version remotely through a computer network, offering a service the value of which entirely or primarily derives from the value of the Program or modified version, or offering a service that accomplishes for users the primary purpose of the Program or modified version “Service Source Code” means the Corresponding Source for the Program or the modified version, and the Corresponding Source for all programs that you use to make the Program or modified version available as a service, including, without limitation, management software, user interfaces, application program interfaces, automation software, monitoring software, backup software, storage software and hosting software, all such that a user could run an instance of the service using the Service Source Code you make available.
- arnon 8y agoHerein lies the problem. Notice you said "I believe that... but could be interpreted". I've worked with some copyright lawyers that basically said "it's impossible to know, and we'd rather just avoid the question to begin with", and forbade us from using AGPL in any of our deployments.
- Grangar 8y agoSo the key takeway is that you not only have to opensource your serverside component, but also have to allow self hosting? I haven't had my morning coffee yet so I may be wrong here, but that seems extreme.
- pmontra 8y ago> The only substantive change is an explicit condition that any organization attempting to exploit MongoDB as a service must open source the software that it uses to offer such service If you're building for example an ecommerce that uses MongoDB as database, you're not selling MongoDB as a service, so you don't need to license your software with this new SSPL. If you're building an ecommerce as a service with a MongoDB database, again you're not selling MongoDB as a service, so you're safe again. IANAL + usual disclaimers.
- bad_user 8y agoThat's not how licenses work.
- merlynn 8y agoNo. Only when you make MongoDB Available to third parties as a service do you need to make the source code of your service available.
- antt 8y agoI would like to make it explicit that only flesh and blood individuals should have access to freedom 0. These licenses are a step in a direction closer to what I would like to see, but aren't quite there yet. If you as a person want to run software xyz and try to make money off of it, go ahead. As soon as you open a limited company to reduce your exposure you should be hit with paying license fees. I don't get the hate for the licenses that try to remove freedom 0 for corporations. At work I suggest horrible propitiatory software solutions all the time because it doesn't matter how locked down the stack is. So long as it has a ROI of >3% over the fixed and running costs it's a good solution. No one is harmed by human first open source software, other than a legal fictions bottom line.
- codetrotter 8y ago> I would like to make it explicit that only flesh and blood individuals should have access to freedom 0. So basically, turn freedom 0 into not freedom 0. For reference, GNU freedom 0 is “the freedom to run the program as you wish, for any purpose”. What you are saying seems to go against the principles of freedom 0, and I don’t get your motivation either, because at the same time you don’t seem to mind proprietary software. My main issue with what you are saying is that it’s not clear what you mean by “removing freedom 0 for corporations”. Do you mean specifically when they are offering software written by someone else as a direct service to customers? What about using it in the backend? What about employees using FOSS? There is a lot more to be said and discussed about this.
- neolefty 8y agoRather, I'd say it reinterprets "run the program" to be "have access to the program over the web". In other words, if I use your website, I should also be able to stand up my own version that uses my own data.
- antt 8y ago>For reference, GNU freedom 0 is “the freedom to run the program as you wish, for any purpose”. That depends on what your definition of "you" and "you wish" is. If your boss tells you to run X then you are not the one wanting to run it, the company is. And, American jurisprudence not notwithstanding, I don't consider corporations to be a form of "you". If a sole proprietor with full legal liability for their actions wanted to do the same, more power to them. No matter how many people they hire to do the work for them.
- wowamit 8y agoThe change in licence terms sounds too stringent — far beyond just the scope of derived works which is typically the case. Especially “requiring a relicensing of the Linux kernel if a MongoDB service runs on Linux”? MongoDB can very well stop calling itself an open source software then when to use it in any significant manner, one needs to get into a proprietary license agreement. Wish the license doesn’t get approved as a valid open-source license.
- lolc 8y agoI wasn't aware Mongo had the kind of market-share that would allow them to pull this off. While some people might pay, it's just going to remove trust. Who's going to recommend Mongo after this? Good chance it won't even be considered Free Software anymore.
- enriquto 8y agoThe AGPL is a great license for free software development. It is also great to be coupled with a proprietary license, something that does no often make sense with other licenses.
- StudentStuff 8y agoI have found AGPLv3 useful, everything I do is under AGPLv3, if people want to use it under other terms, they can pay me for a branch under a mutually acceptable license. I will not maintain the alternatively licensed branch unless paid, and these branches after a few months are generally missing significant features. Its a fine revenue stream for me, and in the context of what I am building and the companies that are using it, there is absolutely no reason to not use the AGPLv3 licensed master branch or releases, as I know they will never extend my software. Yet some people have an axe to grind with AGPLv3, to which I get to respond "Pay me money or fuck off". Seeing as none of them understand how to write software, they tend to pay me :P Worst case someone extends one of my AGPLv3 projects, adding features and improving it. I'll accept a pull request with no CLA so long as the code is of decent quality.
- danieldk 8y agoI'll accept a pull request with no CLA so long as the code is of decent quality. If you accept contributions without a CLA, you are not the sole owner of the copyrights anymore and you cannot offer a proprietary paid branch, unless all contributors give you permission to relicense their AGPL code as proprietary.
- StudentStuff 8y agoYep, and I'm perfectly fine with this. If someone wants a non-copyleft branch, they can pay me to rewrite the features I didn't author, otherwise I will exclude the added code from said pull request. Its a definite edge case, but if I can get active contributors, I am not about to ask them to sign a CLA.
- 8y ago
- amingilani 8y agoI'm probably going to get a lot of flak for this, but here's an opinion supporting the MongoDB license. Two things: 1. MongoDB has the right to do whatever they like ------------------------------------------------------ The creator of a product: 1. Has a rational interest in maximizing their returns 2. Owns all the rights to their products (barring existing IP restrictions) And if they choose to open source their code: 3. it is of their own prerogative 4. without any obligation to do so. Given 1, and 2, if they open source their code, they're an awesome person because they're revealing some portion of their secret business logic to the public. With that, they are entitled to whatever conditions they put on their code. That includes CLA's regardless of how much potential contributors will protest. It doesn't matter how "against the spirit of open source" a CLA, or an overly radical copy-left license is. The creator of the product will always have an obligation to their own interests first, and since they're already sacrificing trade secrets by revealing their software source (something they were never obligated to), they can honestly do whatever they'd like. And this includes ensuring that everyone using their software open-sources all forks of their software. Heck, even open-sources everything they use in support of their software. Let's face it, if their software just weren't that good, no one would use it. 2. This License Means More Open Source Code ---------------------------------------------------- If the outside world wants more open source code, I don't see why they'd giving MongoDB any flak for this. All this license will do is result in more open-source code. After all, isn't that the point all along? Or are zealous demands for open-source code only valid while it's all about a single popular product by a big company (MongoDB), and not when smaller software components by smaller companies (billing, hosting scripts by SaaS providers)? Edited for grammar and other things my brain missed
- pfortuny 8y agoThe reaction you speak of is called “bitter zeal” in classical spiritual direction. One gets upset because someone else does good but “not as I understand it or not within my group.” Nothing new under the sun.
- rvanmil 8y ago> This License Means More Open Source Code I don't think that will happen. I think they will just sell more commercial licenses, which seems to be the entire (valid imo) point of this license change.
- fabianhjr 8y agoDmytri Kleiner has something to say about this and published a Copyfarleft license called Peer Production License. http://www.networkcultures.org/_uploads/%233notebook_telekommunist.pdf http://www.networkcultures.org/_uploads/%233notebook_telekom...
- yarrel 8y agoNo he doesn't. It's the licensing equivalent of trying to hold your breath until your opponent's face turns blue.
- yarrel 8y agoWay to run with the anti-GPL FUD, LWN.
- kaddio 8y agoThe GPL has more than run its course and it’s time to move on. Many people recognise that, and that’s what we’re seeing.
- binomialxenon 8y agoThis is just typical "people are saying" weasel words. The GPL and similar licenses still definitely have a role to play in the current state of software.
- cyphar 8y agoLWN isn't anti-GPL. I don't know what made you think this -- the title is obviously a reference to people thinking the GPL is "scary" and that the SSPL takes the GPL and actually makes it scary.
- polyomino 8y agoThis has the potential to backfire spectacularly. If anyone is able to abide by this license and offer mongodb as a service, they will dramatically lower the barrier to entry for mongodb hosting. Mongo is betting that their service is uncommodifiable. Perhaps they want to get out of the hosting game altogether, make their money consulting. In that case they’d have made a very competitive hosting market to drive down prices and spur adoption.
- nbsd4life 8y agoit can't backfire too bad, if it does they'll change the license again.
- polyomino 8y agoI think if they change the license back, the damage would already have been done. Competitors would have access to a competitive mongodb service stack.
- gowld 8y agoWhy would a competitor be better at hosting mongodb than mongodb company itself?
- bad_user 8y agoBecause it can be cheaper.
- weinzierl 8y ago>Like Redis Labs before it, MongoDB has concluded that this license allows a bit too much. In particular, cloud providers are offering access to MongoDB instances without cutting the company in on the resulting revenue stream, and that doesn't feel right. In response, MongoDB has just announced an immediate shift to its brand-new Server Side Public License (SSPL). This paragraph conflates Redis' application of the Commons Clause [1] to its add-ons with the switch of the license for MongoDB from AGPL to its own license called SSPL[2]. This are in my eyes two very different things. The Commons Clause is a commercial restriction and its creators are very clear about the fact that it is not an Open Source license. The SSPL, on the other hand is, in my opinion, an adaption of the GPL to new distribution channels that goes even further than the AGPL. I see this as very much in line with the original spirit of the GPL, regardless whether MogoDB's motivation might be primarily commercial or not. These are just my 2 ct from a curious glance and I'd be very much interested how RMS sees this, I hope we will get a statement from him or the GNU project. >There is a lesson here for contributors as well. The request for license approval notes that: "As of this writing, the MongoDB GITHUB repository shows over 43,000 commits, 680 releases, and over 350 contributors." To become one of those contributors, a developer must first sign MongoDB's contributor agreement, which assigns copyright ownership to MongoDB. Those contributors all gave MongoDB the right to relicense their code in this manner [...] CLAs are pretty common nowadays and they can be a problem for potential contributors but pointing at MongoDB, for just doing what many other large OpenSource projects do, isn't fair. [1] https://commonsclause.com/ https://commonsclause.com/ [2] https://www.mongodb.com/licensing/server-side-public-license https://www.mongodb.com/licensing/server-side-public-license
- cyphar 8y ago> I see this as very much in line with the original spirit of the GPL, regardless whether MogoDB's motivation might be primarily commercial or not. I disagree. GPL was never about relicensing other people's software. The SSPL basically requires this if you read Section 13. > CLAs are pretty common nowadays and they can be a problem for potential contributors but pointing at MongoDB, for just doing what many other large OpenSource projects do, isn't fair. Just because many projects do this doesn't mean it's a good thing to do -- the FSF CLA is the only CLA I would find acceptable because it's purpose is to ensure they can relicense to later GPL versions as well as have litigation rights in the US. Several other "CLAs" (like Apache's) are actually just beefed up versions of the DCO. But unconditional and asymmetric CLAs are the reason that OpenSolaris could become proprietary under Oracle, as well as many other horror stories in the history of free software. Many people use them, but that doesn't justify it.
- thu 8y agoWouldn't it be possible for an entity such as Amazon to establish a separate legal entity and thus circumvent MongoDB's Server Side Public License ? The separate entity would provide the "raw" service (where there wouldn't be much to open source) to Amazon, possibly running MongoDB directly on their infrastructure, then Amazon would turn it into a full-fledged SaaS offer.
- gowld 8y agoA SaaS offer sounds like offering MongoDB as a service. The lawyers would enjoy hashing that out for billable hours.
- aequitas 8y ago> "Service Source Code" means the Corresponding Source for the Program or the modified version, and the Corresponding Source for all programs that you use to make the Program or modified version available as a service, including, without limitation, management software, user interfaces, application program interfaces, automation software, monitoring software, backup software, storage software and hosting software, all such that a user could run an instance of the service using the Service Source Code you make available. How could one even practically conform to this license? Unless you are a 100% pure open source house, every company uses proprietary software in some form. Be it the OS/Apps on your developers/operations (management software) laptops (macOS/Windows) or firmware/tooling (ILO, DRAC, etc) of your server stack. I understand they want us to buy a proprietary mongo license, but I don't see how it would even be possible to run mongo as a service without.
- cyphar 8y agoIt should also be noted that they require the "Service Source Code" to be provided under the terms of their license. So it's not possible for anyone to follow these restrictions even on a fully free software stack if any part of that stack is copyleft (for instance, Linux).
- aequitas 8y agoThat was what first caught my eye as well, which would make it impossible. > The affected code must not only be released, it must be made available under the SSPL. But I think it should be interpreted that if you modify the code (mongodb) under SSPL it should be distributed under the same license, like is normal for other open source licenses.
- cyphar 8y agoNo, while they don't have the AGPL section, the wording in section 13 is pretty clear: > you must make the Service Source Code available via network download to everyone at no charge, under the terms of this License. Now, this only applies if you've modified the source code. But being barred from the effective right (due to the requirement mentioned above) to use modified versions of software makes it obviously proprietary.
- platz 8y agoSSPLV2: If you want to use my software freely, you must open source every piece of software you've ever touched or been in contact with, even if you don't own it, or I get to sue you. QED
- binomialxenon 8y agoThe SSPL is what Ballmer thought the GPL was.
- dongping 8y agoOpen source (~= free software) is aimed to protect the freedom of the user, not the freedom of the (proprietary) software developer. By forcing developers to disclose their changes to MongoDB essentially makes the end-users more free, since they can then replicate more parts of the program they are using. ------------------------------ Proprietary software developers use copyright to take away the users' freedom; we use copyright to guarantee their freedom. ------------------------------ https://www.gnu.org/licenses/copyleft.html https://www.gnu.org/licenses/copyleft.html
- bad_user 8y ago> (proprietary) software developer Don't know from where you pulled that off, probably inspired by the communist manifesto, but such software developers are also users and the distinction is entirely superficial in order to advance an agenda. Down with the bourgeoisie, heh? > By forcing developers to disclose their changes to MongoDB essentially makes the end-users more free, since they can then replicate more parts of the program they are using. So wait, "end users" are empowered developers now? Oh, is this a good guys versus bad guys thing?
- pessimizer 8y agoWeird thought, but I think that with this license MongoDB has managed to attack the OSI without attacking the FSF. To me, this is perfectly acceptable Free Software but so strict that it basically reads "do not use this software commercially, it requires you to open every piece of software that any of your employees have ever seen or heard of, including software you do not own. Purchase a license from us." In other words, commercial usage is allowed in the post-revolution Free world that Free Software hopes to bring about, where people have access to the contents of the computers that they interact with, and the freedom to mess with the ones they own. The Open Source concept, however, is not philosophically based; its primary goal is to allow businesses to collaborate on building blocks, but not to prevent them from taking one of those blocks and carving it into something that they're not willing to share. Since their primary goal is to help business, they can't help but disapprove; since they don't explicitly state this goal, they have no nominal basis to reject it without rejecting Free Software in general. I predict some eventual announcement that the license is "effectively closed source" and instead of accompanying that announcement with a specific supporting argument, they'll accompany it with a questionable written history of the OSI. They'll disapprove, or approve with asterisk. edit: and, of course, what kemitchell said.
- dragonwriter 8y ago> Since their primary goal is to help business, they can't help but disapprove; since they don't explicitly state this goal, they have no nominal basis to reject it without rejecting Free Software in general. Without engaging with your characterization of OSI motives, the OSI has a clear basis to reject it without rejecting Free Software in general; unlike all other existing Free Software licenses, SSPL (which might be Free Software) violates criterion 9 of the Open Source definition by restricting licensing of other software not derivative of, or part of a shared work with, the software originally distributed under the SSPL.
- bad_user 8y agoI've been a Free Software supporter for my entire carrier. Let's get one thing clear ... this change by MongoDB Inc wasn't done for preserving user freedom, but for preserving their bottom line. Spinning it into anything else is dishonest. And this is not Free Software in my book because it violates Freedom 0. And I hope the FSF never approves it, or if it does, it just goes to show that the FSF is corrupted.
- gowld 8y agoTitle is misleading. The article is about a new license, MongoDB's Server Side Public License, that is scarier (to freeloaders) than the GPL.
- LeoPanthera 8y agoPeople who use free software are not “freeloaders” and there’s no need to use such a derogatory term here.
- xphx 8y agoCould you explain how the term does not apply? Its meaning seems to be: "to impose upon another's generosity or hospitality without sharing in the cost or responsibility involved".
- dragonwriter 8y agoFree software users are voluntarily given use of the software with only specified conditional responsibilities; them using the software and not taking on additional responsibilities is not an imposition of any kind, and not freeloading.
- xphx 8y agoIsn't that the same as when someone offers me a couch to surf and a kitchen to use? Sure, it's unconditional and I'm not violating any agreement, but if I use their stuff and don't give anything back, am I not a freeloader?
- dllthomas 8y agoBut in that case, you are taking up space on their couch and eating their food - their resources are diminished by your use of them. That's not the case here. I think "free-rider" is probably a better choice of term.
- jbeard4 8y agoI wonder why the RPL isn't more popular for this. It's an OSI-approved license that is meant to fix the "SAAS loophole": PREAMBLE The Reciprocal Public License (RPL) is based on the concept of reciprocity or, if you prefer, fairness. In short, this license grew out of a desire to close loopholes in previous open source licenses, loopholes that allowed parties to acquire open source software and derive financial benefit from it without having to release their improvements or derivatives to the community which enabled them. This occurred any time an entity did not release their application to a "third party". While there is a certain freedom in this model of licensing, it struck the authors of the RPL as being unfair to the open source community at large and to the original authors of the works in particular. After all, bug fixes, extensions, and meaningful and valuable derivatives were not consistently finding their way back into the community where they could fuel further, and faster, growth and expansion of the overall open source software base. While you should clearly read and understand the entire license, the essence of the RPL is found in two definitions: "Deploy" and "Required Components". Regarding deployment, under the RPL your changes, bug fixes, extensions, etc. must be made available to the open source community at large when you Deploy in any form -- either internally or to an outside party. Once you start running the software you have to start sharing the software. Further, under the RPL all components you author including schemas, scripts, source code, etc. -- regardless of whether they're compiled into a single binary or used as two halves of client/server application -- must be shared. You have to share the whole pie, not an isolated slice of it. In addition to these goals, the RPL was authored to meet the requirements of the Open Source Definition as maintained by the Open Source Initiative (OSI). https://opensource.org/licenses/RPL-1.5 https://opensource.org/licenses/RPL-1.5
- tannhaeuser 8y agoInteresting. I guess the RPL however is as toothless as the AGPL when it comes to extend its scope to the provisioning software cloud providers use to run your AGPL-licensed software for their customers, which is the problem I believe MongoDB, Inc. wants to target.
- jbeard4 8y agoIANAL, but I guess this comes down to the interpretation of "Required Components". 1.12 "Required Components" means any text, programs, scripts, schema, interface definitions, control files, or other works created by You which are required by a third party of average skill to successfully install and run Licensed Software containing Your Modifications, or to install and run Your Derivative Works. You have to make the source of the required components available under the RPL (section 6.0-6.1). Would provisioning software to operationalize a database within a cloud environment be considered a "required component"? Maybe. If the cloud provider made modifications to the db source to get it to run well inside of their cloud environment, and did it in a way that made it impossible to run the modified db outside of their cloud environment, without using their custom provisioning scripts, then I would argue that those provisioning scripts would be considered "required components" under the definition in 1.12. But if they are able to run the db without making modifications to it, so that it is the same as upstream, and a third party developer does not need the provisioning scripts to run the modified db, then the provisioning scripts would not be considered required components. So, the RPL is perhaps stronger than the AGPL, but not strong enough for MongoDB or Redis Labs.