I'm also very interested to hear what their billing will be for this, which they conveniently don't mention.
...because, bluntly, that openAI sh$t isn't free (specifically custom models), and either a) jetbrains is taking a hit to their bottom line using it, or b) they're going to roll out new pricing off the back of it.
How is it crazy? Jetbrains' IDEs provide more than enough value as it is. I don't want to pay for features like their collaborative coding or AI assistant that I won't use.
Would you rather them roll out cost-plus pricing or roll up the cost of new features into higher base prices?
But it's literally a feature that creates ongoing cost based on usage. Why must you either get it for free, or not have it in the IDE at all? Why can't they implement it for people who want to use it, and you continue not using it (since it's impossible for them to finance with the existing licensing model)?
I could understand your point of view if it was a feature that could be made free in some way. But it literally can't - so you just don't want others do have this feature, because you can't have it for free. Why?
I think it should come as a promoted extension or something, there are just many users who can't or won't use this feature due to it requiring a contract with a third party. Shipping it with the IDE itself unneccessarily bloats it and probably slows things down.
If you can show a negative impact from this feature when disabled I'll agree with you. Until then I'll assume it doesn't have a negative impact (like other IntelliJ features I don't use).
A good alternative is the codegpt plugin. You simply configure it with your openai api key and it should work. You have to set up a credit card so they can bill you for token usage. But that's super cheap. My bills are below 1$ every month.
Code gpt allows you to select code and then trigger different prompts for that. Like review this code, find bugs, optimize this code, etc. If you select gpt 4, it gets pretty OK. I've caught a few edge cases with it.
I tried it recently and something I found immediately lacking is the breadcrumbs view. Without it I can't look at all the other code in the same package/folder/whatever.
Oh it's just that it's been moved! Thank you for that. I was so used to the old UI I was completely blind to the idea it might have been elsewhere. Well, okay, I've switched my PyCharm to the new one so I'll get some experience. Leave my IntelliJ and Clion on old so I can get work done heh.
I don't think it's a total improvement, but it takes about a day or two to get used to. Feels like a well tested sidestep to just not be stuck with such an old UI and not turn off new comers.
Anything specific you like besides changing icons that didn't need to be changed (to worse icons nonetheless), removing text that didn't need to be removed and lower information density in general?
"Improved error formatting in JavaScript and TypeScript" is a bug I filed with them over 4 years ago.
I had the genius idea that you should be able to read the error messages, especially when it was related to types. The previous output was almost unreadable.
They finally agreed to add it after someone built their own plugin to do the same thing in VSCode.
A bit frustrating that it took this long, but glad they did it. Over the years, I've tried every IDE on the planet (I have no religious notion of the best one), and this one remains my favorite simply because it works very well across a lot of languages and because they do listen to feedback in their issue tracker (eventually).
"Eventually" is definitely the keyword here. I remember problem with Setting Sync (where the Material Theme UI plugin would bloat the setting size too large for it to sync and it just throw error without allowing user to try to fix it) that was on their issue tracker for years until one day a dev came in, asked for the log, and the entire thing was fixed within a week.
I get it. They have an issue tracker full of bugs. Most companies just ignore it or don’t have one at all, but they seem to have dedicated staff who manage it. I imagine that they just prioritize at some level based on what competition is doing.
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?
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/
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 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 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...
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?
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.
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?
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.
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?
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 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.
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.
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).
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.
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 hate this, and the general trend. At least, on GTK apps, you can disable the min/max/close buttons. Now the window looks like Windows. It also has two useless buttons, since I'm running a TWM there's no "minimize" nor "maximize". I could already not show a title bar if I wanted, now I can't get rid of the useless buttons.
AFAICT it doesn't read much of anything under Linux. It has supported following the system light / dark setting for a while on Windows and MacOS, but it still doesn't do it on Linux. The kicker, though, is that a plugin is able to do it, so it's not impossible.
Does anyone have this problem where `/users` present in any path in the run configuration capitalize upon Pycharm exit? e.g. https://imgur.com/2gy8S9k. (I think it happens because in the server I have /users folder and in MacOS I have /Users and it tries to autocorrect path?) It is extremely annoying as everytime I have to revert all the changes pycharm does to all my run configurations. I remember there is a bug entry for this which has been open for quite some time.
Also I am using PyCharm 2022.1.4 (Professional Edition) because they removed the functionality to edit/customize ssh interpreters in the later versions.
I love PyCharm, as I work mainly with ssh interpreters my patience is tested everyday
I'm a huge JetBrains nerd. Love their stuff. Definitely married to their IDEs at this point as muscle memory, however:
Their quality has gone down hill lately. Plugins are a bit half baked or missing lots of functionality. They for the longest time would eschew using the community available LSP as opposed to trying to build their own, they finally capitulated on this (I saw this with the Vue related updates in Webstorm that they're using Volar now, for instance)
I know they're likely throwing alot of effort behind Fleet, but its taking way too long to get out the door as usable. Its missing too much. Its a chicken / egg problem in that I can see how Fleet is the next generation of Jetbrains but its not far enough along to supplant any of their IDEs because its missing too many features and plugins.
I really hope this is a lull (all companies have them) and they come out swinging again soon
I’m a die hard JetBrains fan and I’ve finally given up and started using VSCode because I can’t wait for them to develop language extensions for every language I want to work in. I will switch back as soon as I can for the languages I can’t use now, but for now, straddling two sets of IDEs really sucks and I’m kind of considering dropping JetBrains entirely just for less mental overhead.
Lack of proper LSP support is killing them and their recent development isn’t enough
I have felt like there has been a drop in quality recently which is frustrating. Last I checked there were still Vue 3 things that didn't work well that work in VSCode from what I can tell. I don't expect them to have everything perfect at launch but it's been 2-3 years and Vue 3 is still worse than Vue 2 coding (I do both) in a lot of little ways. Some of that is Vue 3's fault (don't get me started on them abandoning class components) but some of it really should be handled better in the IDE.
As for Fleet... it's shit. It's just a slightly nicer VSCode but I have zero interest in editing JSON files to configure my plugins. I think in the end it's just going to be a less popular VSCode. I see it as a bad distraction for JetBrains and it worries me quite a bit. Stop chasing VSCode and improve your IDE.
1. Make sure it's not your machine itself that's getting slow. On Intel Macbooks try running "watch pmgset -g therm" and watch the speed limit. If it drops below 100 then nothing you do to your IDE will help.
2. If you're seeing freezing, try enabling the memory indicator in the status bar. If you see the freezes correlate with drops in heap usage, increase the maximum heap size. In this release they increased the default to 2G but that's still really quite small. I have it set to 8G and never see stalls.
3. On macOS try turning off "Displays have separate spaces" in System Settings. You can also experiment with toggling ProMotion off and setting the display refresh rate to 60 Hz.
4. Try turning off "matched brace", "show whitespace" and "show code lens on scrollbar" in settings.
A lot of performance issues these days are to do with macOS and the myriad different ways you can fall off a performance cliff especially when working with external displays.
This command (with -g therm) shows CPU thermals. You can also run top or Activity Monitor and if you see kernel_task taking up a lot of CPU, that's the OS throttling the CPU for heat.
This thread is about IDEA but I wish there was more awareness about the serious performance issues in CLion. I have to spend over 30 minutes for the refactor-> extract method to prompt me what I would like to name my method. Then another 30 minutes for it to execute it. It's a small c++ project too.
I appreciate the community version of IDEA being open source. I was able to look up the implementation for how java that handles this. The c++ implementation I cannot access. I've added some comments with my results from a profiled run on some old tickets about this (including one as far back as 8 years ago) but it doesn't seem to be a priority, yet!
Funnily enough they add the AI feature I care the least about: chat. It's more clicks and typing for things I can do/google myself already. The frictionless autocomplete of Github Copilot is so much more useful for quick development.
87 comments
[ 3.1 ms ] story [ 172 ms ] threadI can’t remember the last time I got flamechart navigation to work in WebStorm. How about fixing what is broken before adding new, guys.
Really love jetbrains IDEs.
I'm also very interested to hear what their billing will be for this, which they conveniently don't mention.
...because, bluntly, that openAI sh$t isn't free (specifically custom models), and either a) jetbrains is taking a hit to their bottom line using it, or b) they're going to roll out new pricing off the back of it.
This language clearly indicates possibilities for local models in the future or at the very least other options for hosted models.
Would you rather them roll out cost-plus pricing or roll up the cost of new features into higher base prices?
I don't understand what the exact problem is you're having.
I could understand your point of view if it was a feature that could be made free in some way. But it literally can't - so you just don't want others do have this feature, because you can't have it for free. Why?
Code gpt allows you to select code and then trigger different prompts for that. Like review this code, find bugs, optimize this code, etc. If you select gpt 4, it gets pretty OK. I've caught a few edge cases with it.
-> View -> Appearance -> Navigation Bar
I am sure some genius designer can make it work, but when even Apple fucks it up, I don’t want someone who tries.
I had the genius idea that you should be able to read the error messages, especially when it was related to types. The previous output was almost unreadable.
They finally agreed to add it after someone built their own plugin to do the same thing in VSCode.
A bit frustrating that it took this long, but glad they did it. Over the years, I've tried every IDE on the planet (I have no religious notion of the best one), and this one remains my favorite simply because it works very well across a lot of languages and because they do listen to feedback in their issue tracker (eventually).
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?
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/
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?
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.
I've gone through this process from vim > eclipse > komodo > atom > vscode
now that's a name i haven't heard in a long time...
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.).
Only started using IntelliJ about 3-4 years back (due to Android development) so I don't have any comparison from older days there.
No change / add in plugin's everything same.
Switched to using '17.0.8 Eclipse Temurin Java Runtime' and it's fast as before this release.
Hope this helps someone.
Maybe they could raising a warning to the user when it sees evidence of lots of GC trashing?
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.
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.
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.
Also I am using PyCharm 2022.1.4 (Professional Edition) because they removed the functionality to edit/customize ssh interpreters in the later versions.
I love PyCharm, as I work mainly with ssh interpreters my patience is tested everyday
Their quality has gone down hill lately. Plugins are a bit half baked or missing lots of functionality. They for the longest time would eschew using the community available LSP as opposed to trying to build their own, they finally capitulated on this (I saw this with the Vue related updates in Webstorm that they're using Volar now, for instance)
I know they're likely throwing alot of effort behind Fleet, but its taking way too long to get out the door as usable. Its missing too much. Its a chicken / egg problem in that I can see how Fleet is the next generation of Jetbrains but its not far enough along to supplant any of their IDEs because its missing too many features and plugins.
I really hope this is a lull (all companies have them) and they come out swinging again soon
Lack of proper LSP support is killing them and their recent development isn’t enough
As for Fleet... it's shit. It's just a slightly nicer VSCode but I have zero interest in editing JSON files to configure my plugins. I think in the end it's just going to be a less popular VSCode. I see it as a bad distraction for JetBrains and it worries me quite a bit. Stop chasing VSCode and improve your IDE.
1. Make sure it's not your machine itself that's getting slow. On Intel Macbooks try running "watch pmgset -g therm" and watch the speed limit. If it drops below 100 then nothing you do to your IDE will help.
2. If you're seeing freezing, try enabling the memory indicator in the status bar. If you see the freezes correlate with drops in heap usage, increase the maximum heap size. In this release they increased the default to 2G but that's still really quite small. I have it set to 8G and never see stalls.
3. On macOS try turning off "Displays have separate spaces" in System Settings. You can also experiment with toggling ProMotion off and setting the display refresh rate to 60 Hz.
https://youtrack.jetbrains.com/issue/JBR-526/IDE-is-unusably...
4. Try turning off "matched brace", "show whitespace" and "show code lens on scrollbar" in settings.
A lot of performance issues these days are to do with macOS and the myriad different ways you can fall off a performance cliff especially when working with external displays.
This command (with -g therm) shows CPU thermals. You can also run top or Activity Monitor and if you see kernel_task taking up a lot of CPU, that's the OS throttling the CPU for heat.
I appreciate the community version of IDEA being open source. I was able to look up the implementation for how java that handles this. The c++ implementation I cannot access. I've added some comments with my results from a profiled run on some old tickets about this (including one as far back as 8 years ago) but it doesn't seem to be a priority, yet!