A popular question when Vista was first released was "Should I upgrade to Vista?"
Now that Vista has been well established and through its first service pack I decided to give it a try. As a Windows Mobile developer there are quite a few things to consider before making this choice.
At this point I'll jump ahead and save you some reading if you want to know my answer to the question. If you're a Windows Mobile developer and you're using Embedded Visual Studio - the answer is simple - No.
EVC 3 and EVC 4 don't work on Vista and they aren't likely to work anytime soon (if ever).
There are further considerations - I primarily use Visual Studio 2005 (and will likely be upgrading to 2008 in the near future ... but that's a different topic). So the jump to Vista wasn't too problematic. And it’s probably good that it’s forcing me to update those last few projects from EVC to VS 2005.
My biggest complaint is the VS 2005 emulators and the Microsoft Sync center. I have been completely unsuccessful in syncing the emulators with the Sync Center. Now I know it’s possible and I'm sure if I spend another hour or two it will eventually work. But I really feel if Microsoft is going to sell an Operating System with the word "Ultimate" in the title - I shouldn't have to waste precious time convincing it to behave nicely with Microsoft's own development tools. Vista Professional and Visual Studio 2005 cost enough that these products should work out of the box.
My other hiccup is a direct result of changing from the 32 bit version of Windows XP to Vista 64. Unfortunately all of the development SDKs now install into c:\Program Files (x86)\.... so all of my build scripts are temporarily broken. Now this is trivial to fix but does require extra time.
And a quick side note - 64 bit Windows operating systems now have two program files folders because of the "Common Files" sub folder. If 32 bit and 64 bit applications shared the same "Common Files" sub folder it would be far too easy to break applications when installing both varieties of applications.
Despite all of the above issues I will be sticking with Windows Vista on my primary development computer. But I will make sure I always have access to at least one computer running Windows XP "just in case".
From a pure productivity point of view I don’t see any reason to upgrade to Windows Vista.