My chosen desktop operating system is Windows. While it's not the greatest choice for programming, in the past decade or so it's become very stable and almost always just works. However, trying to do any programming on Windows can be like pulling teeth. You're always stuck with the mediocre Windows command line prompt, unreliable tools ported from Linux, and a nagging feeling that you should have gone with Linux or bought a Mac. But there is a solution here: virtualization.