Wednesday, August 26, 2009

The Sins of the FSF

As Microsoft launches closed-source "Windows 7", the FSF has created a website about Windows 7 Sins, detailing 7 sins that Windows makes. I thought I'd rebut their claims.

1. Poisoning education The FSF claims that Microsoft "Microsoft spends large sums on lobbyists and marketing to corrupt educational departments". Well, so does the "free-software" movement. There are unpaid enthusiasts everywhere trying to convince educational departments to move to open-source like Linux. There are also big multinationals (Sun, IBM) selling hardware/services that lobby government for laws favoring open-source. They are no more truthful about the advantages/costs of open-source than Microsoft is of Windows.

What makes Microsoft different, however, is that they listen to children. They spend hundreds of millions on usability exercises listening to children using Windows. They believe that only by listening to children can you "empower" them. On the 7-sins website, the FSF has a picture of the OLPC or "One Laptop Per Child". The OLPC was created for children by a bunch of professors, but was made without any user input from the children themselves. The only feedback from children are photo opportunities where children are encouraged to confirm how wonderful the system is, in a truly Orwellian fashion.

2. Invading privacy The FSF has a point here, I won't deny this one. I will point out that right now, this privacy invasion is tiny. While it's a bad principle, it's not so bad in practice.

3. Monopoly behavior The FSF claims that "nearly every computer purchased has Windows pre-installed". This is a lie. More computers ship with Linux (a "free" operating system) than Windows. The only place Microsoft dominates is the desktop. Everywhere else, from mobile phones to wireless access-points to home media devices to Internet servers, Microsoft loses out to Linux (and other operating systems). It's the "free" operating system Linux that dominates the world - it's only the desktop where Microsoft dominates.

Moreover, Microsoft is losing the war for the desktop. Computing has moved to the cloud, where Linux dominates. Less and less time is spent with applications installed on the desktop and more and more time is spent with web-based services accessible via any device, such as mobile phones.

Microsoft is in the position IBM was in the 1980s, when the world moved away from mainframes (dominated by IBM) and embraced desktop computers. Today, people are moving away from the desktop. Linux will never unseat Microsoft on the desktop - but it will become the eventual victor as the desktop becomes irrelevant. The FSF demeans itself by continuing to fight against a has-been company like Microsoft trying to undo its victory of the past; it should be fighting for new markets in the future.

4. Lock-in The FSF claims "Microsoft regularly attempts to force updates on its users, by removing support for older versions of Windows and Office". This is so not true. Microsoft does the reverse, supporting old technologies long after it becomes uneconomical to do so. Microsoft continues to support Windows NT, developed in the 1990s - as long as you pay extra for it. The only thing that stops is free support.

Even Linux deals with the fact that technology changes, and they have to remove support for older stuff from the default kernel. The 'atime' issue is one of the more amusing examples of this. If you've got an old version of Linux, and there is a problem needing to be fixed, you'll have to pay somebody to fix it -- just like Microsoft.

More amusing is the GNU public license viral "lock-in", which is more of a fight against other open-source licenses rather than a fight against closed-source.

5. Abusing standards The FSF claims that Microsoft tries to block standardization. This isn't true. I've been through numerous standardization efforts, I know how this works. Standards are driven by people who have a narrow focus on an ideal implementation, but who have little experience in the dirty practical details. In this case, they are driven by people who have never created their own word processor, but who want to tell word processing companies how to do their job. Microsoft is fighting for support of features that would be obvious to anybody who has written world-processing software, but which the standards body doesn't understand.

The Internet was created by people who created working implementations FIRST, and then standardized the implementation SECOND. Microsoft is fighting a standards process that works the other way around. Adopting Microsoft's format would be the smartest thing for the standard's body to do.

6. Enforcing Digital Restrictions Management (DRM) I agree partially with the FSF here. I believe that if YOU buy something, it should support YOUR rights. It should not support SOMEBODY ELSES rights over YOURS. On the other hand, I don't use Microsoft's Media Player - I use VLC. The media player isn't part of the operating system, it's just an application. Using Windows does not stop you from using things like iTunes or VLC.

7. Threatening user security This is another outright lie by the FSF. The history of Windows vulnerabilities is no worse than Linux. A "virus" is something that spreads among desktops - since Linux has virtually no desktops, it of course has virtually no viruses. The lack of Linux viruses doesn't mean Linux is better, it simply means that hackers go after the biggest target.

More importantly, Microsoft has become the leader in security, both in terms of how code is written (like the SDL) as well as features in the operating system (like ASLR). It is Linux and the open-source community that is catching up with Windows security, and not the other way around.

Summary The FSF pretends to claim the "moral high ground", so few question them. Yet, they are an Orwellian organization based upon the 1984 slogan that "Freedom is Slavery". While they the polar opposite of Microsoft, that doesn't make them any less sinful.


Mike said...

I agree that the FSF "7 Sins" article is just a bad idea. It makes the FSF look petty. Kind of like a petulant child having a temper tantrum. However, your article isn't much better when it comes to the facts.

You seem to think that standards are put together by people who don't know anything about reality. There are a lot of standards that make reality work properly. For example, housing standards make house safer and cheaper to build. Also, tou should look at the networking stack. Without standards such as TCP/IP, you couldn't even post your blog. Yes, standards have become politicized as of late which is too bad. But that doesn't mean that all standards or the people who propose them are ignorant or bad.

I think you need to review your facts about items like ASLR. Microsoft did not invent ASLR - the PaX project did created it ( Linux has had a patch for ASLR since 2001 and was accepted into the mainline kernel as of June 2005.

One final note. When you state something as fact such as "More computers ship with Linux (a "free" operating system) than Windows", please cite your source. Otherwise it it is just conjecture.

Robert Graham said...

There are a lot of standards that make reality work properly. For example, housing standards make house safer and cheaper to build. Also, tou should look at the networking stack.

You make the same mistake as the FSF, equating criticism of a standards group with criticism of standards themselves. That is the problem with standards groups: they hold themselves above criticism.

Without standards such as TCP/IP, you couldn't even post your blog.

If the ISO standards process worked, I would be using the official ISO standards to post this blog (the "Open Systems Interconnect" standards or "OSI").

Yes, standards have become politicized as of late which is too bad. But that doesn't mean that all standards or the people who propose them are ignorant or bad.

Nobody learns TCP/IP history. Standards have always been politicized, there is nothing special "of late". That's why the TCP/IP way of standardization is better than the ISO way: it's better at cutting through politics and dumb people.

I think you need to review your facts about items like ASLR.

I doubt Microsoft invented any of the techniques they use; I would readily concede that all of them appeared as prototypes in Linux first. What makes Windows different is that they make these features work in practical shipping systems. NX shipped in XP SP2 before it shipped in Linux distros like Ubuntu. ASLR shipped in Vista before it shipped in Ubuntu.

Most importantly, most open-source projects still do not follow "secure development" like Microsoft does.

I'm not saying Windows is more secure than Linux. Security is about tradeoffs, and Windows chooses different tradeoffs (indeed, different Linux distros choose different tradeoffs). My point was simply that Windows has no inherent security weakness compared to Linux.

please cite your source

Even citing sources, it's still conjecture. It's just that every market you look at besides the desktop, Microsoft is not the leader.

This link talks about Linux vs. Windows share in the embedded market. Since embedded computers vastly outnumber desktops, but itself this should mean that more computers ship with Linux than Windows:

This NetCraft survey of web servers shows Apache ahead of Microsoft:

This graph shows Windows mobile has 13% market share:

It competes against iPhone (BSD-based), Palm's webOS (Linux-based), Android (Linux-based), Hiptop/Sidekick (BSD-based), and Symbian (soon-to-be-open-sourced).

This blog estimates Microsoft shipped 200-million Windows licenses per year:

This article claims that 3-billion ARM CPUs ship per year:

Anywhere you look, the only place Microsoft dominates is the desktop.

Edward said...

You say that Microsoft's paid lobbying and Free Software's volunteer efforts are the same thing?


BTW, One Laptop Per Child and Sugar Labs are challenging Windows on the desktop. Contrary to the FSF's claims, Microsoft has not taken over or corrupted the project, nor has it succeeded in getting Windows on the OLPC XO into classrooms except where MS paid for everything.