My good friend Sam Gentile blogged about his new dev environment for Ruby using the E Text Editor alongside cygwin and Console. I find E an interesting editor because of its TextMate-like functionality, and because pretty much everyone who has used TextMate raves about it (though I haven't used it myself).
As a side note, last time I tried E wasn't very successful. In their defense, I'll say that I've since reached the conclusion that it was probably my virtual machines acting up. VPC2007 sometimes has nasty issues when running on Vista.
However, the thing I don't really like much about E is its dependency on cygwin. I understand the reason for it, but frankly, I just don't like cygwin much. Don't get me wrong, cygwin fills a valuable niche [1], and I've used it in the past, but the truth is that it's much more less needed now than it used to be.
For example, a few years ago it was pretty hard to find native ports of many GNU command line utilities. Now they are widely available (and before that there was unxutils). There are differences of course, but they are very usable for the most part.
Cygwin itself feels pretty clunky. In fact, I don't want a "unix within windows" at all, as that forces to many compromises (many of which aren't really all that needed). If I wanted to, I could always go with something like andLinux, which seems like a better option to me.
Frankly, between PowerShell, the Windows port of GNU utilities and a few other things, I feel right at home on Windows and switch to unix when using my ubuntu machine without much fuzz at all.
Back to Sam's post: he's right on the money about Console; it's pretty sweet. Unlike Sam, however, I dumped my VS environment tab and just configured all the necessary paths in my PowerShell profile. I haven't had a need to switch to a regular CMD.EXE prompt in a few weeks!
[1] There are certainly some cases where cygwin is actually warranted because some specific tools, but, personally, I prefer to just switch to a real unix at that point. It's less painful.