Linus Torvalds says “fuck you, NVIDIA”. He blames the company for being uncooperative with Linux driver support, and mentions that this is especially sad because the company is selling chips for Android devices, which are based on Linux.
For one day, I’ve believed NVIDIA would not respond. Too bad, they did respond, and it believe it is very unfortunate for them. The best they could do is to ignore
that clown that not well-considered emotional outburst of probably very tired and jet-lagged Torvalds.
This story has made me think about the open source.
Clearly, this situation can never happen on the closed source market. If a hardware manufacturer doesn’t see any commercial benefits providing a working driver for Windows 7, it just says that his device is unsupported on Win7, and that’s it. Nobody will come to idea to blame him. Just because he has sold (and still selling) so many devices for Windows XP, it doesn’t mean he has obligations to do anything else, including supporting other operating systems.
In a sense, closed source to open source is like western culture to asian culture. In the former, you write a contract setting clear and explicit obligations for both parties; as long as both parties comply with it, they don’t have to worry about anything else. In the latter, you present something as a gift, but implicitly expect something in return, and if the other party fails at guessing what your idea about the proper compensation exactly is, you are disappointed. Nevertheless you don’t show it directly and rather hint about your disappointment, and they don’t get your hint either, and at some point, you ultimately believe the other party is evil or amoral and then you start a war, and the other party also thinks you are evil, because they have spent so much trying to compensate you, but you are still unhappy, and they also declare war on you.
But wait, isn’t open source supposed to be free as freedom? Meaning, there are neither explicit nor implicit obligations when using it?
Not so easy.
According to the Free Software Foundation, free software is any software complying to the four essential freedoms: free to use, free to study and change source code, free to redistribute, and free to base your own work on it. When I read this list, I don’t see anything that would oblige NVIDIA to provide better support for Linux. Moreover, the first essential freedom suggests the very opposite, i.e. absense of any obligations. When reading this definition alone, one might think the ultimate goal of people developing free software is or should be to give it out for free. The focus is on giving. They don’t expect anything in return, it is the very fact of providing freedom for free what is essential.
And this is a very important point, because many people would take these four essential freedoms and confuse them with other things like copyleft or open source software. So, to reiterate, the only goals of free software is to be free and to provide freedom for free.
Now, the very same Free Software Foundation has conceived a different thing called copyleft. They do it out of pragmatic idealism, as they say, but as the matter of fact they make a step towards less freedom. Contrary to the truly free software, which you can do with just absolutely anything you want, copyleft forces you to license your own software under a no-less powerful copyleft license, thus creating a viral effect, but restricting your absolute freedom. Which, depending on your situation, may or may not be a huge issue for you. Even the least viral copyleft licenses come with an implicit, moral obligation to you to give something back in return. Copyleft restricts your freedom to use the software with the goal to force you creating more copylefted software, which is considered by FSF to be ethical and desirable social change.
Now, Stallman isn’t tired to repeat that open source is not free software. According to him, the difference is that open source doesn’t pursuit social changes or ethical goals. Open source is just believed to produce a better software quality and avoid vendor lock-in. Nevertheless, its definition is also viral, restricting the full freedom of the software user by requiring it to promote the virality. For the purpose of this article, in theory it is not different from copyleft.
In reality, open source also adds some implicit obligations to the users, at least in the mind of Linus Torvalds.
Reconstructing logic of Mr. Torvalds, NVIDIA earns a lot of money by selling chips for Android. As far as I know, designing and manufacturing the Tegra chipset doesn’t require to use any software created by Mr. Torvalds. And if any open source software has been used in this process at all, it is very unprobably that the particular copyleft license has explicitly required NVIDIA to provide support for desktop Linux drivers, which is a quite different product. The only logic Mr. Torvalds could have in mind is, because NVIDIA earns money on making chips, which are then used by handset manufacturers to make Android phones, and Android has Linux kernel, and Linux kernel is open source software, it means NVIDIA has implicit obligations towards the open source community in general and particularly to the Linux, and therefore they must invest in a market which doesn’t bring them a cent (namely, developing Linux drivers for desktop operating systems).
This is exactly the point why so many enterprises are very careful about using any open source software. As soon as we go into the moral and implicit obligations, things tend to become very fuzzy. You might be a happy camper using free as a beer open source software, until one day some random guy you don’t even know tells “fuck you” straight in the camera, and it turns out this guy is influential, and his video goes viral on YouTube, and therefore your PR is suddenly nuked.
The irony here is that NVIDIA doesn’t even need or require Linux, or this whole open source stuff in general. If Android wasn’t based on Linux, or didn’t use any open source software, it would be equally as popular among the end-users as today, and NVIDIA would be equally happy to design and manufacture chipsets for it.