...and then you bring up examples of superstar programmers. They are outliers, they'd be productive in whatever. That's not where IDEs do anything, instead you should look at average programmers in average companies with large codebases. That's where IDEs shine, because they can analyze large amounts of other people's code and hint you and guide you in the right directions when interfacing with it, without forcing you to read all of it.
Another improvement IDEs offer, especially when doing Java in Eclipse, is that you're always in a compiled state, and any errors in your code are highlighted while you write. You don't have to "context switch" to another mode where you run a compiler to check what you just written for syntax errors and other errors, and then bring that information back with you when you switch back to editing. It's all there, all the time, which increases your productivity, because it decreases the time you spend on fixing small errors, spelling errors, syntax errors, etc.
In short, when I meet a developer that rejects IDEs, I have suspicions that he may be a grumpy old programmer that just refuses to go outside his comfort zone.
I don't see a difference between someone rejecting a newer better language to stick with one they know, and someone rejecting a newer better IDE to stick with an environment they know.
As far as your Java programmer, how long did it take him to get emacs in a state with a similar amount of power as an IDE? I'm thinking about compiling, debugging, source control integration, code completion and API hints, and so on? I do a fair amount of C# coding at my day job, and I've tried to work exclusively in vim, and the productivity hit I take trying to get the conveniences of an IDE in vim pushes me to just Visual Studio and install vim emulation.
As far as other text editors go (Sublime, TextMate, Notepad++), aren't the existence of these just proof that programmers like to build things?
(Otoh, IDEs aren't that new anymore. Those programmers might have more of a tendency to exchange the keyboard for a tie?)
My personal problem with IDEs is the screen real estate. On the same screen I get an A4 of shell and two A4 of code with Emacs, the local Eclipse users get at most 40 lines of code...
Disclaimer: I've gotten scared of judging anyone since I saw really cool people speaking at conferences -- and realized they use Windows. :-)
With an IDE, all of that is in the same window, but in popups and overlays. It's presented differently, and the flow is different, so comparing lines of code on the screen is meaningless, it just shows that you haven't really gotten far enough into it that you understand how it is different.
Uh, no. [edit: It is not only compiler/tests.]
I also have half a dozen tabs of shell, where I also keep documentation (perldoc, pydoc, etc). (Real Emacs users use emacs buffers for all their shell needs and documentation. I'm a wimp.)
>>comparing lines of code on the screen is meaningless
I have used IDEs (not exactly lately) and have seen people use them quite a bit.
Personally, I don't make non-intuitive claims, and argue that others just don't know what they talk about, without good references.
>>presented differently, and the flow is different,
Obviously the work model is different. But...
You are arguing that all the screen area left to buttons etc is paid for by the IDE's popup functionality.
Screen estate has simple and obvious advantages, since when I write the code, I can see the documentation and/or the functions it calls at the same time.
You need references for your claim.
That said, with a language which gives Cobol fingers (Java, etc) and/or use half a sentence to write a library call, I do see a case for an IDE.
P.S.: Both sam and acme were written by Rob pike (ken wrote ed), in Plan 9 circles some people would call acme 'an ide', and while I use acme, I would consider sam a better text editor in part because it is precisely just: a text editor and nothing else.
If the doohickeys your IDE does for you to improve code quality actually do so, I would expect to see evidence of it.
And, regarding your sad rant...The reason the web crowd (and many others) keep using those tools (though I don't understand the appeal of TextMate, in a world with vi and emacs), is because they are more productive with them than alternatives. One of the best Java developers I've known (famously so, he'd written some Open Source libraries that were in very widespread use), turned into one of the best Python programmers I've known nearly overnight when he got hired by a Python shop. And, while he occasionally lamented the loss of some of Java's tooling (mostly for testing and coverage and instrumentation of the running code), he used emacs for both languages.
In short, when I meet a developer that relies on an IDE, I have suspicions that they may be a cargo cult programmer, rather than the kind of programmer I want to work with. It may not be true, and I'm sure there are excellent coders working in IDEs. But, I can't really take your pro-Java/pro-IDE rant seriously, because I know what happens when good developers get the chance to work in a better language (of which there are many; Python and Ruby are among them).