Live data from Hacker News

Why we picked AGPL

blog.paradedb.com

21–30 of 312 posts

Re: Why we picked AGPL

#21

Earlier quoted context omitted.

> which is also the case with GPLv2 No it isn't; under the GPLv2, the source code must be available to those to whom compiled code has been redistributed. Whether they are users doesn't matter. The restrictions are that if you violate the license, your use of the program is infringing. > What can I not do with AGPL software? You cannot change it and run it yourself, without hosting the source code. You cannot combine…

>> What can I not do with AGPL software? > You cannot change it and run it yourself, without hosting the source code. So your point is that people should be free to take whatever they want for free and dont't contribute back? I'm glad there is a license made to put a limit on people like you then

I've spent thousands of hours writing code which is under the BSD license. Nice try trying to make the argument about me.

(I've not put anything under even the dubious GPL license in over 15 years, and never will.)

Yes, a free software license must not require people to "contribute back", or anything of the sort.

For instance, a "free for non-commercial use" license is not free. Even the people who came up with the AGPL understand this, and go to great pains to explain it.

I understand the social problem that the AGPL is trying to combat, whereby visitors are held captive by saas applications over which they have no visibility or control.

The AGPL approach is to use the power of a non-free license against the problem which makes it a cure worse than disease, and repugnant to developers of truly free software.

It's almost certainly the case that the saas problem cannot be engaged via software licensing terms, if those terms are to amount to a free software license.

I don't have a better idea, either, but that doesn't change the fact that the AGPL is a non-free license which crosses over into governing use rather than just redistribution.

Also one issue is that the AGPL doesn't actually solve anything. Visitors having the source code to my evil saas platform doesn't solve the problem that they're locked to it. It doesn't solve the problem that I can change the code at any time and they cannot. Or that I can shut it down and wipe out their data, or share it with third parties. An AGPL conforming application also need not provide visitors with any way to export their data.

Re: Why we picked AGPL

#22

Earlier quoted context omitted.

> which is also the case with GPLv2 No it isn't; under the GPLv2, the source code must be available to those to whom compiled code has been redistributed. Whether they are users doesn't matter. The restrictions are that if you violate the license, your use of the program is infringing. > What can I not do with AGPL software? You cannot change it and run it yourself, without hosting the source code. You cannot combine…

>You cannot change it and run it yourself, without hosting the source code. Yes I can. It's only if I let other people use my changed code that they become entitled to a copy. >You cannot combine an AGPL program with proprietary code and operate it, because you cannot release the proprietary code. hmm, gotta say that sounds like the proprietary code is the thing infringing on my usage.

Well no, someone combining the proprietary code with the AGPL code infringes if they run that code such that it is exposed to visitors.

Re: Why we picked AGPL

#23
post #19

Earlier quoted context omitted.

Running a program, as a service or not, isn't redistribution. It is use. The original spirit of the GPL is about identifying people doing bad things we don't like and trying to prevent them. All those bad things have to do with redistribution, not with using the program. The AGPL is still about identifying people doing bad things we don't like, except now those people are just running the program. This is no differen…

> The AGPL is still about identifying people doing bad things we don't like, except now those people are just running the program. Its the same "bad thing" as distributing a modified binary without the source. Its a way of denying end users access to the source code. You can do whatever you like with AGPL code, as long as you make the source available. it is VERY different from saying "you cannot do this with your so…

The AGPL is absolutely a EULA.

The user of a program is the one who installs it somewhere and runs it.

Outside people interacting with the program are visitors. They don't have the source code because they don't have the program at all in any form. It has not been distributed to them.

The source code to the program doesn't even do them any good. They cannot use that to prevent harms perpetrated by the operators of that application.

Re: Why we picked AGPL

#24
I love the AGPL. I can't imagine it becoming popular for generic business functionality in library form, but for highly-specialized libraries (in my case scientific with industrial applications) it was everything I was looking for --- not least because automated license scanners flag it and scare potential parasites away. It's also a great choice for complete pieces of software (such as DBs, as in this case) to offer a free tier for communal benefit, provided you're genuinely willing to let the project develop a life of its own if the open source community finds reason to mobilize around it.

For academic use AGPL compliance is a natural part of life anyway, for non-profits it's a little bit of effort but there's no fundamental objection, and when companies get involved it ensures that either my collaborators and I get a payout for SaaS-ification/proprietarization, or that it only gets used in internal tooling, which means that money gets redistributed to labor (often also to us via consulting fees or custom development arrangements anyway, since we know the code best).

It's a model for software development that I can really get behind.

Best of luck to you!

Re: Why we picked AGPL

#25
post #19

Earlier quoted context omitted.

> The AGPL is still about identifying people doing bad things we don't like, except now those people are just running the program. Its the same "bad thing" as distributing a modified binary without the source. Its a way of denying end users access to the source code. You can do whatever you like with AGPL code, as long as you make the source available. it is VERY different from saying "you cannot do this with your so…

The AGPL is absolutely a EULA. The user of a program is the one who installs it somewhere and runs it. Outside people interacting with the program are visitors. They don't have the source code because they don't have the program at all in any form. It has not been distributed to them. The source code to the program doesn't even do them any good. They cannot use that to prevent harms perpetrated by the operators of th…

A EULA needs to be a contract. THe AGPL is clearly not a contract nor does it meet the basic requirements for an enforceable contract in common law countries. Can you show me where I am wrong about this?

> The source code to the program doesn't even do them any good. They cannot use that to prevent harms perpetrated by the operators of that application.

It does. It means they can run their own instance instead of being permanently tied to the operator of the service. It means they can modify and run the software.

> They don't have the source code because they don't have to program at all in any form.

That is sophistry. For the type of software AGPL is designed for the functionality provided is the same as it would if they had their own install. It is called "software as a service" for a reason.

The reason the AGPL exists is because the rise of SAAS has made the distinction you are making meaningless.

> They don't have the source code because they don't have to program at all in any form.

Users of GPL software do not "have to program". The point is they can. The same is true with AGPL.

Re: Why we picked AGPL

#26
post #25

Earlier quoted context omitted.

The AGPL is absolutely a EULA. The user of a program is the one who installs it somewhere and runs it. Outside people interacting with the program are visitors. They don't have the source code because they don't have the program at all in any form. It has not been distributed to them. The source code to the program doesn't even do them any good. They cannot use that to prevent harms perpetrated by the operators of th…

A EULA needs to be a contract. THe AGPL is clearly not a contract nor does it meet the basic requirements for an enforceable contract in common law countries. Can you show me where I am wrong about this? > The source code to the program doesn't even do them any good. They cannot use that to prevent harms perpetrated by the operators of that application. It does. It means they can run their own instance instead of bei…

Sorry that was a typo we should have said "do not have the program" (corrected).

But no the same is not true of the user of the AGPL. The GPL user having the source code and being able to program or hire somebody is utterly meaningful. That user controls the installation of the program. They would like the program to do something differently, or not to do something unwanted. With the buildable source code they can achieve that.

The visitor to the AGPL application have access to the source code has no meaning at all. They don't have the administrative access to replace the implementation (and even if they did, that was just create conflict with the other ivisitors).

The ability to set up your own clone instance its completely meaningless. For example suppose that's some government service website is using AGPL software. What do you gain by downloading the software and running your own instance? That's not where your data is; you can't use that cloned instance to communicate with the service agency.

It is the AGPL that's using outdated concepts in a new context where they don't make sense. (Licensing helped us win the open source war in the 1990s and 2000s, so it'll work this time too right?)

You also may be thinking of the software of being something like a photo editor or word processing application that is hosted, but in which the visitor works with only their own files in isolation from other visitors, and from the site operators. I don't think that's the main target for the AGPL. That may be called "strawman AGPL". I tend to agree that the AGPL may be effective in this limited situation. But effective is not the same as free. A "free for personal use" software license is also effective at achieving the aims of its purveyor but isn't free.

Re: Why we picked AGPL

#27
post #18

Earlier quoted context omitted.

LGPL also allows that. What MPL is missing AFAIK that AGPL does have is requiring making source/changes available when providing the software as a network service.

No, LGPL has specific requirements for static linking. When your product is usually a Go binary that you can publish as is, using an LGPL library makes it tricky. And re network service, I don't see the MPL tying the requirement to making changes available to a method of distribution.

Good point. I am used to thinking in terms of thinks that are dynamically linked.

Re: Why we picked AGPL

#28

Earlier quoted context omitted.

>> What can I not do with AGPL software? > You cannot change it and run it yourself, without hosting the source code. So your point is that people should be free to take whatever they want for free and dont't contribute back? I'm glad there is a license made to put a limit on people like you then

I've spent thousands of hours writing code which is under the BSD license. Nice try trying to make the argument about me. (I've not put anything under even the dubious GPL license in over 15 years, and never will.) Yes, a free software license must not require people to "contribute back", or anything of the sort. For instance, a "free for non-commercial use" license is not free. Even the people who came up with the A…

> Also one issue is that the AGPL doesn't actually solve anything. Visitors having the source code to my evil saas platform doesn't solve the problem that they're locked to it. It doesn't solve the problem that I can change the code at any time and they cannot. Or that I can shut it down and wipe out their data, or share it with third parties. An AGPL conforming application also need not provide visitors with any way to export their data.

Please enlight us about how the BSD license do it much better in this area. You first complain that AGPL is restrictive now complain that it should restrict even more? I agree with you, maybe it is time for another version of AGPL that includes data sovereignty. Let's make it more difficult for corporations to profit from FOSS free labor, not more easy.

Re: Why we picked AGPL

#29

Earlier quoted context omitted.

I've spent thousands of hours writing code which is under the BSD license. Nice try trying to make the argument about me. (I've not put anything under even the dubious GPL license in over 15 years, and never will.) Yes, a free software license must not require people to "contribute back", or anything of the sort. For instance, a "free for non-commercial use" license is not free. Even the people who came up with the A…

> Also one issue is that the AGPL doesn't actually solve anything. Visitors having the source code to my evil saas platform doesn't solve the problem that they're locked to it. It doesn't solve the problem that I can change the code at any time and they cannot. Or that I can shut it down and wipe out their data, or share it with third parties. An AGPL conforming application also need not provide visitors with any way…

> Please enlight us about how the BSD license do it much better in this area.

It doesn't, but it's a starkly free license which lets you do almost anything you want, short of plagiarism.

> should restrict even more

Nope; I'm explaining that it's ineffective against the key harms that may be perpetrated by SaaS. No license is; licensing is the wrong tool.

Re: Why we picked AGPL

#30
post #25

Earlier quoted context omitted.

The AGPL is absolutely a EULA. The user of a program is the one who installs it somewhere and runs it. Outside people interacting with the program are visitors. They don't have the source code because they don't have the program at all in any form. It has not been distributed to them. The source code to the program doesn't even do them any good. They cannot use that to prevent harms perpetrated by the operators of th…

A EULA needs to be a contract. THe AGPL is clearly not a contract nor does it meet the basic requirements for an enforceable contract in common law countries. Can you show me where I am wrong about this? > The source code to the program doesn't even do them any good. They cannot use that to prevent harms perpetrated by the operators of that application. It does. It means they can run their own instance instead of bei…

> A EULA needs to be a contract.

Nope. It can just be a piece of text you agree with when opening a classic mass-marked app in a shrink-warpped box ("shrink-wrap EULA") or a dialog box with text where you have to click that by using the software, you agree with the licensing terms.

Exactly the same as when you deploy an AGPL program for visitors, you are agreeing to its EULA.

Post reply on HN