The point is: these comparisons always try to make vi seem like the always better choice INSTEAD of an IDE and this is were I completely disagree. And you make it look just like that with adjusting the comparison in favor of vi, the screwdriver. This is just wrong. Let's see, you could also say:
Screwdriver: specific to only one type of screw, limited to only a couple of similar sizes and all you can do is drive screws in and out or maybe stab someone.
Assembly line: way more complex and needs some setup time but you can do WAY more things with it, way faster, way more efficient once setup, especially on a larger scale. It can drive screws in and out, solder, cut, fold, package etcetcetcetc. Pretty much anything you set it up to.
So, vi is a horrible replacement or alternative to use in the typical huge Java (or what have you) e.g. web app projects where things like auto completion and easily getting from one class to another, built-in compiling, debugging, refactoring, source control etcetcetcetc really start to make your life easier. vi on its own cannot offer you that, not even remotely... then you need a shell and other programs to do all that. And there are no alternatives to most of the tasks an IDE can offer you help with.
vi is definitely nice for editing files especially on a slow line and as a general purpose editor - but it is no replacement for an IDE and the comparison that it is "better than an IDE" might only apply for exactly one task: editing files. IDEs offer you tons of other things. So it is just wrong to compare to two or present one as a replacement for the other.
If I thought an IDE was better for large Java projects than vim, then I'd use an IDE instead of vim for large Java projects. You'll find that many vim users do not use an IDE because they've found it to be more productive for them to use vim + command line instead. In those cases, there is clearly a choice being made about IDE versus vim. If you want to be pedantic about the fact that vim is just a text editor, then just imagine that whenever someone talks about using vim instead of an IDE or compares vim to an IDE, just replace "vim" in your head with "vim + command line". If you do this, you will better understand what they're saying and you won't have to get on the apples-and-oranges soapbox quite so much.
Great article on this very point: "Build an IDE with tmux and vim"--http://alexyoung.org/2011/12/19/build-an-ide-with-tmux-and-v.... The money quote: The difference between this approach and a traditional IDE is this interface adapts around my current task, and is only limited by the thousands of commands and scripting languages that I have installed.
Except then I still don't have any interface builders, out-of-the-box code completion and on the fly compiling/checking for small mistakes, easy navigation through class hierarchies ("click on Classname, function etc..) plus showing me documentation alongside, refactoring tasks, all sorts of useful and some useless wizards etc. and we haven't even talked about more specific things like developing for iOS.
So IDE is still ahead in terms of what it has to offer me that not even vi+console or vim+console can. My point stands.
If your point is that this handful of advantages is a slam dunk, and that it makes IDEs and vim+console incomparable such that whoever does so is making a categorical error, then your point has no legs to stand on.
You belittle clear advantages simply because they do not fit your taste or style while the usefulness and spreading use of IDEs is unquestionable, so this is too much of a personal preferences discussion than anything else, just like all vi vs emacs flames have always been and I find it disappointing that in 2012 this STILL keeps coming up... I thought I had FINALLY left those zealots behind me in the 90s. And I really do not like your tone.
I am more than sufficiently "fluent" in pretty much all common IDEs and in vi(m)+console so that I don't really care which one I am using or have to use neither do I care on which OS... most of the time I end up in a good IDE because for a lot of the tasks I want to do and get paid to do, there are no real alternatives in vim+console, they might be specific though.
The article argued vim's superiority in editing so comparing that to an IDE really are two completely different things. Comparing vim+console to an IDE is always going to be all about personal preferences and which extensions do you use in the one or the other, which tools/options/tasks are available and which aren't - but ultimately they cater to two usually very different crowds: the console-lovers and the oh-shiny-clicky crowd and you will find it very difficult to even remotely describe an advantage of the one to a member of the other crowd... and that's where the comparison doesn't add up and feels to me like apples-oranges.
Comparing vim+console to an IDE is always going to be all about personal preferences
That's been my point from the beginning. Tradeoffs between personal preferences is a hallmark of apples-apples comparisons. I mean apples-apples in the sense that both toolsets are used to accomplish the same exact things. I agree that there are the two general types of people that you describe, but I disagree that they are so irreconciliable that they shouldn't even attempt to discuss the tradeoffs. It is a perfectly reasonable discussion to have.
Car assembly line - lots of initial capital, specific to one kind of car, lots of time to learn.
Seems like a valid comparison.