views:

182

answers:

4

I've always released my personal code, all of which are small projects, under a GPL license. My reasons are more about personal preferences, but now I'm trying to understand the dynamics of open source and GPL beyond those personal preferences of mine.

I'm looking at GPL projects like MySQL and I'm trying to understand what it means when a company like Sun buys MySQL for all this money. I'm not for or against it. I simply need to understand it.

  • What exactly do they gain from buying a GPL project? Why was it necessary for them to buy it?
  • Does the project maintain its free and GPL intentions after the sale?
  • Who gets this sale price or how is it used?
  • Who decides or votes whether the project gets sold or not?
  • New question: is it very unusual for open source projects to be sold?

I'm hoping those with more years of experience can help me understand those questions that I haven't tried to understand before.

+2  A: 
  • What exactly do they gain from buying a GPL project? Why was it necessary for them to buy it?

It could be a number of things. Who knows. We can only speculate, you'd have to ask whoever bought for their motivations to do so.

  • Does the project maintain its free and GPL intentions after the sale?

That's entirely up to who bought it.

  • Who decides or votes whether the project gets sold or not?

Whoever owns the project at the time of the sale. This could a person or a team.

  • Who gets this sale price or how is it used?

The same people who (used to) own the project. They can do whatever they want with it, it's their money.

DISCLAIMER: I am not a lawyer.

quantumSoup
You should probably edit that back, Sun bought mysql a few years back, although he didn't ask about Oracle here I'm assuming their purchase of Sun is the motivation as we've had plenty of time to digest Sun's purchase of mysql
+3  A: 

What exactly do they gain from buying a GPL project? Why was it necessary for them to buy it?

Depends on the project, but presumably one common reason would be that they want to get the code under a non-GPL license. If the project owns copyright on the code then whoever buys it gets that and can then do what they want with it.

So in this case, Oracle might hypothetically have wanted some cunning piece of technology from MySQL but can't just take it directly without GPLing Oracle itself. Having bought MySQL, they might now be able to use it without that problem. This is just an example; I don't know if it applies in this case, but is a general reason why a company might want to buy a GPL project.

Peter
Code that was release under GPL is *always* under GPL; Oracle only gets the code written after they change the license, if they change the license. Oracle got a lot of in-house experience all of a sudden, at least.
Dean J
The owner of the copyright of that code can release it under another license, or use it in whatever way they want for their own projects, which they can then also license however they want. However, unless all MySQL contributors assigned copyright to MySQL AB, Oracle are not the owners of every line of the code. They would need to get permission from every last contributor to relicense.
detly
It's always under the GPL, but that doesn't mean it's *only* under the GPL. The GPL is a use of copyright, and buying a copyrighted program released under the GPL probably isn't all that different from buying a copyrighted program released under a commercial license. You can choose to release further versions under that license, or not, but you bought the right to the code itself either way.
Ken
@Ken - they didn't buy the complete rights to it unless every contributor assigned copyright to the company they bought. I honestly don't know if that's the case, though. If it's not, they'll need to get the agreement from every contributor before releasing it under any other kind of license.
detly
I'm only offering that as an example - it's quite possible that wasn't the case here. There *are* projects that do work that way though - OpenOffice for example. Or Qt might be a better example - once Nokia bought Trolltech, they could relicense it as LGPL even though it was GPL previously.
Peter
+13  A: 

An important distinction: Sun didn't buy MySQL project, they bought MySQL AB, a Swedish company that did majority of MySQL development.

Why did they do it? We can only speculate, and here's my speculation. Sun is (well, was) mostly a hardware company that pursued a strategy of complements i.e. they didn't focus on making money from software. For them software is a complementary to their hardware. If desirable software runs better on Sun computers than on other hardware, Sun will sell more computers.

They bought MySQL for two main reasons:

  • the team of programmers that can ensure MySQL runs best on Sun's hardware
  • control over the project. While GPL allows anyone to fork the project, a de facto control of the project's future belongs to those who do the work i.e. MySQL programmers who are now Sun (well, Oracle) programmers..

Does the project maintain its free and GPL intentions after the sale?

You can't revoke GPL license. The code release under GPL stays GPL. However, if you own copyright to all of the code, you can change the license at any time. This new license, however, would only apply to new code written after the change. Furthermore, Sun didn't do it.

Who decides or votes whether the project gets sold or not?

Like I said, Sun didn't buy MySQL project. They bought MySQL AB, a company, so the sale was decided by owners of the company, following Swedish law in such cases.

Who gets this sale price or how is it used?

Again, since it was a sale of the company, the usual rules for selling a company under Swedish law apply. Presumably, the price was distributed among company's shareholders based on their ownership percentage.

Is it very unusual for open source projects to be sold?

Again, projects cannot be sold. It's either the code or the team. Cases like MySQL AB, where a company does one open source project, retains full copyright control of the code and then gets bought are very rare. What happens more often, but still rarely, is when people involved in a successful open-source project start a company doing consulting or selling services related to that project e.g. Couchio company was formed to offer services related to CouchDB. Another thing that can happen is that people involved in an open-source project get employed by a company that wants to support the project e.g. VMWare hired the developer of Redis, Sun once hired people involved in JRuby and JPython etc.

Krzysztof Kowalczyk
+2  A: 

MySQL is a product owned by a single company (MySQL AB bought by SUN and now Oracle) and also available under GPL license (community edition). PostgreSQL for example, is a project that develops a product PostgreSQL and distributes the code using a BSD-style license (PostgreSQL license). The PostgreSQL project doesn't have a owner, nobody can buy it. Members and contributors of a project can leave the project, that's up to them and happens all the time.

When looking at open source, make a difference between project and product.

Frank Heikens
Interesting distinction, but there's nothing to support it. The difference between product and project is only conceptual. A company can control a project, just like it can own a product. No?
Kamo