Friday, February 27, 2009

XP 8, Windows 7 (XP "Ate" Windows 7)

I've spent the entire past month (February 2009) using Windows 7 on a new system, and I'm ready to share my thoughts and feelings about the latest member of the venerable Windows family.

It's not all bad, and this trial was a first for me in more than one respect.

1. The new box is 64-bit, so I installed the appropriate Win7 version, only to discover the world is still almost exclusively 32-bit, at least when it comes to hardware drivers and special use applications.

2. On top of Win7 x64 I installed Sun's 64-bit VirtualBox virtual machine manager to experiment with running other OSes like XP (64 and 32 bit), Ubuntu and Ultimate Edition (64 bit, naturally), and a few server variants (mostly 64-bit) for good measure. What an eye opener that was!

3. The new system has 6GB RAM installed, and can handle up to 24GB, so it takes a 64-bit system to recognize and utilize all that memory. 32-bit systems can see only about 3GB, give or take, due to limitations inherent in that architecture. Back in the mid-nineties (the 640KB world), when the 32-bit era of personal computing arrived, who could have guessed that we'd be bumping up against the "limits" of four gigabytes of main memory.

Wow, how times have changed!

The bottom line for me on Windows 7 is that it really is Vista, Second Edition, with more of the same UI tweaks for geeks and less of the securing of the OS foundation that has been so sadly lacking in almost every Windows release since NT. It seems to me this is yet another missed opportunity for the Redmond giant to do the right thing and provide a safe, stable, familiar, compatible, secure and speedy environment for users, and instead they chose to concentrate on the sizzle at the expense of the steak.

Let me be clear: Windows 7 is a very attractive product and is a welcomed improvement to Vista, but it is still much slower than XP, less compatible than XP, and with that same confusing "why did they move everything" interface that makes Vista so darned difficult to navigate. I'm sure that if I had the training and guidance the Microsoft folks got while developing and using Vista/Windows 7, I might feel differently. And if a condensed version of that training had been made available on the installation DVD, so my decades of experience with previous versions could be leveraged instead of wasted, I might feel better and more confident about migrating everything to this latest version.

But, no.

As has been the case for the last several versions of Windows, Microsoft's approach has been to make it look pretty and make it work differently, as opposed to fixing the underlying architecture of the operating system. They included more and more applications with less and less focus on booting the machine with the leanest, meanest, most secure OS they could make.

I would not be lying to say that there are some VERY smart folks working for Gates and Ballmer, and I'm certain that the right thing to do was at least entertained and acknowledged internally, prior to release. But what we got - what was delivered to paying customers - was not what we so desperately needed (and asked for). No, what we got was more lipstick on the same old pig, no rethinking of the underlying security mechanisms, no effort to address compatibility by using the tremendous hardware potential that exists today (virtualization, anyone?), and instead taking the easy and cheap way out. It's really pretty shameful, knowing how many really smart folks are there, and all.

It's called Windows 7 because it's maker deems it to be a newer version of the venerable NT OS created by Dave Cutler, ex-Vax Supremo. When NT came to market it was christened version 3.1 (no prior versions ever existed) because that was the version of the then-current MS-DOS GUI, Windows 3.1. NT 3.1 looked just like it's less capable but ubiquitous cousin, and was designed for business and professional users. It got a "shell update" in version 4 to match the wonderful new UI introduced in Windows 95 (I can't believe it's going on fifteen years).

NT 5.0 was brought to market as Windows 2000, and what would have been 5.1 was instead christened Windows XP. Vista took the place of the 6.0 generation, so Windows 7 ties it all back together with a number (again). I just don't think what we'll see in the finished product is anything close to a "real" version seven, like I called it, Vista Second Edition, would be more accurate.

I see the engineering blogs describing the dozens of changes made in Windows 7, ostensibly at the behest of testers, but I read more punditry that suggests this product was almost fully baked before the beta testers ever got their hands on it. It can be assumed that 7 is an evolution of the Vista codebase, because that's how Microsoft has always done it. With the exception of NT, designed and developed by an outsider working inside, Windows continues to "improve" upon itself by taking what was, and making it into what will be. Again. So maybe Windows 7 is this year's Vista, in fancier clothing, at inflated prices, in more flavors and SKUs than ever.

The bottom line for me is that Windows XP will continue to have a prominent place in my system implementations, and I will continue to work with what I know works better for myself and others, especially in light of the greater strides made in hardware, like CPUs, GPUs, and motherboard chipsets and memory. It seems that today's version of the OS costs more (as a percentage of the computer's cost), runs more slowly (given the abilities of today's hardware), is less compatible and reliable (because newer driver models force developers to change what they already know that works), as well as making users wonder where all the familiarity went because everything - everything that they used and knew about is different.

That's not change I can believe in. It's change for the sake of it, by folks who should know better and take more care in their decisions.

For me, it'll be Windows XP for a while longer.

Now, as far as the virtualization lesson, an interesting fact is that all this great hardware I'm running gets "translated" into relatively vanilla stuff when it comes to virtualized OSes. My 9800GTX+ wondervideo card looks to a guest OS to be a plain jane VGA adapter, and my super duper Realtek HD audio comes out looking like a Soundblaster 16 or an "AC'97" interface. Gigabit network adapters are interpreted as merely fast Ethernet ports, and then there's the challenge of making USB2 and card reader resources available to the guest OS. Maybe it's the VirtualBox way of doing things, but that's what I've got at my disposal right now and I need to find a way to make it go.

And my takeaway from the 64-bit universe is simple: while some applications may work properly, all device drivers MUST be 64-bit or they won't work, and so far, there are far fewer of them available than we leading edgers would like. It's true that 64-bit systems can address more RAM, and process more data in a unit of time than their 32-bit predecessors, but the challenges of making new devices (and especially older ones) work in the new universe are very real, and must be considered when contemplating migrations in any environment.

Personally, I see virtualization as a great thing for servers (because so few users operate them), making it easier to deploy, recover, and distribute processing as needed by changing business needs. The desktop is a trickier place, because virtualization has many technical hurdles and foibles, making the road far more difficult for the average technology worker. If the challenges can be met simply and reliably, it seems to me that change for the sake of it will become unnecessary, and what we already know will be better used to move us ahead, personally and professionally.

I am waiting.

No comments: