3 ms·
The GPL solves very few problems nowadays, because most software isn't distributed anymore. The AGPL solves a specific issue: a company is running an undistribu
by ryan_lane 4y ago
The GPL solves very few problems nowadays, because most software isn't distributed anymore. The AGPL solves a specific issue: a company is running an undistributed, modified version of the code, which is accessed by end-users, that gives them a business advantage.
Elasticsearch is a good example of a problem that isn't solved by a different license. Amazon is running essentially unmodified versions of elasticsearch, which competes against the business model of the company building elasticsearch. Even with an AGPL license, elasticsearch (the company) is not going to be making any money.
If a company isn't interested in upstreaming changes, it probably won't help that they're using an AGPL license. If the code isn't user-facing, the license won't force them to make their changes available. Even if it is, often changes a company doesn't want to upstream are very specific to them and aren't useful to others. Even if it's business valuable, and the company makes the changes available, they won't be making it easy to integrate.
The AGPL, more than anything, places a burden on users and developers, and reduces the community size. Most companies don't allow the use of AGPL software, and in the cases they do, they often only allow its use in an unmodified way, or only allow modifications if it isn't user-facing.
- systems_glitch 4y agoThat was our main reason for scrutinizing AGPL libraries at $previous_job. IIRC our biggest concern was over iText (Java PDF library) and other libraries that depended on iText. In our case, we ended up not having to modify anything and were fine, but if we did have to modify, it'd have been to include trade secret features, which are a non-starter for distribution! It's a nasty, complicated situation with bad actors on both sides.
- hnfong 4y ago> because most software isn't distributed anymore You're probably thinking of SaaS, but, still, what? I'd argue we distribute software much more than say 20 years ago. Almost every web site you view is distributing non-trivial software (javascript, from maybe a dozen npm packages). App stores are making software distribution much easier for the average user. Programmers are increasingly using dependency managers to download libraries. Even every SaaS service is getting their software from somewhere, and the tech stack is increasingly complex these days, which means even more software being distributed and used. Perhaps what you mean is "software isn't sold anymore", so the money is all in the services. Which is probably true, and this is probably where GPL is becoming irrelevant. But then, it can be argued that the services model was in part the industry's response to the prevalence of GPL, which pushed businesses to find workarounds. People need to make money, and if software sales isn't generating enough dollars because GPL software pushes down the prices people are willing to pay, then they'd just invent reasons for users to buy services instead. -- which, if true, could be interpreted as a success story for the GPL.
- ryan_lane 4y agoYou have to truly hate people to license a library using anything but a permissive license, especially in the javascript ecosystem. Nothing ruins your day quicker than finding a transitive dependency with a copyleft license. Maybe I should have been clearer. Most actual products based on OSS aren't distributed anymore. They're SaaS. The majority of the most popular app store apps are clients to a SaaS product.