When I was younger, mostly hanging around on IRC servers and forums, coding just my own cool projects, I strongly believed in the GPL. All of my projects had it, and I wouldn't even dream of allowing someone to use my code without making their entire project open too.
That's the first type I think. The second type is the more HN-style professional programmer.
Now as I've grown up a little and interacted a lot more with the programming community, I've realised that the GPL licence just causes more pain and frustration to developers. If I want my source code under Apache-2.0, why should I have to change it to GPL just for you.
I want anyone to be able to do whatever they want to with my code. That includes developers wanting to create a proprietary application. Telling them they can't is not freedom.
I feel we've lost ourselves in the freedom of users and forgotten about the people that make the applications for the users.
---
Edit: As a small P.S. to this, I think the middle ground is using the GPL for actual end-user applications, but leaving libraries and developer tools completely open with something like Apache-2.0 or MIT.