Hacker News new | ask | show | jobs
by w23j 1054 days ago
My problem with IntelliJ (which I used to love), is that with each release it becomes slower and slower, while adding a bunch of features that, following the law of diminishing marginal utility, by now have negligible utility.

The time it takes to start a Java program in a Maven project is excruciating. And for unit tests or small utilities that's something I need to do countless times a day. While some random code analysis feature really is maybe helpful once a year. I actually reverted back from the last release because it got so bad.

Am I the only one with this problem? Has anybody found a solution for it?

16 comments

I've seen it alternate between releases. It gets slower for a release or two as they add features and then another release adds several performance improvements (and it is noticeable).

I was also initially very skeptical of the new UI, thinking it was purely a VSCode imitation that would remove power tools, but after using it for a few days I was converted - all of the power I used was still there, but now with a simpler and more efficient view (less clicks to find what I want, etc.).

I switch between IntelliJ and Eclipse during my daily workflow and IntelliJ always feels like an absolute hog. And I do feel like it's been getting worse with the later releases.
Damn, if IntelliJ is getting slower than Eclipse that's a big red flag. I don't use IntelliJ nowadays but 10 years ago IntelliJ was a vastly better and faster product. Wth is happening in Jetbrain?
IntelliJ IDEA 2023.2 is super slow and barely usable on iMac, previous version to this was much faster!

No change / add in plugin's everything same.

After some troubleshooting, turns it the JVM i.e '17.0.7-b1000.6 Jetbrains Runtime with JCEF' that ships with IntelliJ IDEA 2023.2 is the problem.

Switched to using '17.0.8 Eclipse Temurin Java Runtime' and it's fast as before this release.

Hope this helps someone.

10 years is a long time and Eclipse then and now are two very, very different things. Eclipse is amazingly fast for what it does, I think.

Only started using IntelliJ about 3-4 years back (due to Android development) so I don't have any comparison from older days there.

Android Studio is pretty slow for a Jetbrains(-based) IDE. I think it really depends on the plugins. Rider (C#) is amazingly fast on my machine, but Webstorm (TS) is slow and less "intelligent". When I used Android Studio, its bad performance was mainly due to Gradle in my experience.
I haven't had that impression at all. It used to stall and block all the time a couple years back and now it is all fluid even while indexing. But I'm using gradle not maven so that may be the difference.
I have noticed this problem. The latest release is actually unusable for me. The whole IDE stalls every few seconds for no reason, with no visible CPU spike. Oh and it totally blew away all my toolbars and reset my style config irrevocably.

JetBrains IDEs have this problem all the time and its not consistent across all platforms. i.e. some people see it, some don't.

At this point I wish I could switch off JetBrains but I'm so familiar with it and using VS Code my productivity just screeches to a halt.

it's always tough to switch IDEs but if you just bite the bullet and do it, you can have everything configured exactly like you like it~ 3 days.

I've gone through this process from vim > eclipse > komodo > atom > vscode

> komodo

now that's a name i haven't heard in a long time...

I always found the mac and linux versions to be way faster than the windows one, for various Jetbrains IDEs. I have the impression that windows + antivirus + jetbrains is generally quite awful in terms of performance.
Jetbrains Rider has a post-installation screen that asks you if it can configure Windows Defender exceptions for itself. It seems to really improve performance on my personal computer. On my work computer I have Symantec Endpoint Protection and Tanium, and the IDE is way slower (on equivalent hardware).
Can't speak for the other platforms, but I work on an M1 Mac and using IntelliJ feels like trying to move while submerged in a barrel of syrup.
Did you increase the maximum RAM it can use?
Interesting, I wonder how it does in WSL?
On a project I’m working on, tests run 50x faster in WSL. General IDE usage is not that different. I run the IDE in windows and the code in WSL though.
This is a phenomenon that I’ve consistently had across multiple JetBrains products going back to ReSharper. The functionality was powerful enough to keep using, but each release was incrementally slower and buggier. At least then I could simply choose to disable problematic features that I used irregularly or even just shut off the plug-in if I needed to.

Now that I work primarily on Java and Kotlin projects, I’m using IntelliJ, where the entire IDE is subject to the JetBrains effect. The only tactics that keep me productive is to significantly delay updates, keep plugins to a bare minimum (the fact it is not very rare for plug-in updates to brick your environment is really frustrating), a losing battle of identifying and disabling unnecessary functionality, throwing more hardware at it, or restructure large projects into smaller bits and import as modules. Rapidly approaching the point of it not being worth it, but I hate pretty much all the Java IDEs I’ve tried.

It's painfully slow. Even typing latency seems to be getting worse.
I honestly don’t see it at all. It is RAM-hungry, but that is quite inherent with any sort of tool that has to do various fast lookups in large repositories — that has to be stored in-memory, regardless of programming language.

But if you do give it like 2GB of RAM at the least, it is very smooth (unfortunately it used to have a very low max memory setting for a long time). Java is good at handling dynamic loading, you don’t really pay for any feature you don’t use, they don’t even get class loaded.

I think they've waited too long with a re-write, since so much of what they have in the IDE is legacy, and early decisions, and custom solutions, and...

And the new re-write they started looks like it isn't because they really wanted to do it, but because they felt a pressure to do something about VS Code: https://www.jetbrains.com/fleet/

Sometimes that comes from the fact that a long running project gets bigger and bigger. So your upgrades may coincide with expanding projects.

At least for groovy dev (IntelliJ is basically the only IDE you can use for groovy functionally AFAIK), it starts to really slow down once I get to 50-100 classes, and starts to trend to unusability. There's definitely a nonlinear growth in the impact of more code.

So I need to split my projects into sub-jars, a bit of a PITA.

I'm only using Java and IntelliJ occasionally, but haven't noticed any slowdowns. Wonder if people who complain just have slow PCs or Macs.
Or large projects. It's been several years now, but IntelliJ could be a real tortoise when I was working in a medium-sized monolith Java/Spring project with ~20 Gradle subprojects.
I think this is a huge part of it. Adjusting your heap size when working with a large project is a simple thing and makes a night and day difference. It isn't something most people would think to check and Jetbrains doesn't do a great job and helping you find the setting. But with a modern computer and project appropriate memory settings it is extremely responsive.

Maybe they could raising a warning to the user when it sees evidence of lots of GC trashing?

They shouldn’t have the default set to that low.
I know Eclipse may be dated, but this is the main reason why I like to use it: it compiles a file when I save it. Java program then starts instantly - because it is already compiled - regardless of it's size... But I think you can also configure IntelliJ IDEA to compile on save and even use Eclipse compiler so you can compile and start programs with compile errors...
Yes you can and they recommend this - the exception is if your use a complex Maven / Gradle build you might have to have it delegate to these.
I'm extremely sensitive to latency and slowdowns and I haven't noticed this problem. You might consider opening a support ticket or filing a bug. They can help walk you through uploading logs and profiling snapshots.
I've only ever had this issue when using third-party syntax or bracket highlighters. Maven indexing, code analysis is blazingly fast.
It's not that slow for me, but there's quite a lot of evidence that it depends a lot on your hardware and screen. Intel Macbooks are notorious for overheating if connected to a large / hi-res enough display which then causes CPU throttling of the entire machine.

As for starting a Java program in a Maven project - are you sure that's IDE overhead or is it also slow from the CLI?

It has always been very slow to me, very frustrating software to use.
What OS?