I write and manage the revisions of all my software inside virtual machines so that I can easily control the operating system and component versions. Snapshots provide a safe way of testing installations of 3rd party software and rolling back as required.
VMWARE is the foundation of my current development work and allows me to do 'software on a budget'. Having previously used VMWARE Workstation and ESXi I was hooked on the quality and ease of use of these products years ago. In 2008 I built a server using an Intel core duo E6550 2.3GHz with 8 Gb physical memory. This enables me to use the excellent free VMWARE Server under Ubuntu 8.10 64-bit. Of course, i'd love to run an ESXi hypervisor on bare metal but it is very picky about the hardware it needs. (actually I've now got this working on an old proliant)
For a Code Management System (CMS) I created a Subversion server running on a virtual Ubuntu 7.10. Backups are done by simply using NFS to copy to a another physical machine.
My C# is written on a virtual Windows 2008 R2 server with Visual Studio 2010. AVG provides me with free virus protection. My Java work is written using Eclipse or NetBeans on virtual Windows, Ubuntu or Centos machines
Collaboration with customers and other developers is done via face-to-face meetings, email, phone and instant messaging. Desktop sharing technologies are commonly used when working with others who may be 6000 miles away. The testing and feedback of regular updates and early builds are encouraged as I've found this the best way to work. I intend to install Bugzilla at some point.