> For example, NVIDIA based their CUDA compiler on LLVM because it was not copylefted. Thanks to LLVM not being copylefted, NVIDIA was able to reduce their R&D time, provide customers with great technology, and consequently sell more products.
Counterpoint: Say I'm writing a new OS, and want to use the hardware I bought. How do I port the CUDA compiler? Porting GCC (or LLVM) should be pretty easy -- but that doesn't help me, because I can't use my software on my hardware.
This is what RMS has a problem with. You argue that if they had to contribute their changes back, we would all have been worse off. I'm not so sure. I think it's more: Nvidia could get lots of code for free and made more money, than if they had to write that code themselves. Great for Nvidia, yes -- but it's a bit of a tautology: If I give you something for free, and you can turn around and make money off it -- that is good for you. It's a bit of a stretch to say it's a lot better for me.
Do you not benefit from newer technology delivered at lower costs? Do you not benefit from more paying jobs to work on open source software?
What RMS has a problem with is the fact that companies don't (and shouldn't) always tell you how their products work. Just because you bought something doesn't give you the right to know all of its secrets. If he (or you) is not ok with that, then fine, he lives in America, he has the freedom to disagree. His solution, however, is to try to restrict the freedom of people and companies when it comes to software and software reuse. That's what I have a problem with.
Thankfully, I think LLVM and clang represent the coming ultimate triumph of the Berkeley school of software freedom. The clouds of the Cambridge school have overshadowed the software world for far too long.
As I try to support companies that work for a more open architecture, no, I do not benefit from proprietary advances by Nvidia. I would also argue that free research, open technology in general leads to lower costs and higher productivity than closed equivalents -- while they might lead to lower profits (and less concentration of wealth). But since I don't own Nvidia, I don't benefit from their profits.
RMS has just made a choice that he'd like to do his bit to enforce openness and freedom. Everyone is still free not to use GPL software, just as they are free to not use proprietary operating systems. And without the FSF and RMS, I think we'd have a lot less choice in that regard.
There's lots of paying jobs for working on free software too -- we can (and do) have both.
As for:
> Just because you bought something doesn't give you the right to know all of its secrets.
Perhaps not. But I'd argue you should have the right to use it as you see fit. I don't need to know all the details of a chair to sit on it, use it to reach the top shelf, or burn it to keep warm -- to use it as intended by the manufacturer and otherwise. I do need to know a bit about my graphics card to use it efficiently.
Counterpoint: Say I'm writing a new OS, and want to use the hardware I bought. How do I port the CUDA compiler? Porting GCC (or LLVM) should be pretty easy -- but that doesn't help me, because I can't use my software on my hardware.
This is what RMS has a problem with. You argue that if they had to contribute their changes back, we would all have been worse off. I'm not so sure. I think it's more: Nvidia could get lots of code for free and made more money, than if they had to write that code themselves. Great for Nvidia, yes -- but it's a bit of a tautology: If I give you something for free, and you can turn around and make money off it -- that is good for you. It's a bit of a stretch to say it's a lot better for me.