I'm a contractor working on many projects. Using Eclipse, I can keep my entire universe of all projects I have deployed (about 30 of them), as well as their dependent libraries, as well as every open source project I use and contribute to, open at all times.
I almost never close a project and I never open a project. It's just all there. If I need to use or modify a piece of code, written by me or someone else, it's all accessible to me at all times with a single keystroke.
No project switching. Close to no context switching. IntelliJ doesn't even come close to this kind of power.
I'm like the parent ... Eclipse provides an omniscient view of all my work with instant incremental compilation across all my projects, spanning PHP, JavaScript, Python, Java, Groovy, Kotlin, and more. Run with enough memory it just becomes like another part of my brain.
When I use IntelliJ I feel like I'm using a nice tool with a lot of sweet superficial features but lacking the comprehensiveness and the underlying grunt of Eclipse. It's like driving a Maserati (IntelliJ) vs a SUV (Eclipse). Yeah, I can drive around town pretty quick in a Maserati but for getting real heavy duty work done, it's an SUV every time.
Really interesting description, thanks. How does current Eclipse compare to Netbeans? I currently use vim and VSCode, but in my Java years (10 years ago) I remember moving from Eclipse to Netbeans mainly for the form builder and because of performance.
It's bean so long since I used NetBeans that I can't make a good comparison unfortunately. I do know it never surpassed eclipse for me but some of the reasons for that were probably circumstantial at the time (eg: whole team was using eclipse, etc).
Yeah, tried that. Multiple times. IntelliJ just doesn't handle it performance wise, and it feels awkward because IntelliJ just isn't designed as well for working on multiple projects simultaneously. It's probably great for people working on a single project with some dependencies (modules). IntelliJ really wants you to open a project, work on it, then you close it and open the next project. That doesn't fit me.
Doesn't mean IntelliJ is bad, it's just a bit limited in that regard.
My dozens of projects are not a single project with "modules". I have a universe of code in multitudes of interrelated projects, closed source and open source. I want to refactor openly, not having to care how I'm moving code between projects. Eclipse works perfectly for this. IntelliJ does not.
You kind of described the exact problem there. You have "plenty of projects with >50 modules". I don't have "plenty of workspaces", just one that contains all my "plenty of projects", almost all of which then depend in some way on a tree of hierarchies also within that workspace.
There are no islands. There's now switching between anything. It's just all my code and dependencies, always open and accessible and instantly available.
Creating a new project in Eclipse then requires no importing of modules on my part, I just create a new project, it's in my workspace and voila—it's now an integral part of my universe of code.
I'm an IJ user and I do this; however I remember eclipse was much better about knowing that you have a dependency also in the workspace and using that when you "go to definition" instead of going to the compiled version.