I know that this is not a popular opinion, but I disagree with the philosophy behind the GPL. While I think that sharing is fine (and for that there are the BSD and MIT licenses, among many others), I believe that it is very often better for both developers (and users) if users pay for the software they use. (And yes, I have heard the pro-GPL argument about how you can charge for support, but I know that's bogus in practice.)
I am not saying the GPL should be outlawed or anything like that. I'm just saying that it's not a moral ideal (the actual moral ideal is you making a sustainable living off of the code you write), and it's practically speaking a bad idea in many cases.