Thursday, October 05, 2006

Time Machine

This is interesting. It's a piece I first posted in May of 1999 talking about Microsoft. It was the advent of Windows 2000 and it's interesting to see how my opinions in those days mirror the kinds of things people are saying now. It's also interesting to see where I was completely wrong.

----

First off, I think Microsoft has done a number of incredibly unfair things over the years. The very first non-trivial Windows program I attempted to write back in 1990 immediately got me into uncharted waters. I was trying to do something that I knew you could do (Program Manager did it), but it simply wasn't documented. One only needs to read the likes of Schullman to see that Microsoft was unfairly competing against other application makers by using secret features of the OS that were undocumented to the outside world.

I think that this situation has become better, but has probably not gone away entirely.

I also believe that Microsoft has strongarmed hardware OEMs resulting in other operating systems being unfairly shut out of bundling options. The recent Windows Refund brouhaha only demonstrates how pervasive and unfair this is.

I also believe that Microsoft is currently in quality free-fall, which seemed to start about a year or two ago (about the time of NT SP2). There is obviously no guiding principle in the design of the applications or features of the OS. There is incredible inconsistency in the way things work. Almost every application has a muddled, confused designed-by-committee style interface (configuration of the OS being one of the worst examples). Microsoft's products crash easily and with the plethora of service packs and hot fixes flying around, it is almost impossible to get everything to work together. I recently reinstalled NT and had to install the OS, Office and IE 3 times in order to figure out what order to install everything so that it worked (active setup crashes egregiously for me once IIS is installed), I had all the features I wanted (there seems to be no way to get the Explorer enhancements from IE4 in IE5 without installing IE4 first).

I'm told that if you're using SQL Server, and Back Office, et al, it's ten times worse.

I think there is a fundamental flaw in everything Microsoft does these days and it comes down the company being too big and not having a unified philosophy driving software development. Every different piece of the OS or an app (or even the Windows SDK) looks like it was designed by a group that did not communicate with any other group. I read that there were about 8 different versions of Office 97 service pack 1 depending on where you got it from or how you installed it and there were serious compatibility problems with service pack 2 because of it. The only difference between a beta release and an official release these days seems to be the name... and _then_ Microsoft has the audacity to sell beta software. Of course that fact that people are willing to buy it says a lot too.

I and others I knew were doing serious development with Windows NT 4.0 beta 1
and beta 2 with little or no problems. In those days, NT was considered a paragon of stability and typically had rock-solid performance. I don't even plan on switching to Windows 2000 when it comes out for two reasons. One: based on Microsoft's recent track record I'd rather stick with problems I know than problems I don't know. and 2) I don't see a single compelling reason to upgrade, just a bunch of feature bloat. After all these years, NT still has a terrible performance problem multitasking with disk access, and I don't see that going away until the OS is rewritten from the ground up again (NNT, I suppose).

Now after stating a rather low opinion of the company's recent products, I will say the Internet Explorer is generally the best browser, and is certainly far superior to Netscape Navigator. I perceive the whole browser monopoly issue to be a non-issue. Netscape is just whining because, in my opinion, they simply can't write a solid piece of code. Netscape 1 and 2 were absolutely pathetic, Netscape 3 was alright, but by that time IE had surpassed it in quality and features and Netscape 4 is one big bloated mess.

I think the government's persecution of Microsoft's bundling the browser with the OS is patently ridiculous. It's analogous to preventing GM from bundling radios in its cars. As long as Microsoft's competitors have access to the same documentation for the OS as everyone else Microsoft should be able to bundle anything it wants. The government's position seems to hinge on the fact that if something comes with the OS, people are either too lazy or stupid to switch and this is simply wrong (and even if it were true, that's what marketing is for).

Netscape seems to rely on hatred of Microsoft to drive its
market share, whereas I'm more pragmatic. In the case of the browser, I think Microsoft wins fair and square. In the case of office suites the competition is superior.

In summary, I think that Microsoft has definitely competed unfairly in the past and continues to do so today. However, the government's ignorant and laughable case against bundling the browser is a big waste of time and money.

In the meantime, Microsoft better try a new approach: Simple, clean, stable tools that are easy to use rather than an incoherent amalgam of lamely implememented tick items on some marketers dream list, because at the rate they are going, Linux is going to eat their lunch.

----

So, looking back, my predictions for the upcoming Windows 2000 were way off. Part of the reason is that my perceptions were definitely colored by the train wreck that was Windows 95 and Windows 98. Both were overly ambitious, grotesquely overcomplicated kluges that I wouldn't wish on my enemies. I still feel sad for the billions of productive hours that must have been wasted by people struggling with these awful products. I won't even mention ME, which was supposedly even worse, but I never used it. All along a perfect substitute was available, at least for business users and some home users, which was Windows NT. NT 3.51, the first version I ever used, was extremely stable. NT was Microsoft's attempt to start from scratch and remake Windows the way it should be, and for the most part they did a really good job. NT 4.0 inherited the UI elements, and some of the weirdness of Windows 95, but when Windows 2000 came out, Microsoft hit a home run. It was solid, hard to crash and generally just worked. Despite the fact that it was less secure than the Maginot Line and was still saddled with Explorer, the most consistently horrible piece of crashware ever conceived in the fever swamps of Redmond, using Windows 2000 was a pretty enjoyable experience. Less than two years later, XP came along with a little more of this and that, some basic improvements, but nothing compelling, and it was burdened with the ugliest UI theme since Tandy Deskmate, but that was easy enough to turn off. However, except for the wireless support (which can be a nightmare unto itself), XP didn't offer anything compelling either, and the only reason I use it is because it came with the last 3 laptops I bought.

Of course, at the time, the family computer was running Windows 98, which meant I had to do almost daily maintenance on the thing just so the kids could run their games. I finally broke down and bought a copy of Windows XP Home because I felt too much of their software wouldn't run on Windows 2000. All of a sudden I didn't have to support the computer any more. Of course, the poor 200MHz Pentium Pro could barely browse the Web with XP, but it sure did work. We upgraded the machine to a used 400MHz P3 and XP was happy, if not too perky.

I find it interesting that so much of what I said about Windows 2000 is what people are saying about Vista now. It seems that from an end user point of view, support for new hardware is about the only new thing Microsoft has given us that anyone cares about. In that, they have done a good job, and I suspect that the changes in Vista's architecture will make that even better since hardware drivers won't live so deeply in the kernel. But last time I checked, Moore's Law was taking a bit of vacation, and we all have more MIPS than we will ever need for 98% of what we do anyway. If you don't need a new computer, you won't need a new operating system to run it. I have no plans to upgrade to Vista. In fact, if I change anything, I'll be installing Linux. The only reason I haven't is because of applications like Paint Shop Pro. If it weren't for certain Windows apps I use every day, I'd prefer to use Linux.

Linux just makes more sense to me... although it is definitely not eating Microsoft's lunch... yet.

No comments: