Virtualization of Developer Workstations
Virtualization is everywhere. We're using it for instancing
our development, test, and production server environments.
A couple years back, I read a blog post by a development
manager who virtualized his developer's PCs. The idea made
a lot of sense, so I went to our CIO and pitched the case.
We've been running like this for the past two years and it
has been working great.
Here are some of the benefits:
- Fault Tolerance. Unlike desktops, a virtualized cluster is built on SAN technology and multiple physical hosts. A disk or server failure won't affect your developer's productivity or uncommitted code.
- Hardware Flexibility. Since it's a virtual machine, it is easy to increase the cores or the memory based on the needs of a given application.
-
Instance Flexibility. Developers are no longer
limited to one machine or one operating system.
- Eases Upgrades. In our recent migration to VS 2010, we stood up fresh VMs to test out & migrate to the upgraded version.
- Mirror Production. Your production environment isn't running Windows 7. Allowing developers to code & test on a the same server version you're running in production removes on more variable.
- Enhanced Tools. Virtualized infrastructure brings additional tools like snapshots, clones, etc.
Give it a shot! I think you'll like it.