Microsoft’s new Operating System Windows Vista has been out for a few months now. I usually got very excited about any new Operating Systems Microsoft offer. After all, every release since DOS 1.0 seemed to have offered many different and useful features. As a software developer, I was always eager to try out some of the new APIs.
My enthusiasm somehow diminished recently. Yes, I did go to a local
Don’t get me wrong though, The Aero windowing interface is definitely pretty. And the operating system itself is definitely great for average users for everyday computing purposes. So, if I were an average computer user, I guess I would upgrade without much hesitation. But as a developer, I don’t think I will switch to
1. User Interfaces
I have never been a big fan of fancy user interfaces and stunning visual effects. For me those are just toys. And to be very honest, ever since Windows 98 the first thing I do after installing a new OS is to turn off all the visual effects. Visual effects are nice for demos, but after I started using the system for a while, they became total annoyance to me. After all, I can do whatever I am doing without all the distractions, and watching a menu fading in seems eternity. And if you have every accessed a Windows PC using remote desktop, you will see that with all those bells and whistles turned on, you will barely be able to do anything without watching the seemingly endless repainting of the screen. Even a background image can make the remote session unacceptably slow.
2. Hardware Requirements
Every new release of the Windows product since Windows 95 has promised to be better and faster. While this may be true (through careful caching of the most recently used items and prefetching applications during start up, or even rearranging how files are stored on harddrive), it is only half of the story. The truth is that, all these perceived performance gains come at a price: you will need a beefier machine. But to me the biggest problem of
3. “User Friendliness”
There are some pretty obvious guidelines to the user friendliness of a system. Unfortunately, besides these obvious ones, others are pretty much subjective. Many aspects of user friendliness are totally dependant on the individual user. While some may find one way helpful, others may consider it difficult to use. Windows Vista seems to have incorporated many user friendly features, but many of them requiring extra mouse clicks. While to an average user, such change might help guiding him through certain tasks but as a programmer, I find some of these features to be quite cumbersome.
This is among one of the hottest topic being debated right now. There is no doubt that by not setting the default user as administrators helps the security situation significantly. Those user access control popups would soon become annoying to average users. After all, many users do not know why they should or should not trust the application they are about to lunch and clicking “OK” simply becomes an instinct. One of an article I read on ZDNet (http://blogs.zdnet.com/security/?p=29) recently even challenges the usefulness of UAC.
I have not experienced this myself, but have heard that many popular applications are not compatible with Windows Vista. One of the key reasons that I have being using pretty much every Microsoft Windows after their release is that the applications I use always worked after I upgraded. It is the applications that I really care about, not the Operating System by itself.
6. Tight Integration
As a software developer, my job is to write code. One of the primary reasons why I write code on Microsoft platforms is because my job requirements. Over the years, I have been writing code under both Windows and Linux (or UNIX). While the system calls are different, the languages and the semantics are pretty much the same, at least comparable. There is no reason why good Windows C++ developer wouldn’t be good at writing C++ code under Linux. Today, the main language I use to write code is C#. But C# is not proprietary to Microsoft. It is an open standard, and I can use it in Linux under Mono as well. But with the release of Windows Vista, some of the new programming interfaces, e.g. Microsoft Extensible Application Markup Language (XAML, not to be confused with Transaction Authority Markup Language), become tightly integrated with the Operating System itself in that if you are using these features, you are pretty much tied to Microsoft platforms.
7. Product Activation
I have never been a fan of the way how product activation works. In one of my previous post, I mentioned what I ran into when switch the primary and secondary harddrive in BIOS (so there’s no physical change) and Windows XP prompt me for re-activation.
Last but not least, this certainly is a key factor. As a developer, I probably would need the ultimate version of Windows Vista, and the four hundred dollars or so price tag is certainly intimidating. I guess if the cost is the same as Windows XP Professional, I might consider getting it just because my consulting job mainly deals with clients that use Microsoft platforms. For that amount of money, I could easily get a nice 20 inch LCD monitor, or a few more gigabytes of RAM.
I know that eventually, almost all PCs will be running Windows Vista and I probably will use it at work places because of that, but most likely, I will not switch to Windows Vista at home.