This is a server at home. I have 3 computers running Linux and they are all servers running dedicated tasks like MySQL/Samba, Web Server and DNS/DHCP. Is it be a good idea to host a virtual machine and do the development on it? Can the VM handle GUI, if possible a different GUI? One of the computers is powerful enough to handle virtual machines. Other two are old discards. I won't be able to dual boot any of the servers though. 
What is the best way to do GUI development on a server machine?
development;virtual machine
Developing on a virtual machine can be a good idea if you cannot dedicate a machine to a different OS.  For instance if you are writing an app for OS X you can fire up a VM and give it as much memory as it needs.  With most VMs you will need an extra margin of resources because you are running a host OS as well.  I've used VirtualBox to run Windows and Linux VMs and it works quite well.  For VirtualBox there is even a web based console called phpvirtualbox for controlling VMs remotely.