I’m one of those programmer who just loves anything about UNIX environment, but just feels weird about using Linux GUI hence stuck with Windows 7.
The most perfect tool for us is of course, Cygwin.
However, there are some (many, actually) weaknesses in Cygwin such as sometime you have to manually figure out how to install some softwares manually, instead of just invoking sudo apt-get in a Linux system. (Although there is an amazing project for this, apt-cyg. But this is not Cygwin’s default package.)
I recently just faced this problem when trying to install ipython with numpy+scipy+matplotlib in my system in Cygwin, and had to spend all day (which was Saturday), to finally have it installed correctly.
Nevertheless, It was really worth the time.
Cygwin + Ipython. is. just. amazing.