And then there's also the fact that I can't stand having IDEs underline everything in red when I'm in the middle of typing a line.
I've heard this position before, I just don't get it. This is my screen while working on an early stage of a side project: http://i.imgur.com/B9boU26.png
I find it far less cluttered than most editors. In particular compared to sublime text, I hate that my only options are to have the 'project tree' view there, or not, most of the time its wasted space. In the screen shot I click on project on the left, it pops over the project structure, I open the file I want, and it disappears. Similarly with the bottom bits, I run the project in debug mode, it pops over with the process's output and disappears when there isn't anything I need to see. For me, this is much preferable to changing workspaces to see terminal output even though the OSX trackpad makes this easy.
> I also feel like a lot of the development process becomes a black box.
I guess it depends on the IDE but at least for the given project it builds in the IDE using maven, based on the pom settings just as it does using maven from the terminal or on jenkins. The only difference is incremental compilation during development which many people setup using a 'watch' plugin or the asset pipeline in rails anyway.
> And then there's also the fact that I can't stand having IDEs underline everything in red when I'm in the middle of typing a line.
Changing the linting timeout is very simple.
Looking at that just makes me twitch for some reason. It's all so distracting to me. Maybe I have a poor attention span, but for some reason I feel like I can be so much more productive with something like this: http://i.imgur.com/ADvQF6e.png
I generally do text editing in Sublime (and like you said, the Apple trackpad + OS X's gesture detection algorithms is a very powerful combo) and I feel like my development is very "zen".
>Changing the linting timeout is very simple.
What I mean is that most IDEs are incredibly annoying about small mistakes, and sometimes something like a dropped semicolon can light up a whole file with errors.
The only IDE that I feel is sufficiently non-annoying about static code checks is Xcode. Xcode has very clever, non-distracting notifications about forgotten punctuation, control flow errors, etc.
That said, this is what I don't get....
Why choose a light weight code editor then add 30 plugins to it?
I've tried this approach with sublime text for Java, Groovy, Ruby, JS, etc. I honestly don't get it, IntelliJ / Rubymine / PyCharm kicks its ass in every way I've tried to look at it.
It seems there is some instilled fear of the term 'IDE' that scares people away or people just really enjoy piece-meal assembling an IDE. But for me, JetBrain's stuff just works 90% of the time and the last 10% is easily filled with plugins or an open terminal. Anything that just lets me code efficiently without a lot of mucking around is gold in my book.
If you like the minimalist approach, more power to you, Sublime Text is awesome for that. If you like the 'almost everything in one app' approach, I'd highly encourage you to at least try some IDEs, especially JetBrain's stuff. Eclipse sucks, no doubt, but not all IDE's are like Eclipse.