2x25: The First 17 Pages

to @sil’s question of what major GPL Open Source project has external contributors and is less than 20 years old… MariaDB. I don’t have the stats to hand but I believe the foundation gets more source contributions from external companies (such as Alibaba and Facebook) and external people than from the MariaDB Corporation. We are also way less than 20 years old.

Ahem. I’m not sure I count MariaDB as new. It’s MySQL :slight_smile: I’m sure lots of stuff has changed, but unless the claim is that there’s no came-from-MySQL code in it at all, I don’t think it counts…

I think Stephen did a fantastic job representing Microsoft’s open-source side of things to the best of his ability, but he doesn’t represent all of Microsoft or their business practices.

To that end, I still think there are valid reasons to be skeptical of Microsoft and FOSS, and to view the company with skepticism as a ‘fair-weather friend’. It’s like being contacted by an acquaintance (or enemy) who’s been a–hole to you for years and now they want to take you out and buy dinner and drinks. You reluctantly agree after many pleasant interactions at conferences, but the whole time you’re viewing them with complete suspicion and trying to figure out what their angle is. The acquaintance is certainly different now, pleasant even, but you find it hard to shake off that feeling that something is up. Time will tell.

During the episode, what really stood out to me was the question of whether or not Microsoft believes in open-source or not, and I don’t think there was really a good answer for it. They have open-sourced several projects, but we have to wait and see it if they really believe in it. What they have open-sourced seems very calculated to me, from a business perspective.

That said, every Microsoft engineer I have ever worked with or contacted on an individual-level has been awesome and quite pleasant. It’s the company that makes me skeptical, and their sales people…ick.

2 Likes

That then begs the question: “When is a fork no longer a fork?”. MySQL 8.0 and MariaDB 10.3 are both heading in very different directions and there is not much code in common and I think it highly unlikely you will be able to drop-in replace one for the other any more without re-inserting your data. It becomes a Theseus’s paradox.

I think a more relevant debate to have is CLA (like OpenStack) vs DCO (like the Linux kernel). I’ve had many hours (and a trip to Moscow which turned really bad) debating this already. Almost the next evolution of license debates.

If you’re asking, is MariaDB under different management, or does it have different goals, or is it run a different way, or is it striking for new ground, then I’m happy to answer yes to all those questions! But putting it up as a project with an active community which is less than 20 years old, when it’s a fork of a project older than that, is a bit disingenuous :slight_smile: I mean, Ubuntu’s kernel is technically a “fork”, right? and it’s less than 20 years old. But if I were to say “haha that’s an example” then you’d hit me in the face, and rightly so.

…also (please correct me if i’m wrong), AFAIU, the MariaDB-Team did not really have the option to choose any other not-GPL-license, right?

For the server and ColumnStore, we didn’t have an option, no (actually I think we could have done some legal contract thing to change the ColumnStore license but that was before my time).

For clients, tooling, some of the plugins and other things we created we did have options. They are typically GPL for plugins, LGPL for libraries or BSL licensed for tools MariaDB Business Source License (BSL) | MariaDB (turning into GPL after the change date).

1 Like

That’s interesting, thanks. I’d not come across BSL before. At a first glance it does seem a reasonable alternative to open core.

I work for a commercial company, and we don’t use GPL software if we have to statically link to them. The reason is simple. We don’t want to opensource our code. This is nothing to do with rhetoric or GPL being poisoned in anyway. It simply that it requires us to publish our source code and we don’t want to that. So we use permissive licences only. I’m not sure why this is confusing or hard to understand.

2 Likes

Actually MariaDB is a great example that proves the opposite of what LinuxJedi wants it to…

We moved to MariaDB from MySQL because the MariaDB connector is LGPL and this this means that we didn’t have to opensource our code.

We use Maria DB because we can use it with out linking to GPL code and can therefore keep our code closed.

It doesn’t prove the opposite of what I want at all (apart from to state that GPL hasn’t died yet). Every license has its place. Your use case is why HP got me to write a high-performance Apache 2.0 licensed MySQL connector a few years ago (and I maintained a BSD one before that).

But above you stated that you static linked your code? LGPL only allows you to dynamic link with commercial licensed software.

Sorry, my mistake we dynamically linked.

Maybe you guys could help me on this one… but it seems to me that the different licenses have the problem of just having differing audiences.

I remember going through the various open source licenses once for my own work, just out of curiosity. GPLv3 is just ridiculous legalese to read. I felt like I actually needed to write graphs just to understand it. If the intended audience is a lawyer, this makes sense. But I don’t see why a lawyer would actually care about any of the provisions in it. I don’t see why a lawyer would want a license to be reciprocal at all. It doesn’t benefit them.

It also doesn’t benefit a business owner, based on the assumption of “My people build something, then I sell it” mentality. So when a lawyer summarizes the licenses, it doesn’t make much sense. If the business owner reads the license, it still doesn’t make much sense. If they’re looking for the “open source” buzzword, other licenses allow for that. BSD license, as much as I don’t think it’s useful, is a VERY easy to read license, and other non-reciprocal licenses similarly read fairly easily.

But to a developer, there is a lot of benefit to reciprocal licensing. I help you, you help me. I profit form my work, and the only way you can modify it is if I can use your modifications to make my product better. That’s a good deal for both parties. But the GPLv3 just sort of… needs to be understood. And I don’t think it’s an easy read for a non-lawyer to understand.

But I’m not a developer, lawyer, or businessman by profession. Are these things licenses super well understood by everyone, and perhaps I’m just not in the know? Because honestly, the only reason I would put my hobby projects under GPLv3 is out of trust that it’s probably good.

No. They are not well-understood by everyone, and I think the issue you articulate – that the GPL seems like it will add complexity to your life in exchange for an uncertain benefit – is partially behind the decline in GPL usage. Advocates for the GPL aren’t doing a very good job of explaining why people would want to use it specifically; the arguments haven’t changed in twenty years, and even fewer people are listening now.

@nathanlee2 this is an awesome site that will help you understand the basics of any Open Source license, obviously it should not be used as a complete legal coverage of a license. But it gives you the basics in plain English bullet points: https://tldrlegal.com/