When we're talking about a text editor for programmers, I don't need it to be usable by somebody who doesn't grasp the domain to begin with. I'll gladly give up some UI sugar because in this context a modal interface is exactly what makes me so productive with it and partitions the complexity into composable chunks that are easily reasoned about.
Well, I do use vim, so I can't really hate it, can I? :) ...it's just the thing that some things should just be plain and simple imho, code editing should not be a "domain" in itself and one should rather learn unrelated new things than bother tweaking that last 10% ...it's just a matter of preference and take on life, some strive for "mastery" at something and work on that last 10% to get an edge, others don't bother to achieve "mastery" at one thing but prefer to explore more things and get that edge by "perspective shifting" or "thinking more outside the box". I bothered to learn vim out of "exploratory curiosity", because I found the concept of such an interface interesting. But though interesting, I don't consider it a good idea anymore - if you give people a tool to manage complexity, they will take advantage and add more of it, for very little benefit.
I guess I look at vim as less an interface that a user needs to become familiar with and more of a language that one learns to manipulate text. For example, I don't think the same design principles that go into maximizing conversions on a website necessarily apply to learning Russian. The tradeoffs are different, as is the payoff.
It is absolutely incorrect that you have to 'keep Vim in your head just as much as the code that you're editing' unless you have not learned Vim at all. The reason you don't (constantly) have to think in ST or notepad++ is because you have already learned that editing paradigm. Although, that editing paradigm IS more obtrusive than vim's. It's abundantly clear that you do NOT understand vim's keybindings and modal editing concept, if you constantly think about vim.
vim has code exploration tools integrated: they just have funny names like ctags, grep, cscope. If you want them. You can also just use separate tools for browsing vs. editing, with no obvious productivity loss.
The productivity impact of having the debugger in your editor process cannot be a big deal, and it's pretty weird to hear that this is essential right after you stress that notepad++ is good enough. Which one is it?
If the point is that you spend most of your time writing, editing and reading code and otherwise the only advantages are in heavy-duty tools not present in ST, then the implication isn't that it's "sane" to reject vim, the implication is that it doesn't make any difference what you use.