PHP'ers:
Ben Ramsey
Brandon Savage
Cal Evans
Chris Shiflett
Eli White
Elizabeth Naramore
Joe LeBlanc
Justin Thorp
Mike Naberezny
Rasmus Lerdorf
Tony Bibbs
Zend Blogs
Zend DevZone
DC Social Media:
Aaron Brazell
Geoff Livingston
Jessie X
Ken Yeung
New Media Jim
Shashi B
Social Times
Technologists:
Jimmy Gardner
O'Reilly Radar
Scott Berkun
Steve McConnell
Business/mISV:
Bob Walsh
Eric Sink
Gavin Bowman
Guy Kawasaki
Joel Spolsky
Micah Baldwin
Paul Graham
Planet mISV
Past Projects:
CodeSnipers
HOBY
Judicial Watch
mobile Fox Affiliates
mobile FoxNews.com
MyDearJohnLetter
NRTW
techRepublican
Great Tools I use:
BaseCamp
Drupal
getClicky
Highrise
phpUnit
Qcodo
Subversion
web2Project
Zend Framework
This is not the home of dotProject. It is the home of CaseySoftware, LLC. Any dotProject support questions should be referred to their support forums.
Nothing included in this post should be construed as anything remotely resembling legal advice. I am not a lawyer, CaseySoftware does not provide legal consultation, and your decisions must be based on your specific sitatuation. Where the GNU Public License is mentioned below, it is refering specifically to the GPL v2. Now that that's out of the way...
Whether you want to acknowledge it or not, copyrights form the foundation of modern software licensing, distribution, etc. Whether you are developing something completely proprietary or developing GPL'd code, it all comes down to copyright.
First, let's cover the basics. Last month at NoVaLUG, Jay Westermeier, an attorney from DLA Piper, identified that there are 5 basic rights in Copyright Law. The ability to copy/reproduce, the ability to modify/create derivative works, the ability to distribute, the ability to perform, and the ability to display. Some of those make no sense for software, but when you consider that Copyright Law has to cover everything from indie bands to the latest Harry Potter book to dotProject, they fit together a bit more smoothly.
As the originator of a work, you get to determine/dictate all of the above which is called "licensing". Unless you give up the rights to the work, you can even go as far as revoking someone's usage of your work if they don't follow the license.
This is where many people get a bit nervous and has caused software licensing to be a contentious issue. Once you buy a physical product, you can basically do what you want with it. There are entire markets based on this concept... PC case mod'ers, hot rodders, etc. Personally, my childhood was filled with a series of old electronics dismantled and eventually led me to seek a degree in Electrical Engineering. Limiting someone's ability to dismantle what they've lawfully received rubs many people the wrong way. Theoretically, if I wanted to limit your license to only use my original software on Tuesdays in January if you own a cat and Mondays in June if you own a dog, I could do it quite easily. Yes, enforcement is another issue all together. ;)
The response to this was the GNU Public License (GPL) which is probably the most common and familiar Open Source License. If Person X releases something as GPL, they are explicitly allowing reproduction, the creation of derivative works, and distribution rights. Open the hood, take out the engine, figure out how it works, put it back together, tweak the processes, do whatever you want... but if you distribute it, you have to distribute it under a specific set of terms.
Notice the interesting aspect though, Person X has not shared the copyright. Licensing != Copyright. The copyright is still entirely owned by Person X and therefore no one except Person X can grant/change the rights granted. This gives them the opportunity to distribute the same work or its derivative under a completely different set of terms. This is how we get the dual license model of companies like MySQL. And it also explains why the purchase of InnoDB by Oracle last year did not affect MySQL immediately. The InnoDB license MySQL has is GPL, therefore, as long as they follow the terms, it can't be revoked.
So what should you get from all of this?
Copyrights and licenses are important and regardless of where you work or what you do, if you work with Intellectual Property of any kind, this is something you need to understand. You can never grant or deny rights that you don't have yourself. If you create something and have the rights to release it as GPL, you also have the rights to release it as something else. If you get something that is GPL, you don't have the rights to release it as something else.
copyright vs. patents
Alternativly, software could be granted a patent instead of copyright. It's often a difficult decision for new, inovative software - do you patent the idea, or copyright the expression of that idea? Sometimes you can't do ether and can only try protect your Trademark.
Ether way, it's good to be familiar with GPL, CC, and other IP licensing :)
Does it mean that GPL
Does it mean that GPL license(or any other Open Source license) can never be revoked?
I believe so
As far as I understand, the original owner(s) can release a copy (same or different) under a different license since they own it but can never de-GPL a version. They can choose to no longer distribute it which - in many cases - would kill its distribution.
This is why MySQL wasn't worried about Oracle's purchase of InnoDB last year. They were using the GPL'd version and as long as they followed the terms of the license Oracle could not prevent them from using it.
If MySQL broke the license, it's a whole other story.
Post new comment