I'm looking at licensing some open source software and am looking at the GPL.  What are the pros and cons of using this license?
Ok, my list of pros and cons of GPL:

Pros


It makes people think hard about whether they really buy into Open Source; are you prepared to live by it, and let other people use what you've written, rather than just liking it because of what you can get out of it?
It makes sure that when something has been developed by the Open Source community, it stays Open Source; no chance of someone taking all the work that others have been doing, repackaging it and selling it on.


Cons


It's a complete no-no for most corporate organisations; they can't afford the risk of GPL-licenced code getting into their products, so virtually all medium-large companies have clauses explicitly banning GPL-licenced code.
It puts people off Open Source.
Is it really fair, that because I use your Open-Source image picker control in my app, my whole app must now be Open Source too?  Even if I improved the image picker and contributed that code back to the community?  The terms are too onerous for many developers.
Lots of people aren't aware of the stringent terms of GPL, so use it as it's the licence they've heard of without realising what restrictions they're placing on anyone else that wants to use it.
Its extremely viral.  If your project contains a component that contains a component that contains a component that is under the GPL (phew!), your whole project is subject to the GPL too.


Ultimately for me the cons outweigh the pros.  To me it smacks of Open Source Evangelists trying to trick the world into going Open Source instead of persuading the world of its benefits.
