I'd say my favorites are Xcode, IntelliJ and PyCharm.<p>The former because it's simply <i>the</i> way of developing on Mac/iOS and although it has some quirks, it's really a great IDE.<p>For Java and Python I tend to look at the JetBrains family of IDE's.<p>They work pretty well, but like many other IDE's can feel a bit sluggish. JetBrains IDE's also don't work well with a 4K/5K external monitor (it causes high CPU spikes), but they're apparently working on it.
VSCode is amazing. I do web work with Haskell, Elm, and Angular, and it has great support for them. Having an integrated terminal is such a nice feature. Its debugging tooling is impressive. Live Share makes pairing remotely a lot easier. There are extensions for database management so I can do it all in 1 app.<p>But of course I also have iTerm open running all my docker containers. I just don’t want VSCode trying to do ALL of that :)
Emacs.
Although IDEs like VSCode are lean, pretty and fast. I don't want to switch IDE if I switch my programming language.
Having modes for nearly everything you need and being able to quickly switch between programming, note taking with org and LaTeX, or basic shell tasks is really comfortable.
An external terminal for demanding tasks which could break Emacs with its multi threading issues rounds it up.
Emacs with evil-mode (or spacemacs, but that's just Emacs with evil and other stuff). Emacs allows you to very easily treat everything like text, and evil provides the best ways of navigating and editing that text. You get a very powerful set of tools to operate on a universal interface.
The best environment for me is bash+vim+(tools needed for the language I'm using). In my line of work I mostly do webstuff (react, php, some golang).<p>A good terminal setup, alt+tab to the browser (or just testing with curl). I only use the mouse when testing in the browser, otherwise I prefer to type commands.
Is Sublime Text already uncool? I'll open another editor if I feel like I need a power feature that's not available, but for general everyday coding it's still my go-to.<p>Beyond that, any Unix environment is fine with me.