Given all of the other FUD around GPLv3 from Linus et al, it seems like they wouldn't have lost much if they'd kept it in (or maybe they should've gone with the LGPL model, where the main license has the restrictions but they have a separate license which reduces the restrictions). But hey, hindsight is 20-20.
The early public drafts of GPLv3 had already rejected the idea of incorporating an Affero provision in a strong sense. Instead, they explicitly classified AGPLv1-like Affero conditions as GPLv3-compatible -- but note that no otherwise GPLv3-compatible licenses with Affero conditions existed at the time, and it wasn't especially likely that they would spring into existence. Note that inclusion of some sort of Affero-like provision was already a publicly controversial issue in the run-up to the release of the first public draft of GPLv3, which you can see in some of the news coverage from the period (late 2005).
There was resistance or objection to the sort of compromise around network services the early drafts took, but this basically took the following forms: (1) some individuals (who I would say were mainly associated with the Debian Project or the FSF staff itself) argued that GPLv3 should have directly adopted an Affero provision, though one without the perceived flaws in the AGPLv1 version, which were sort of carried over into the wording of the draft compatibility provision; and (2) some companies (representing financial services interests who had come to be dependent on Linux for data center operations) raised concerns about the compatibility clause leading to an Affero-specific license proliferation problem. Outside of those two viewpoints there wasn't much interest in the issue, once the public drafts of GPLv3 were released.
The eventual solution, responsive to those two points of criticism, was to get rid of the compatibility solution in favor of a single, separate, FSF-authorized, GPLv3-compatible Affero license, with the Affero provision worded in a way that avoided the perceived flaws of the AGPLv1 approach.
If you prepare a derivative of a GPL app as a work for hire, what GPL rights would you have? You don't own the copyright on the modifications, the employer does.
> You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you.
> Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary.
So based on my reading, your employer can convey the software to you without complying with the normal copyleft terms.
Only once the software has been distributed by the employer to a third party do you, the employee, get rights to that GPL software. You can replace GPL with other licenses, the premise remains the same: an employee is part of the employer and not a separate entity.
I will add if the company fixes their GPL violation then the employee is now violating the new license (since the GpL licensed code wasn’t valid in the first place). So it is best to not pirate any code even if you think it should be open (until the employer has confirmed in some way)
If I loan you my laptop brimming with free software, and you use it for a day, have I redistributed the software to you? No. You had use of a computer you didn't own executing the software, no copy was made. It's no different from the well-known SaaS loophole the AGPL attempts to close.
I don't know the actual reason, but these are my opinions. First, I seem to remember at the time the GPLv3 was being worked on there was some push to include the language from the AGPL. I believe (though I could be mistaken -- it was a long time ago) that the wording in AGPL was considered to be a bit ambiguous. There was some worry that the definitions of "convey" and/or "propogate" (I think) were not on solid footing. Eventually all that got sorted out and without looking at the original text of the AGPL I can't recall off hand, but I think they changed the text for AGPLv3.
I think there was also some concern that perhaps AGPL was not the way to go. As you no doubt know, the intent of the GPL is to allow people to run software for any purpose. You can even modify the software and keep it to yourself. The need to include source code only ticks in when you distribute the binary -- so that the recipient has the same abilities you do (minus the ability to change the license). There definitely was some discussion at the time whether or not the AGPL's further restriction impinged on Freedom 0. I admit that I mostly ignored this conversation, so hopefully someone else will give you a better answer.
For myself, I've mostly moved over to the AGPL, but I still find some of the wording to be not as good as I would like (I won't bore you with the details). I feel that the GPL is a more secure and conservative license that has been tested quite thoroughly in the court. It was a difficult choice for me to decide which one I wanted to go with since I agree with the aims of the AGPL license, but don't quite trust it as a legal document to the extent that I do the GPL. I presume others feel the same way I do.
> 2) why should companies be able to keep proprietary version from being distributed?
Possibly my reasoning will appeal to you because it is bereft of moral qualifiers ;-) A license is a license. In most cases licenses give the recipient more freedoms than they would enjoy without the license (otherwise they wouldn't need a license -- in some complicated licenses you give up something in consideration for something else, but I won't get into that). The question is how much freedom should you give the recipient of your program?
I value software freedom. The software world is vastly better in my opinion since the concept of software freedom came into existence. I want to promote this kind of software and hope that it dominates for most software that I will come into contact with. Because of this I write free software and think hard about how to make pure free software businesses work (currently writing a game of all things...)
The most important part of free software from my personal perspective is the idea that there is an even playing field. To be honest, I don't even like the idea that the upstream author can change the license on you if they control the copyright. As a user, I want some continuity. I don't want to have a split where suddenly my local contributions have less value because I have to compete against software that I can no longer contribute to. This is not a moral choice in my personal view. It's purely selfish. I choose to use free software particularly because it stops a lot of shenanigans from the upstream producer.
On the other hand, as an author I also have needs. I choose to write free software. My downstream users do not necessarily have the same point of view that I do. I am not going to change the license (and encourage multiple copyright holders in my projects specifically to make it difficult to change the license). I don't want to compete against a downstream that has more options than I do. It's purely pragmatic.
Now, the question you will undoubtedly ask is, if I'm OK with this restriction, why am I not OK with the restrictions in these SaaS licences. Surely I understand that they are trying avoid competition with a downstream that has no obligation to contribute and can supply the same service with a higher efficiency (and therefore lower cost).
In truth, have a considerable amount of sympathy, but there are really two key issues. First, I do not want to use software with those restrictions. It's not like I wish fire and death to them, but I'm decidedly blaze about their existence. I'd rather collaborate with groups that treat me how I want to be treated, rather than groups that are not as bad as the other guys.
From an author's perspective, I understand their plight, but I actually don't think SaaS is a good way to sell services. It's rent seeking. As much as I appreciate the idea of a near O(1) (per user) complexity for cost structure, I think it results in services that... don't have much service if you get my idea. It devolves into the Googles of the world and I'm not actually that keen on it. I think there are better business models waiting to be discovered (but I'm busy with my crazy free software gaming business model and there is only so much crazy that even I can keep track of, so don't ask me to do it).
But, if they want to do it, I'm not picketing their offices. Neither am I picketing Microsoft, Adobe, or even Oracle. I don't like it, but I'm not king of the world. If you ask me to cheer them on? No thanks. If you ask me to say, "Surely this is better than not having it?" No thanks. It definitely isn't for me.
Big yikes. That is a really intriguing idea.
Rent-seeking to me means that the seeker has exclusive control over some asset that they did not themselves create, and uses that to extract rent from people who want access to it.
Amazon selling free software SaaS doesn't seem like rent-seeking, because Amazon don't have exclusive control over anything. They just offer better value than their competitors, for various reasons.
MongoDB selling SSPL'd SaaS doesn't seem like rent-seeking, because they invested in creating the software, and they aren't stopping anyone else from selling it as SaaS either, just requiring them to do so on a sort of level playing field.
Even Oracle selling proprietary SaaS doesn't seem like rent-seeking, because they invested in creating the software.
What am i missing?
It's not immediately clear that there is an analogue of location for SaaS.
Which is why ytur point about lock-in is interesting. It's not so much that lock-in is part of rent-seeking, so much as that lock-in creates the analogue of "location" needed for rent-seeking (maybe?). Once people are stuck in AWS, Amazon can charge higher prices for shittier services, because people have a reason to be there over and above value for money.
1) why wasn't AGPL used for GPLv3?
2) why should companies be able to keep proprietary version from being distributed?
The second one I can see being possible by having employees agree not to exercise their GPL redistribution rights as a condition of employment. Still it seems like a large group of companies could all agree to that kind of thing to effectively take a GPLed work private.
But yeah why have AGPL as a separate thing?