Hacker News new | past | comments | ask | show | jobs | submit login

> Maybe I got the timelines wrong - isn't that what was originally happening with Mongo and AWS - AWS was hosting Mongo when it was still under AGPL?

Absolutely not.

The AGPL terrified AWS so much that they did a clean room implementation and built an entirely new database that was wire compatible with MongoDB.

Hence, Mongo relicensed under a new license, the SSPL, that says if you implement an SSPL-covered API, the SSPL extends.




Interesting - so a clean room implementation is somehow more attractive than complying with the AGPL.

So AGPL is open source, but in practice it seems like it's so much more restrictive than something like BSL that is not open source.

This just makes OSS vs not-OSS seem like even more of an theoretical line in the sand.

As for

> Hence, Mongo relicensed under a new license, the SSPL, that says if you implement an SSPL-covered API, the SSPL extends.

That definitely looks ugly on Mongo, implementing an API is such a fundamental part of software compatibility. Seems like the exact wrong way to go about it.


Amazon didn't implement an entirely new database. As you can see on https://en.wikipedia.org/wiki/Amazon_DocumentDB, they just built an (admittedly clever) PostgreSQL plugin on top of Aurora PostgreSQL.


Aurora PostgreSQL is based on Aurora, which amusingly traces its roots to MySQL, but that was a long time ago. You can decide how many planks Amazon must install on the ship of Theseus before you're willing to call something "a new database", but the fundamental point is that none of those planks came from MongoDB, thanks to AGPL3.


This is one of the big reasons I think that discussing "open source" is dangerous and tricky. It's not a binary, and there's no one monolith that decides what it is/it isn't. Even ignoring the traditional "FSF vs BSD" holy wars, there's plenty of depth. For example: is the JSON license[0] open source? It's certainly permissive enough, but lots of different groups have different interpretations as to why it isn't: the FSF[1] says it violates their freedom zero, that a user has the right to run a program as they want for any purpose; the OSI says it isn't because their licenses cannot discriminate around intent - quite literally, the OSI supports Evil here ;-)

I've released code under permissive licenses (Apache, BSD, and MPL that I remember off-hand), and at least one feature I know made its way into a commercial product. In those cases I simply didn't care because I didn't consider the code particularly novel, important, or special. It scratched my itch. Occasionally it scratched my employers itch, so I was already paid to write it, which was nice.

If I ever write code that I consider novel, important, or special, I plan to release it under AGPL3 - while you may think Google is overreacting on accident or to create FUD around it, the plain text of the license makes the intent exceptionally clear:

> public use of a modified version, on a publicly accessible server, gives the public access to the source code of the modified version.

This alone is enough to make the AGPL3 blacklisted anywhere that wants to keep their source closed: you may believe the courts would decide for the big corporation if push comes to shove, and you may even be right, but practical evidence shows that almost nobody wants to risk it.

Part of the problem here is that a generation of programmers seems to think that open source is all the same, so a license is something that you just whack <enter> to when your scaffolding tool suggests one. But in reality, talking about "open source" is useless at best and dangerously imprecise at worst, talking about licenses is the only way to get people on the same page.

> That definitely looks ugly on Mongo, implementing an API is such a fundamental part of software compatibility. Seems like the exact wrong way to go about it.

It did the trick for them, at least against AWS: as expected, they successfully forced the wire format to diverge after AWS launched DocumentDB. It also got them pulled from Debian, Fedora, and I don't know how many other distributions for being non-free. But hey, at that point, they were already a known quantity, so it probably won't hurt in the long run.

[0]: https://json.org/license.html

[1]: https://directory.fsf.org/wiki/License:JSON

[2]: https://opensource.org/osd




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: