On the contrary. GPL helps those people that I want using my code to do so. Namely, those people who would contribute code back under the GPL. The GPL encourages them to do so, while BSD hurts this cause. So it's BSD that is a hinderance to my code, not GPL.
"GPL prevents any proprietary software maker from using your software."
Good. They can go fuck themselves.
Proprietary software makes can pay programmers to write software for them. I'm not going to help them for nothing if they're not going to contribute any changes they make back.
"Software companies need to make money for a living, and most of them want to do it selling their software, not hoping someone will pay them to support their software."
They're welcome to try to make that money without my giving my code away to them for free.
"In practice there's no difference between BSD and GPL in the worst case, and in the best case, BSD is better."
You're dreaming. GPL has proven its value time and again. The only reason to use BSD is if you want to help someone make a profit for free, without them contributing anything back, and let your own code be assimilated and made closed-source. I choose not to do that, thank you very much.
"Some awesome devs make Cool GPL Software™. Hundreds of large proprietary software companies like the look of the software, but it's GPL, so they can't use it."
Once again, fuck large proprietary companies. I have zero sympathy for them, and aren't going to be slaving away for them for free.
Likewise there's not something wrong with with only writing open source for open source, where you will be priviledged to have any enhancements made to your code available to you.
And if 'you actually want to make money writing software' then you really can't demand that there should be code lying around for you to use and sell.
Complaints about people not wanting to write code that proprietary companies can use for free and sell simply appals me. As if the 'companies' should have some god-given right to use open source and make money?
Yeah, good think Linux is BSD, otherwise it wouldn't have any companies writing code for it. Oh wait...
Edit: And yes, there is LGPL, but its language is completely unsuitable for anything non-binary, like scripting languages, and hence could use some updating. If I import a node.js module into my namespace, am I merely linking to it or not? What if I start monkeypatching it?
GPL is a 'kiss of death' for proprietary uses. So yes, needless to say, if your code is aimed at being used by both open source AND proprietary then GPL is NOT the choice.
However if you are not interested in supporting proprietary programs with code and want access to any enhancements made to the code you've released then GPL is a perfectly valid choice.
GPL works great until someone builds a superior non-GPL-licensed alternative. Then it becomes irrelevant.
There's no point with enhancements being made when they are kept under proprietary lock and key.'
There, your arguments hold no water. There is no 'right' or 'wrong' licence, there is only the needs of the code author/owner.
And if someone builds a 'superior' alternative then it doesn't much matter what licence it uses, the point is it being 'superior' code which in turn is what would make something 'irrelevant'.
Also, you seem to equate a permissive license with 'lock and key'. My experience is the exact opposite, having released software under both GPL and BSD-style licenses.
I've received tons of emails from people asking me to change the license on a piece of GPL code over the years. Nobody's ever asked me to make something GPL that wasn't.
It's a pretty good indicator that the GPL prevents people from getting shit done, but that few people other than idealists of the Stallman type really care about it.
>Nobody's ever asked me to make something GPL that wasn't.
Why would they? If you've licenced it permissively they can include it in their GPL licenced if they so wish. It doesn't affect their decision in licencing their code as GPL.
>Also, you seem to equate a permissive license with 'lock and key'.
No, I was pointing out that enhancements done to permissive code which is not being open sourced is in no way better than your assumption that if something is GPL then chances are enhancements will never be made. On the other hand, if there are enhancements made (and distributed) then GPL makes sure those enhancements will be open sourced and available to all recipients.
>It's a pretty good indicator that the GPL prevents people from getting shit done, but that few people other than idealists of the Stallman type really care about it.
I'll counter your anecdotal evidence with the following anecdotal evidence:
Linus Torvalds and lots of other Linux kernel developers have stated numerous times that they think GPL(v2) is a 'perfect' licence and they attest alot of Linux success to that very licence choice.
Now I don't understand why some people (like you) are so adamant at attacking other licences other than your particular preference. GPL and BSD/MIT etc are great licences which are generally being preferred for different types of code. GPL is mostly used for 'self-contained' projects (typically applications) while permissive licences are mostly used for component/framework/library style code.
People _choose_ to licence their code under these licences, it's not unusual that people licence some of their code under copyleft and some other code as permissive. Choice is good.
Well that's quite a big "speak for yourself" if I ever saw one.
If you're only in it for being recognized, ANY project you embark upon will be a huge disappointment, at least for quite a long while. On the contrary, I think most FOSS projects solve a need, particularly (and yes, sometimes only) for the lead developer. If it solves the needs of others, they will jump in. The license doesn't really enter into that part of the equation. It's only about whether or not you want to make a call on what that community around your work looks like and evolves.
You're very much forcing the argument by making it all about the attention of "large proprietary software companies". But there are... other entities besides large proprietary software companies and I rather enjoy seeing where those people are going.
I never said "large" companies. Small companies can't use GPL in their software either, if they want to sell their software. For-profit companies aren't evil, in fact many of them do a lot of good things, including contributing back to open source projects with time paid for by their closed source products.
I think the mindset of "all for-profit companies are evil" is a very 2003 way of thinking.
As for community - I think community is often more corresponding to usefulness of code, not license of code.
That's why there is often a huge "community" around very useful proprietary code.
To me, it's about choosing which kind of community you want and I want the kind that the GPL enables and protects.
GPL is a hindrance to your code, not a help... unless you're lucky enough to have your code become popular with a large open source community.
GPL prevents any proprietary software maker from using your software. It requires that if you use the code, your software also be GPL. Well, good luck with that. Software companies need to make money for a living, and most of them want to do it selling their software, not hoping someone will pay them to support their software.
In practice there's no difference between BSD and GPL in the worst case, and in the best case, BSD is better.
Worst case:
Some awesome devs make Cool GPL Software™. Hundreds of large proprietary software companies like the look of the software, but it's GPL, so they can't use it. They use something else. Cool GPL Software™ loses out on all the manpower that could have been given to it by proprietary software makers.
vs. BSD:
Some awesome devs make Cool BSD Software™. Hundreds of large proprietary software companies like the look of the software, and use it, but never open source their changes. Cool BSD Software™ loses out on all the manpower that could have been given to it by proprietary software makers.
end result: the same, but the BSD guys feel butthurt, and the GPL guys feel ignored
Now, the best case, which is what actually happens quite often these days:
GPL (same as above)
vs. BSD:
Some awesome devs make Cool BSD Software™. Hundreds of large proprietary software companies like the look of the software, and use it. Some of them contribute their work to the original BSD project, because it's good karma, good publicity, and keeps the community around that software alive. Cool BSD Software™ gains a bunch of hard work from devs who get paid to work on their software 40+ hours a week.
end result: GPL guys feel ignore, BSD guys feel elated.
This is why I'll never use GPL for any software I write.