I used IDEs and stopped. In fact I wish IDEs would work, that’s how I started with QBASIC and later Visual Basic. But as soon as you step out of playground level programming, IDEs are never on their happy path.
Don't forget that there's Eclipse as well, which I personally still prefer when dealing with Java codebases, although I have somewhat positive experiences using JetBrains IDEs in other languages, particularly Python with PyCharm.
But generally IDEs are almost a necessity for any complex Java codebase. That's markedly different in other languages. I sometimes work on the chromium codebase (C++ mostly) which I use either VSCode or a simple text editor for. When dealing with smaller scripts, whether in Python, Perl or Bash or whatever, I usually stick to whichever simple editor I happen to have accessible. The same is true for some small C codebases I maintain on an irregular basis.
Generally I consider it a rule of thumb that the more refactoring a codebase requires to be kept in a maintainable state, the more you profit from an IDE. And the necessity for complex refactoring grows with the size of the codebase and the number of developers working on it (especially if a lot of them happen to be rather new to the craft).
Because writing complex JVM applications without an IDE is painful. That doesn't mean IDEs provide a great experience.
I mostly started with Java in various IDEs. Now I'm using Vim whenever I can, as it's pretty much the only powerful editor that doesn't work against me. IntelliJ is incredibly annoying, e.g. auto-formatting the line I'm still typing, turning my inputs into undefined behaviour. Or telling me a file contains an error but not showing an indicator in which line (of >1000) that error is. But I sure am glad it displays 50 markers on the sidebar to tell me the location of every word in a comment the spellchecker didn't recognise. And to top it all off it switches tabs in some random order instead of the order that's literally displayed on the screen (I don't know why this trend is a thing, I'm not too dumb to rearrange my tabs, thank you very much).
No, Vim isn't perfect. But it's snappy, reliable and most importantly doesn't try to "help" me without asking.
I tried PyCharm for a couple of months. It has some nice features, but they fall apart way too often. A sibling comment mentions Java, and maybe a more statically typed language does work better, but for Python the dynamic nature of the language makes “more primitive” code manipulation tools like PyCharm fail eventually.
It seems to be the only tool capable enough to at least offer some degree of inline checking and autocomplete. Everything else I’ve tried seems to be perpetually early beta.
Is there a more sophisticated Python tool than PyCharm?
My biggest gripe is the Mypy type-checking which only discovers errors minutes later.
Uhh... pretty sure 99% of all complex JVM applications were written using an IDE.
In fact, if you joined an experienced team at a senior level and weren’t using IntelliJ, you’d be laughed out of there pretty quickly...