As a developer, should I upgrade to Windows 7, if so... what reasons should I give to management?
Solution 1:
While I look forward to Windows 7/Vista 2.0, for your case being in BI developer I see no incentive in upgrading now in comparison to the consumer market. Unless your job involves creating Vista, er.. Windows 7 apps with Visual Studio, why switch now? If you really want to run Windows 7 or toy around with it, download Sun's VirtualBox (for free) and download the Windows 7 beta (or the MSDN release) and run it virtually. Wait at least 4-6 months and let Microsoft and all the other companies/organizations deal with the installation headaches (if there are any) or security issues and patches (which there will be), etc. etc. Like all the Service Pack releases, why be the first to switch when there's so much to jeopardize, especially at the office?
If that's not enough for you to stop the itch to switch, just think of the software you use today and ask yourself is it compatible with 7 to begin with. This is your job on the line, not your home computer. Learn to separate what you use at home and work. I wouldn't risk a job for the glitz and glamor of supposed stability, performance, pretty icons until after everyone else has gone through the endeavor. Let other people/companies figure out if Windows 7 was actually worth the upgrade.
Don't get me wrong, Windows 7 is so much better than Vista as Vista itself set the bar so low, but even that in and of itself is no real reason of substance to switch immediately. For all those features/reasons that you list, do you need those to do your job today? Do you need IIS 7.5? Do you need Virtual XP mode? Do you need the uber-cool taskbar? I'm willing to bet that you don't and are simply sick of Vista (who isn't?) and want to move on to the next thing.
While I empathize with you and the torture of Vista, just stick it out until it looks like all the kinks and issues have been resolved and all your apps/tools for work are compatible with Windows 7. Don't be foolish to upgrade for the promise of a better experience. No product is foolproof/bulletproof especially on the first try. I don't care that this is Microsoft's 6th/7th/Nth release. No company is perfect. Why throw away your time and energy for what may turn out to be little to no benefit to you now?
Sorry for the rant. I just felt that everyone was ignoring the job aspect of this question. If this was for a home computer, I probably wouldn't have spoken up but in this economy and just in principal for work, do yourself a favor and don't risk it.
Edit: Sorry, but a few of you did mention the job aspect of this issue so I apologize for ignoring your comments. I didn't mean to loop everyone was ignoring this work related issue. ;)
Solution 2:
Are you going to be deploying the software you develop to Windows 7? If so then you need a test machine (maybe a VM) with Windows 7 running on it. If you're developing software that is going to be deployed to XP or Vista (corporate policy that the users are running whatever version of Windows and won't be upgrading anytime soon) then you don't really have much reason to upgrade. Building and testing on the platforms that you're deploying to is important.
Solution 3:
Upgrade? I'd rather keep my stuff around for a while and create a VM for windows 7, and a good reason would be simply to get acquainted with the new platform.
Solution 4:
If you are upgrading from Vista I don't think there is much difference, as far as running your developer tools. If you are upgrading from XP then you may encounter all kinds of issues, like UAC. My desktop stays on the same desktop the rest of the company is using. I'm already running a version of Windows 7 in a VM for testing applications. I'd say stick with the same version of Windows everyone else is on and see if you can't get 7 running in a VM. The cool thing about having it in a VM is that you can snapshot it, mess it all up, then restore it back to a normal condition.