No matter how hard I try, I can't get away from JetBrains. I've been grandfathered into their original pricing for the toolbox, so that makes it even harder. I have a plugin I've written for VS Code that was part experiment to see if I would have good uptake into the editor and part as a way for me to learn how to contribute to the plugin ecosystem. VS Code just isn't fast enough on medium to large projects. And it's never felt as much of an ide in comparison to JetBrains tooling.
I love the JetBrains toolbox. Webstorm is wonderful for all things frontend and I've heavily used Intellij for Elixir development. The level of polish for this tooling is ridiculous and I would recommend anyone who hasn't given their work a shot to go out and try one of their editors for your language of choice.
Things I can't live without in the JetBrains ecosystem
- VCS integration
- Hands down the best integration in comparison to GitLens or any other plugins I've used for VCS in other editors and it's built right in.
- Local history
- This has saved my ass a few times over. It's amazing how far you can go back. And yes I know what version control is.
- Refactoring
- It's just worlds better in comparison to what VS Code/Atom/Sublime/Eclipse/NVIM offer.
- Language support
- The number of well written plugins out there makes the VS Code ecosystem pale in comparison.
- IdeaVim
Things I wish were a bit easier in the JetBrains ecosystem
- Sharing configs
- I love VS Code's philosophy of making all configs accessible/shareable as json.
Nice job to the JetBrains team. Seriously, you've made a fanatic out of me.
I'm also a huge fan of JetBrains products and how they work together. It's at the point where I'm thinking of slogans for them, like 'At JetBrains, the E in IDE stands for experience'... or maybe 'ecosystem' (needs work). Several times I've realized I could use a tool for X, and found it's already a feature they've already created.
One more great thing to add to the pile:
- Teamcity, the only CI/CD software doing actual 'configuration as code' using kotlin.
Others (that I know of: jenkins, github action, gitlab) use an arcane-DSL-backed yaml file and call that 'code'. I'm not sure why copy-pasting plaintext files that throw away most the benefits of using code and IDE's have taken the software world by storm. They've become the standard API, or even UI in some cases, and it's just slow/unabstractable/non-extensible. I'm glad JetBrains has not jumped on that bandwagon and continue to focus on making a streamlined end-to-end dev experience and cater to the coders within.
I don't see how you're able to use it. This is one of the few intellij features I avoid. Doing anything other than most common tasks is either difficult or impossible. Using git cli is generally better, and it doesn't make me wait 10 secs.
There are two major issues for me with IdeaVim (although I still use it heavily): no support for language-specific maps and no way to work with arbitrary actions. I can work around both of these by using a scripting host and writing kotlin/clojure to deal with the actions I care about, but it's a bunch of work.
Really excited about the speed improvements they promised for this version. Even on a machine with 16GB RAM and increased max. memory for the JVM the UI just feels too slow.
If it was this easy, we'd have enabled this by default. Unfortunately by far not all UI freezes in IntelliJ IDEA are caused by GC, and ZGC is not a wholesale performance improvement even for those scenarios which do depend on GC.
Here's a list of various config changes to improve Intellij performance. These were just cobbled together and I have a feeling the JVM settings are out of date, so any updates or suggestions or links to better pages would be welcome. https://github.com/jordanmews/intellij_performance_settings
Not all, but with the default settings I had freezes, even if I had more than 300% over provisioning. The requirement is "no GC pauses that cause frame drops" (well, occasional single-frame drops aren't really noticeable, but anything worse starts to become visible).
A large issue is afaik the lack of memory reclamation and the over provisioning required to even really work at all.
A lot of our work is open-source. You can easily see that our investment into improving our products, visible through the open-source repositories, has been steadily increasing every year.
I don't think you guys should feel like you need to respond to these sorts of comments. JetBrains products are so clearly genre defining and to have some of them for free is just a cherry on top.
> it seems like they don't care about the product itself and now it's all about marketing
This is absolute silly hogwash with nothing to back it up.
If you think the product hasn't gotten better, completely fair to share that. To blatantly claim you know the inner motivations of its workforce and they don't care about the product is not productive.
Do you mean for recent, IntelliJ based IDEs? Interestingly, when I tried this with Pycharm Pro 2019.3.2 I got:
```
Error occurred during initialization of VM
Option -XX:+UseZGC not supported
```
> With v2020.1 EAP we are fully moving to JetBrains Runtime 11 (JBR11), and will no longer distribute builds with JetBrains Runtime 8 (JBR8). Please note that all the IntelliJ IDEA 2020.1 updates both in the IDE and the Toolbox App are coming with JBR11.
Does this mean I need to have JDK 11 installed too? We're still using JDK 8 because Spark 2.x doesn't support JDK 11, and having multiple JDKs sounds like a pain.
edit: nvm. Looks like JBR doesn't have a JDK dependency.
I'm using WebStorm 2020.1 EAP on my LG UltraFine 5K and it works well, and I have done so for at least a year. Connected via TB3, 2016 MacBook.
One thing that could help is killing Docker, everything becomes more responsive -- on Mac that is, given that it's literally a VM running on Hyperkit. That's especially the case when you have a big project on in Jetbrains IDEs (CLion, WebStorm, IntelliJ, ...).
One of the things I find interesting here is the SQL support via JaSync. A competitor to JDBC using netty and kotlin coroutines, or on Java Completable Futures..
Spring R2DBC and Vertx are built atop that library. I'm also working on a micro orm using it. But it's really nice to see that become a first class citizen in the IDE.
I’m buying a jetbrains sub in a couple of weeks. Is it correct to say that the webstorm features come with rider? I’m confused by their marketing descriptions.
I tried IDEA and liked it, but I noticed that it’s perpetually spinning my CPU at 10-15% even when sitting idle. That’s a battery killer that I don’t need. I like editors that use no CPU and do nothing when I’m not using them. Anyone else experience this?
I love the JetBrains toolbox. Webstorm is wonderful for all things frontend and I've heavily used Intellij for Elixir development. The level of polish for this tooling is ridiculous and I would recommend anyone who hasn't given their work a shot to go out and try one of their editors for your language of choice.
Things I can't live without in the JetBrains ecosystem
- VCS integration
- Local history - Refactoring - Language support - IdeaVimThings I wish were a bit easier in the JetBrains ecosystem
- Sharing configs
Nice job to the JetBrains team. Seriously, you've made a fanatic out of me.