this post was submitted on 28 Aug 2023
671 points (91.5% liked)

Programmer Humor

32562 readers
1188 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 80 points 1 year ago (5 children)

Not a joke.

Copy left is like the Robin Hood of the copyright world. Basically, it’s a type of licensing where, sure, you can use, modify, and distribute the copyrighted work, but there’s a catch. You have to give the same rights to anyone else for any derivative works. So, if you modify the work, you can’t just slap a new copyright on it and restrict its use. It’s a way to ensure that the work stays free for everyone to use. It’s pretty popular in the open source community. It’s like copyright turned on its head, hence the name “copyleft”.

[–] glassware 9 points 1 year ago* (last edited 1 year ago) (2 children)

It's a shame the strategy is now failing because software as a service is so popular. Nothing in the GPL forces you to distribute your changes if you don't distribute the program. So just put the program on a webserver and let users interact through an API and hey presto, steal as much GPL code as you like.

Everyone crucified MongoDB when they tried to create a licence that prevents this, and FSF have declared that the problem can't be solved with licences and everyone just has to boycott non-free software (good luck!).

End of free software as we know it, IMHO.

[–] [email protected] 13 points 1 year ago (1 children)

Wasn't the Affero GPL (AGPL) created exactely to enforce copyleft in a SaaS environment?

Quoting from the GNU website:

[The AGPL] has one added requirement: if you run a modified program on a server and let other users communicate with it there, your server must also allow them to download the source code corresponding to the modified version running there.

[–] glassware 3 points 1 year ago

The problem is these licences treat network interaction as intrinsically different to linking against a dynamic library. If you link against the code with a binary API that's a violation, but if you link against it with an HTTP API it's not.

GNU Affero doesn't help with that. Under either GPL or GNU Affero, all you need to do to defeat the virality of the licence is package the code as a service and put all your modifications into a separate proprietary program that interacts with it.

That's why MongoDB tried to force users to open source their entire service if it involves a copyleft program. It's clumsy but I can see why they did it. We need a modern licence that treats any form of interprocess communication the way the GPL treats linking.

(The page you linked goes on to say that GNU Affero doesn't solve the SaaS problem and it's impossible for licences to address it.)

load more comments (2 replies)