In the ongoing battle between Linux kernel developers and the Free Software Foundation over the future of the GNU Public License, somehow DVR-maker Tivo has become either the whipping boy, or the poster child, depending on whose side you are on. FSF founder Richard Stallman even coined a term for what he sees as misuse of the GPL: "tivoization".
(By way of disclaimer, I heart my Tivo box and have had one ever since they first came out. I got mine with a product lifetime subscription, which they don't offer any more. Because I've written many times about GPL in the past you may want to call me biased. Feel free, though I prefer the terms "opinionated" and "pragmatic".)
The FSF argues that end users, like my aunt Sylvia for example, should be free to modify the code inside her Tivo to make it do whatever she wants.The vast majority of users have neither the expertise nor the inclination to modify their software. Let's say she doesn't like the main menu's background animation and wants to make it play something from Mayberry RFC instead. Or perhaps she bought a new pre-N wireless USB dongle and it's not supported by Tivo yet so she wants to make it work. My aunt Sylvia should have the freedom to do that, according to the FSF. With me so far?
(As an aside, I should mention that my aunt is about 80 years old and doesn't know a USB from the CIA, thinks dongles are something that shouldn't be mentioned in polite company, and couldn't encode an MPEG-2 if her social security check depended on it. But maybe she could get one of her grandkids to help out. Or even a nephew. Ok.)
From Tivo's point of view, they have to support thousands of customers, most of whom aren't nearly as polite as my aunt Sylvia on the phone when they call in to report something is not working. They just want to give their customers a nice, consistent, and dependable experience. They especially want their users not to call them with problems about how Judge Judy is COMING ON IN 5 MINUTES and the darned Tivo says the SIGNAL IS NOT AVAILABLE. And maybe they want to be bought by Apple or Google, but who doesn't.
Meanwhile, Linux kernel developers including Linus Torvalds just want their software to be used by as many people as possible. They only care about the software, so rules about what kind of hardware you can and can't run it on is not their concern. If Tivo wants to prevent my aunt from changing the code in her Tivo box, that's ok with them as long as Tivo published the source to any Linux changes they had to make (which they did).
(That last bit is one of the key provisions of the GPL and other reciprocal licenses like MPL and EPL - if you improve it you have to share your improvements with the community. It's more developer-oriented than user-oriented though, which gets us to the heart of this disagreement.)
Simply put, the FSF comes down on the side of user freedoms, while pragmatists like the kernel developers come down more on the side of developer and project freedoms. I will argue that the user freedoms guarded by the FSF are largely illusory. Freedom for developers to innovate, combine software from various sources, and run agnostically in any sort of environment, on the other hand, is something tangible and proven.
While I'm really sorry that Stallman felt betrayed on that day he couldn't get the source code for his new printer in order to modify it, let's be honest, how many users nowadays need to do that? Does my aunt's desire to modify her Tivo's software outweigh Tivo's desire to not have random code running on boxes connecting into their network and causing headaches for their support staff?
In the early days of computing in which Stallman grew up, computer users were an elite club. Everybody knew how to code, and everyone was a "hacker" in the original, good sense. But the information revolution was a runaway success. We won! Today, there are hundreds of millions of users of computers, cell phones, TVs, automobiles, etc., all controlled by microprocessors and software. The vast majority of those users have neither the expertise nor the inclination to modify that software. They just want it to work, to be invisible. The world has changed, and that's a Good Thing.
So I'm sorry Aunt Sylvia, but I just can't take your side in this one. Look, they're doing a Disney movie marathon tonight. The Tivo box already started recording it, so let's grab some popcorn and watch that instead.