| Reasons I prefer eclipse: The git "commit and push" workflow is less ergonomic than eclipse's - you have to wait for it to perform the commit and then ok another dialogue to do the push, rather than just hitting "commit and push" and letting it happen in the background. There's no obvious way to search within a directory. I don't want to search everywhere which is the only option I see in ctrl-A. I want to be able to right click or similar on a directory in my project and search just in that directory. I can't tell how to reorganize the UI. In Eclipse I have the Window > Views menu. In IntelliJ panels seem to appear and disappear arbitrarily as I invoke particular actions and I have no idea what rules it follows or how to control it. Edit: aha, there's a weird square in the very bottom left corner: having clicked that the tabs for the panels have appeared which makes it much easier. No save button means I can't tell the IDE when not to try to compile. This is important when working on complex code (particularly Scala) and I know compiling it is going to take a few seconds of sluggishness. The Scala presentation compiler (admittedly not really the subject of this article) has too many spurious errors (most prominently one I reported as SCL-9700). Most importantly of all, continuous building simply isn't reliable enough. In eclipse, if I've hit save I can tell when the build has finished, and if the build has finished and there are no problems in the problems view then I am 100% confident that my code actually compiles. This simply isn't the case in IntelliJ (e.g. after renaming a class it won't necessarily complete the rebuild and so errors don't always show up until after you deliberately make). |
That being said, as someone who uses IntelliJ frequently, I wanted to respond to a couple of your points:
> No obvious way to search within a directory
In the "project" pane (the place where it shows the folder structure of your files) just right-click on any folder and select "Find in Path" (Ctrl-Shift-F). Definitely an important feature, I use this all the time.
> I can't tell how to reorganize the UI.
You solved this yourself. ("aha, there's a weird square in the very bottom left corner...")
> No save button means I can't tell the IDE when not to try to compile [...] compiling it is going to take a few seconds of sluggishness
Interesting. My experience has been that the compiling just takes up background, low priority threads and doesn't interfere with my work -- I don't even notice it getting behind. I have never tried it with Scala code (which does a LOT more during the compile phase) so maybe it's more noticeable when doing that.
> continuous building simply isn't reliable enough [...] (e.g. after renaming a class it won't necessarily complete the rebuild...)
Curious. I never seem to encounter problems like this. I wonder why. Does the ability to trigger a make when you want it mitigate this somewhat?