I like Windows. There, I said it. When I switched to Linux, I did it to get away from Windows 98 (remember having to reboot 3 times a day?), but Windows sure has changed. In the past 10 years, it's simply been solid. It's fast, it's well supported (not surprising, since it's the only real "official" PC OS) and.. well, I just like it.
But not for coding. Coding on Windows is like pulling teeth. Even coding with an IDE like MSVC++, you're always left at the mercy of the IDE (but in Visual Studio's defense, they give you plenty of tools). And Ruby is even worse. Yes, there is a Ruby port. There are even installers. And they do work, but the lack of basic tools and a good command line interface, plus the odd bug from porting all this to Windows, always end up biting me.
So what's the easiest solution to this quandary? Installing Linux on top of Windows using VirtualBox is the best that I've found. You need a halfway modern CPU with hardware accelerated virtualization, but that's virtual every AMD and Intel CPU made in the past few years. You also need more RAM than you would normally, but RAM is cheap these days. But other than that, running VirtualBox in seamless mode allows your Linux terminal windows, editor windows, etc to co-exist with your Windows applications very nicely.
So if you're interested in this, read on for the complete guide on setting up a Ruby development machine on Linux (using Windows).