Wednesday, August 26, 2009

How I stopped hating Microsoft and concluded that Apple is worse

When I first started using MS-DOS, I didn't know any better. Yes, DOS was ridiculously primitive, even compared to operating systems which were developed decades before. However, I did not know about those operating systems at the time.

I started to hate Microsoft when I started using Windows in the 3.x days. Windows provided some appealing possibilities, but unfortunately it was an unstable piece of garbage. If it was an alpha release, I might have been impressed, but Microsoft was pretending that Windows was a finished product.

Eventually, Linux rescued me from Microsoft software. It was so much better that for a long time I didn't look back. When I got a new computer with Windows 95, it sucked so much that I laughed at it before reformatting and installing Linux. Meanwhile, Microsoft's alleged evil anti-competitive practises were in the news, further reinforcing my negative attitudes about Microsoft.

What started to change my attitudes was Windows NT 4.0 with SP6a. Much to my surprise, it seemed like Microsoft could actually create somewhat decent software. Instead of crashing on a daily basis, it only crashed about once a month. That could be bad on a server, but it was acceptable on a workstation. Later releases in the Windows NT family were even better, and soon I noticed that Windows only crashed due to bad drivers or defective hardware.

Windows opened many possibilities because so much software was available for it and practically all available hardware was supported. Microsoft truly deserved its "Where do you want to go today?" marketing slogan. In Linux I would often run into walls, such as not being able to send files or have voice chats via instant messaging and not being able to play some media. Meanwhile, drivers started to get worse in Linux. Often, devices would be supported but the drivers would only support a subset of the features and not work reliably. For example, I had to make changes to the sound driver to even get it to see my card, and then about half the time it would play beeping instead of sound, and graphics drivers didn't support all available acceleration. The Windows GUI also seemed more efficient than any Linux GUI. Simple drag and drop often accomplished what took many more steps in Linux. Sometimes, Unix command line tools were even more efficient, but that was not a problem because like so much other software, they were also available on Windows.

Meanwhile, it started to seem like Microsoft was being unfairly picked on by others. For example, the idea that the browser is part of the OS may seem ridiculous, but imagine getting a computer without a browser. With a browser, you can download or purchase practically any program. So, for example, if Windows came without other features (eg. image viewing, media playback, disc burning, calculator, defragmentation, etc.), one could easily obtain those. However, without a browser it's difficult to obtain anything. You would have to install from a disc, download on another computer or maybe download via FTP. So, Internet Explorer is useful even if the first thing you do with it is download Firefox. Also, use of HTML in the operating system seems like a sensible design choice, and that does actually make parts of the browser into parts of the OS.

I also started to notice another villain: Apple. While people were talking about how Microsoft would use a trusted platform module for all kinds of sinister things, Apple was the company that actually started doing some things. The iPhone and their recent iPods use code signing in an attempt to prevent running of modified or third party firmware, and OS X uses it for copy protection. Apple even tries to prevent iPods from syncing with third party software. They also use the legal system. Apple is trying to make iPhone jailbreaking illegal and they even go after enthusiastic fans who excitedly shared information about upcoming products!

While Microsoft's deals with PC makers were undergoing scrutiny, Apple was requiring that OS X run on Apple hardware. Yes, it can run on a variety of PCs, and if you carefully select compatible components it can run very well. However, Apple says that is illegal, even if you have a valid OS X license!

Finally, I feel uneasy about the whole Apple philosophy. Their slogan used to be Think Different, but reality makes that seem like doublespeak. Apple seems to design a very specific user experience, and to benefit from their design the user seems to have to conform to it. I very much prefer freedom. Apple actually rejects iPhone applications which don't conform to their ideals. For example, they didn't let Google release a Google Latitude application, because they feel it would be confused with the map application on the iPhone, and they routinely reject applications which duplicate some functionality that is already found on the iPhone. Because of all this, I feel that it's best to describe Apple's recent products as shiny prisons. (The term is not my idea; I want to thank the person that invented it.) Yes, their shiny prisons can be give a good user experience, but getting to that point seems almost like joining a cult.

Meanwhile, my only significant concern about Microsoft is their battle against open source. This seems like a very major evil, but even there it seems like Microsoft is changing and becoming better. It's important to consider the current situation, and not base conclusions on the past and on old news and commentary.

No comments: