Get up to 50% OFF JetBrains Tools and Support a Good Cause
blog.jetbrains.com
blog.jetbrains.com
First, the easy ones. ReSharper, dotTrace and dotCover are all independent products that don't really overlap with the ones I'm about to talk about.
The "Core" doesn't exist as a product, but it's all the things that are product-independent and aren't provided by plugins like the editor, HTML/CSS/JS editing support, debugger, theming, etc. I'm mentioning it because each IDE ends up with a slightly different version of the Core based on when it was released, which means that using IntelliJ with the Python plugin might not have all the features of PyCharm if PyCharm got a major version update more recently than IntelliJ.
WebStorm (JS/HTML/CSS IDE) has the core functionality plus Node.js plugins. You can install other plugins, but only a limited subset.
AppCode (Obj-C IDE) has the core functionality plus product-specific Obj-C plugins that you can't install in any of the other IDEs. AppCode only shares a few plugins with other IDEs, like the Vim emulation.
RubyMine, PhpStorm and PyCharm have the core functionality plus language/platform-specific plugins for Ruby, PHP and Python respectively. You can install other plugins, but nothing that would turn one of these into the other, for example installing the PHP plugin in PyCharm.
IntelliJ IDEA has the core functionality plus a huge variety of Java plugins. It can also use the language-specific plugins from WebStorm, RubyMine, PhpStorm and PyCharm as well as others that are downloadable. It can install almost all of the plugins that are supported on the platform - the only exception I'm aware of is Obj-C support.
Hope that answers some questions.
I've been using WebStorm lately and have been considering purchasing it but I'm also learning Scala on the side and would also benefit from IDEA. If IDEA can handle NodeJS and TypeScript is there a point to purchasing WebStorm as well?
I'm currently working my way through the Functional Programming in Scala course on Coursera using Eclipse. I'm not sure if I would make use of IDEA for now which is why I'm unsure whether to buy it or save myself $70 and get WebStorm only. Plus I think WebStorm currently supports TypeScript better than IDEA but that could change with an update.
I'll definitely pay the $99 if they throw in WebStorm. Is that something you've heard JetBrains has done in the past?
That said, for general use I really like the Scala support in IDEA. I'd suggest playing around with the free version a bit - as you mention, Play support is only in Ultimate, but the Scala plugin itself works fine in Community. You can get a feel for how IDEA manages projects, handles debugging, that kind of thing.
I wouldn't get PHPStorm if you're not using PHP (unless you want to be future proof in case you do end up using it.)
Check out the webstorm features here: http://www.jetbrains.com/webstorm/features/index.html
I use webStorm for javascript only projects and phpStorm when I'm doing php development.
I configure each IDE to work how I like with the language of choice and all is good in the world.
The reason I moved to Sublime is I no longer primarily work with just PHP any more. Javascript, HTML, Python, Ruby, Node.js and CSS are some of the languages I find myself in. Sublime lacks a lot of nice features that PHPStorm has and definitely is a bit more manual in some aspects, I do miss the intelligent syntax highlighting and checking (warning you if you forgot to close a if statement and whatnot).
I do miss some of sublime text's features but the integrated debugger tools and other awesome features... I can't go back
EDIT: I still use SBT2 for looking at source code, especially projects cloned from github for learning, etc...but my main work projects are now in PyCharm.
That said, one annoyance with it:
When you have a personal license, it does a network check to ensure that the license is only in use on one machine on the LAN and locks out other instances popping up a 'reactivation' dialog in them. The check is fine and reasonable, I just wish it worked a different way as it messes with my workflow on a regular basis.
I work primarily from home and like switching between my laptop and my desktop regularly. I may use my laptop outside when its nice or just sit on the couch for a change in position then sit my desktop for awhile or maybe I need more horsepower or screen space than a macbook air can provide. I generally just like to change things up periodically.
The fact that it completely locks out the other IDE almost instantly can get really annoying. I sync code through github but if I forget to sync something, I then play whack-a-mole with the dialogs to get back to work. Another annoying thing is when I close my laptop then move to my desktop but want to check on something on the laptop completely unrelated and as soon as I open the lid, boom desktop is locked out.
I really wish it had some sort of timeout, read only mode or just allowed 2 instances as I can't imagine my situation is all that unique.
Unfortunately their systems aren't set up to deal with multiple personal licenses and it requires a call to their sales department every time I renew.
Now I am bouncing among 3 machines and getting frustrated again but buying a third license just to get rid of the message is not an option.
I am not 'using' the instances simultaneously but it's incredibly inconvenient to keep opening and closing the IDE as I change from one machine to another.
I understand the need to protect their source of revenue but there really needs to be a better solution than this.
Granted I did call them two years ago when I first wanted to do this and asked, so maybe they added something to my account, but I was simply told at the time that I could.
I bought a PyCharm license, just hoping I will use it. So far I've played with it for about 2 hours total. But there's still hope...
I use work-provided IntelliJ for the day gig. It's okay.
I use Eclipse for my personal projects. Momentum mostly, been using it since the alphas. But I do greatly prefer the single problem(s) view. And the InstaSearch plugin rocks (Eclipse's stock search blows).
I use SublimeText for most non source code editing.
I was looking into IntelliJ to have a more polyglot environment. Could anyone tell me if I can get all the features found in PyCharm (.e.g wonderful Django support) if I switch to IntelliJ and then install the Python plugin?
Anyway, not cool since only new customers get an discount.
Have always been a customized emacs user before now (using JEDI etc) but intellij does have some nice features - if not quite so snappy.
I can't recommend IntelliJ enough, second only to Visual Studio. Nothing in the Java world beats it, plus all the framework and other language support it has is just great!
Edit: Just to be clear, I don't work for them, have no affiliation, etc.