After hemming and hawing for quite a while I decided to dive into the deep end and make the transition to Windows Vista. The tipping point came with a new gift, a tiny mobile computer called an OQO model 02. It came preloaded with Vista Ultimate and it worked so well even on the lower-powered OQO that I decided that for the new development machine I was going to build, I would try Vista as my primary OS.
So far the transition, while not completely painless, has been remarkable smooth. Sure I've had a few unproductive moments (aka system crashes) but these have all been related to drivers, mainly the display drivers for the new NVidia GeForce 8800 GTS card I put in the machine. I should mention up front that I don't play graphic intensive games so I'm not really pushing the display card to it's limits and thus probably not stressing the driver or card that much. The 8800 is complete overkill for what I need but I also wanted a DX10 card so that I could experience the full Vista/WPF experience. Plus I wanted room to grow as I will probably never trade-up the card for the life of this machine. This whole experience reminds me of the transition from Windows 2000 to Windows XP but it's a bit less painful than that actually.
Along the way I've learned some tips, which I thought I would share here:
Monitor color calibration in Vista
The color management system has changed in Vista however you can still use the older .ICM format color profiles. Unfortunately, it seems that Vista still cannot properly load custom LUT tables into video cards from the ICM profiles; you still need to use a profile loader to set the custom profile for your Video card. Furthermore, there still seems the be the restriction that you cannot load separate color profiles in a multi-monitor setup unless you are using separate video cards as well (i.e. no color profiling for dual-output video cards). This really amazes considering that Macs have had this for something like a decade but what's worse is that there seems to be a bug in Vista that will cause it to reset the gamut table for the video cards shortly after the profile loader sets it at startup. I'm sure this depends on loading order but that's not something that can be easily worked around. My solution was to use the new task schedule as set up a task to launch my profile loader about 1 minute after the login event. This way, shortly after logging in and after Vista has reset my video card, the profile loader can load it again properly. Until Microsoft fixes Vista, this works pretty well.
Virtual CDROM/DVD drive
Every now and then I need to mount an .ISO or .IMG file from a CD or DVD drive, usually for software installation. Vista of course knows nothing about how to do this. There are however several free ISO/IMG loaders that allow you to create virtual CDROM drives. I've used one for the last few years but when I transitioned to Vista I had to search out a new one that would work properly. Virtual CloneDrive is the one I settled on. It's easy to use and works very well and requires a minimum of stuff to be installed. It supports multiple virtual drives and best of all, it's free.
Another thing that I installed which has become indispensable is a small utility called Start++. If you've ever used the older version of Windows Desktop Search on Windows XP, you might have been aware that you could easily create shortcuts or macro commands that could be launched from the search toolbar. Start++ brings that capability to the search feature in Vista. But it goes further in that it has even richer macro scripting and these macros also work at the command prompt as well. Down the road the author is promising an API where you will be able to create plug-ins for even richer commands.
I use Start++ to set up commands to quickly search Google, or EventId.net. I've also used it to set up shortcuts for quickly launching the remote desktop client and connecting to a specific machine or opening network folders that I use frequently. It has several built-in commands but by far the most useful one is sudo, for launching a program with elevated privileges (UAC will still prompt you though). I can't recommend Start++ enough. It's so useful that I never open the start menu's run command anymore, I just hit the "Windows" key and type in a command to run the program I need.
Indexing network folders with Desktop Search
I love Windows Desktop Search. I've been using it on Windows for years (even in its earlier incarnation as the older index service, which Desktop Search has evolved from and despite Google complaints, has been a part of Windows since the early days of Windows NT). Searching is something that I firmly believe should be a core part of the OS, not an add-on. There are many things that can be accomplished once indexing and searching are services of the OS and Vista is a great example of this. Searching feels natural, not like something tacked on. All applications can share a common and universal API. Microsoft has given Vista a very smart architecture for indexing and searching with its iFilters, property handlers, protocol handlers, and store providers. But one of the things that is missing out of the box is the ability to index remote file locations. This is especially important if you share documents or media files from a network location. Luckily Microsoft has release an add-on for Vista's indexing service that allows you to specify network folders to index. Simply install it and you will have the option to index network locations. There is also an add-on to index your Internet Explorer browser history as well, but I have not tried it yet.
That's it for now. I'll blog more about my experiences with Vista and any tips/workarounds that I stumble across.