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:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
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”.
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.
Wasn't the Affero GPL (AGPL) created exactely to enforce copyleft in a SaaS environment?
Quoting from the GNU website:
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.)