Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
IntelliJ IDEA 2016.3 GA: Java 8 and ES6, Debugger and UI improvements, more (jetbrains.com)
61 points by andrey_cheptsov on Nov 22, 2016 | hide | past | favorite | 52 comments


One thing that IntelliJ does not support is working on multiple branches of a product without having to reindex.

I work with a lot of Open Source tools (e.g. Hadoop, Kafka) with complex build setups. It often takes 10+ minutes for IntelliJ to load a project. If I now switch to a different branch it starts all over again.

I wish it'd keep a cache of multiple index versions around.


I use git worktree as a workaround for this case.


Can you go into more detail about that?


I assume he means he uses git worktree to create a directory structure like so:

src/my_project_master/

src/my_project_develop/

src/my_project_new_feature/

Each with it's own IntelliJ project. If he needs to switch branches it's relatively fast to open a different existing project rather than git checkout branch, which can cause IntelliJ to become unresponsive as it reindexes everything.

Not tried this, but I experience this quite often and will have to give this a shot.


The recent WebStorm 2016.3 is really great as well: Flow support, convert to ES6 quick actions, React Native, debug Node apps inside Docker containers, ESLint quick fixes, etc.

If your editor doesn't offer basic productivity accelerators like React property autocompletion, or a Go-to-Definition that works across ES6 modules, or refactoring support in JS, you should really look into a proper IDE like WebStorm. Yes, it costs actual money, but it's a no-brainer for professionals. I've tried VS Code, Atom and others but keep coming back to WS for the pure productivity aspects.


400% CPU on PyCharm for me... I am super impressed with the features of this IDE; for me personally the jetbrains ones are my favourite, but whatever the setup on this Mac they are too slow for me to use.

Since moving to VSCode my laptop battery lasts a couple of hours longer :-/


I use PyCharm and WebStorm regularly without having persistent high CPU usage, although I've seen other people run into it.

Maybe you've already tried this, but one thing that I've found is that the JVM heap size is sometimes set too low, especially when working in a large project. You enable the memory indicator in the bottom right ("Window: Show Memory Indicator" from the Cmd+Shift+A menu) to see the current and max memory usage, and you can click it to manually trigger a GC. If your heap is too low, you'll GC a lot, which can easily cause CPU spikes.

There are details on how to set the heap size here: https://www.jetbrains.com/help/pycharm/2016.2/tuning-pycharm... . But the short version is that (on Mac) I made a pycharm.vmoptions file at ~/Library/Preferences/PyCharm2016.3/pycharm.vmoptions and it includes the line "-Xmx3000m", which sets the heap size to 3GB.


I've literally tried changing all the JVM settings to be higher and it has zero effect.


I was at 600% CPU and 5GB of RAM with 3 project windows open, for IntelliJ Ultimate (we hop between a lot of languages so this is easiest). This was with most inspections turned off!

I've also moved to VSCode and haven't looked back. My whole team is currently evaluating VSCode. That is ~$600/mo in subscriptions to IntelliJ Ultimate if everyone decides to move to VSCode - which is looking likely.


depending on language, VSCode will be vastly inferior.

If using Java, Groovy, Kotlin, or Scala, Intellij will be much more valuable in terms of time-saving than the $600/mo subscription savings.

For most other languages, VSCode is easily almost on par with Intellij.


Totally agreed on the value-add for those languages. We'll probably keep one license around for the times we drop into Java for Android which is fairly infrequent. Otherwise, we're a mix of JS (NodeJs/React/Appcelerator/etc), Ruby (via Puppet), HTML/CSS, PHP, Python, etc. IntelliJ was overkill in the first place but the one IDE to rule them all is just too compelling to not give it ago. Worked for 2 years, the product has just gotten too slow now.

My gut reaction is that IntelliJ's indexing isn't yet properly optimized for the small-file dependency-hell that JS dev has turned into.

The unfortunate thing was that we were willing to upgrade to the newest Macbooks if they had 32GB of RAM and hope that helped (in addition to some VM woes for working on infrastructure) - probably would have kept IntelliJ in play but the swapping and it using 33% of RAM on our machines made it an easy target to try to replace.

In comparison, VSCode is using 70MB RAM on my machine currently with 6 projects open.


> we were willing to upgrade to the newest Macbooks if they had 32GB of RAM

Any specific reasons why you're not considering PCs and linux?


90% iOS app development, 10% familiarity.

We're a small shop so we have one team that does everything so one machine for all contexts is starting to be a pain. We did at least dust off some mac minis to do puppet (lots of virtual machines) work on those when possible to free up some RAM on our app dev machines.


> For most other languages, VSCode is easily almost on par with Intellij

That's a bold claim, considering the fact that most languages that have support from the Intellij platform benefit from refactor tools, quick fixes, linting, and code navigation. I'm not familiar with VS, but if it's anything like Sublime Text, Atom, etc. it probably only has syntax highlighting, some dumb auto complete and very basic navigation.

Also, don't forget Intellij has pretty decent support for Python, PHP, C#, C++, Rust, Clojure (all languages are personally tested) and even integrated git and db clients. Personally, I split my git activity between CLI and IDEA, but I have to confess, the IDEA client is the best I've used: integrated merge / diff tools, annotations, easy to browse logs etc.


> If using Java, Groovy, Kotlin, or Scala, Intellij will be much more valuable in terms of time-saving

Any IDE is more helpful for programming in statically-typed languages, which Java, Kotlin, or Scala are. Apache Groovy, also on your list, is dynamically-typed originally -- though static typing was added in Groovy 2, virtually no-one uses it -- so I question if any IDE, whether IntelliJ or VS, really gives time-savings there. Anyway, such dynamically typed languages like Groovy are good for glue code, build scripts, and testing, not for developing actual systems.


It's not only on Mac, on this Windows machine with i7 and 16GB of RAM music playback starts stuttering when IDEA does its thing. I still like it though


I often have to work with C++ code at work, so I'm all too familiar with music and video stuttering during compilation.

I usually just use procexp to give the music player process higher priority, which solves the problem (although not permanently).


Weird. I've usually got 3 or 4 projects open in PyCharm and I'm seeing CPU usage like this: https://www.dropbox.com/s/88crexgbaf7s042/Screenshot%202016-...

(hovers around 0.5% for PyCharm with occasional spikes up to 40-50%)


I find it surprising that some people complain about performance, here even with two large Java projects I only get that kind of CPU % when building indexes (only after importing a project or dependency adjustments) and its only for a few minutes.

Maybe a specific Python project thing?


As someone else mentioned, if you switch branches, IntelliJ will need reindex everything. I switch branches several times per day on some projects and it's annoying enough where I considered switching over to light weight editor.


Scala in Intellij blasts my CPU. People near me know when I'm working on scala because my mac nearly takes off the fan runs so much...


Good to know that's a thing, I thought I had misconfigured it somehow. Waiting for the Scala IDE rebase on vscode.


What about font rendering on linux, any better?

As of now, it's so horrible I can't use the product. Font rendering in Atom or Sublime is so much better.From what I understand this is because of their usage of java swing. But looking at fonts is what we do all day and I can't have them to look like shit.


We made quite a lot of progress in this area recently. However, not all these changes have made it to the release. When you have a chance, please try to launch the IDE using the latest JDK downloaded from https://bintray.com/jetbrains/intellij-jdk (e.g. the build 555).


Glad to hear, I actually love Jetbrains products but since the fonts have been pretty bad it was impossible for me to use the product.

I will try the latest version out!

EDIT: How do I start it with that version?


I used to feel the same way. However, after switching to Oracle JDK, and modifying a couple of settings in one of the dot files, it seemed to look as close to atom/sublime as possible (on font sizes 16+).

^ Tested on Webstorm and IntelliJ.

Will post configs when I get home. (I'm on Ubuntu 16.04 with Unity 7 and the latest updates)


As far as I am aware it doesn't happen with Oracle JDK.


I tried to install it on my system but it seems I cannot successfully do that. :/


http://i.imgur.com/vkEq2qP.png

Left is Intellij, Right is VS Code, same font same size.

Using the latest x64 jdk release on bintray, it's remarkably close for a swing based app.


It's hard to judge though, since the image has compression artifacts. Also hinted anti-aliasing may look well on one monitor, and bad on another (RGB horizontally vs vertically, or other arrangement). But ignoring this, the outlines look very nice in both.

And having said that, I actually prefer fixed non-anti-aliased, in fact very pixelish "Anonymous Pro 8" everywhere.


http://imgur.com/a/EZYEB

Left is Atom, right is Intellij and I think it's much better now than before when I installed Oracle JDK


On Ubuntu installing infinality and their JDK patches made the fonts look amazing for me. With certain settings I even prefer it over OS X


I've changed everything on my system to be "Anonymous Pro 8" without any anti-aliasing, then forced it IJ to be "10". I did simply because when Chromoting, it'll still look good.

Somehow I've got really used to fixed-width font for almost anywhere, and seeing each pixel actually makes it somehow more readable to me.


Looks flawlessly on my Linux Mint 17.3 Cinnamon machine using OpenJDK and 'Monospaced' (fontname). I had to set 'antialiasing' to 'greyscale' under 'appearance'.


What distro/DE? I'm using it under gnome 3 and its looking fine here.


Red Hat enterprise desktop, I also have Gnome 3 and tried Webstorm recently and was very disappointed.


Might that be related to some very old gnome or java version?


I noticed an improvement over the last version, so I'd give it a spin.


Looks good to me here, using KDE Plasma here, and Oracle JVM.


On Cinnamon + HiDPI IDEA looks perfect.


I really wish they'd roll the CLion C++ support into their IDEA releases, so I could just use one tool for multiple languages.


We do plan it in some future (https://youtrack.jetbrains.com/issue/CPP-4141). However, due to historical and some technical reasons, it's not that quick, so postponed for now until we find some resources for this task.


you should at least get the makefile support from C++ in there.. people use makefiles for bootstrapping docker all the time. https://youtrack.jetbrains.com/issue/IDEABKL-5173


That's good to hear. And I concur with the other reply here that additional build systems are going to be needed. I use CLion every day at work, but I have to maintain my own CMakeLists.txt and keep it in sync with our actual (Makefile or Bazel/Blaze) builds.


Same thought exactly!

CLion has had python for a while so that kinda covers a bunch of my use cases but I still need java


That and also having integration with other build systems like Gradle native would be perfect - I could have a single build system for the entire project instead of that CMake junk.


I have come around to CMake. I've come to really like it because of using it in CLion.

But having it as the only option is definitely restrictive. And not competitive with Eclipse, which is more flexible on this front.


I just bought the all-you-can-eat license.


The Java 8 refactorings looks awesome!


Similar quick-fixes are now available for Kotlin as well: https://www.jetbrains.com/idea/whatsnew/img/2016.3/idea_2016...


does intellij idea not update itself on mac if i have the previous version? it's sending me to a new download link for 500mb+


You can fix this using the intellij toolbox




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: