This morning I went looking for a new IDE to replace Netbeans/Aptana and found VIM + Janus (https://github.com/carlhuda/janus). Janus is a collection of customizations and plugins that make VIM look & feel almost like a GUI IDE.
Absolutely agree. I also highly recommend FuzzyFinder if you like TextMate's "Go To File" (CTRL+SHIFT+R Eclipse, CTRL+SHIFT+O NetBeans), and also combined with the Project plugin.
The tutorial uses Project (I would say complementary more than an alternative to NERDTree). It depends on your needs, and I use both. NERDTree for general navigation, but the way Project buckets content results in some flexibility as well. Along with using netrw to do remote development via scp/rsync, you could also create a hybridized project of local and remote content and run a vimgrep on all files. There are at least a few applications for this with, maybe a quick way to manage config or view log files (if they're small enough) on multiple servers/shards for example.
Additionally you can also have it run scripts to switch dev environments when you switch projects. Project switches are triggered when you open a buffer for a file in a different project. If you are working on several platforms and have multiple build scripts, I find this to be helpful. One limitation though, if you have a split or tab with multiple buffers from different projects, the most recent opened project's environment persists.
So FF + Project's workflow is: (1) keys (,f for me) to "Go To File", (2) type in a search pattern, (3) open a file with your environment fully setup and ready to go. For me it has been pretty good so far over the past year or so with a few minor issues.
I use this combination as well with one addition - topfunky's peepopen (http://peepcode.com/products/peepopen). Works like an improved version of Textmate's fuzzy find - even displays Git metadata inline. Its not free - but its worth it imo to have something a little more polished.