But over the years the architecture has developed real instability. Frequent crashes, terrible and fundamentally broken package/dependency management. Difficult to find features, inconsistent UX and a vast amount of very low-quality plugins in the ecosystem.
Then there's the extremely varied and confusing set of packages. There's even a matrix of packages and features to help you decide! But even that grid barely scratches the surface:
http://www.eclipse.org/downloads/compare.php
Using Eclipse over a period of months creates an ongoing feeling of anxiety and fear of project file corruption. Updating a plugin is a crapshoot. Dead repository links abound, installs and upgrades have a high likelihood of failing. Upgrading Eclipse itself is like playing routlette with your project file.
Two years into using IntelliJ, I'll never look back. I used to be a huge Eclipse fan, used it for many years, but it just hasn't aged well at all -- it's a layered-over Frankenstein that barely resembles its former greatness.
The whole announcement is that it is based on IntelliJ.
As to OSGI -- that has been the core of Eclipse for nearly a decade, and IMO also a big part of the problem. The promise of OSGI was to allow Eclipse to be treated as a radically-open MDI framework that you could write just any old software on -- not just IDEs, but gaming frameworks, spreadsheet editors, on and on. The reality is that the standards for Eclipse's OSGI "drop-in" architecture have not stabilized into a robust ecosystem, rather it has lead to wildly varying user experiences, odd menu/pane/window configurations that have little consistency from one plugin to the next and poor quality software across the board. I'd be very reluctant point to Eclipse as an example of OSGI's fulfilled promise.
Also -- not sure if you read the OP, but the new Android IDE is going to be IntelliJ, not Eclipse.
And UX wise it isn't just "crappy." It take some serious doing to be less intuitive and newbie-friendly than emacs.
I don't think so. If that were the case, I would have switched to IDEA a long time ago. Going off topic, I don't really like Java very much either. Anyways so what plugins did you have installed and when did you last you use it? What did you use it for - web development or something else like Android development? So far no one has been willing to list which plugins they're using so I'm suspecting that people haven't actually used Eclipse in years.
A GUI should offer you all and only the valid operations you can perform, depending on the selected object(s). Eclipse, far too often, offers to, e.g. deploy your Android app to a server. This kills discover-ability, especially for novices. It's like feeling around blindly in a box but every third thing is a hammer that bashes you on the knuckles. No. Fun.
Eclipse comes off as a GUI pasted on a CLI, where any command can be performed at any time, and you are only told if the arguments are wrong after an attempt to execute a command. You can blame this on plugin developers not fulfilling all the contracts of all the interfaces, but, still, that's how Eclipse is in practice.
Eclipse has gotten better, and I have Stockholm Syndrome by now. But it is far worse than XCode or Visual Studio for basic usability.
Visual Studio does this, mostly and it's way too annoying.
Those are my main complaints. I haven't used IntelliJ so I don't know if it is much or any better. I kind of feel like Eclipse exhibits the primary pervasive cultural philosophy amongst Java developers; create something massive and unwieldy, embed some useful functionality somewhere beneath layers of tedious boilerplate, and bundle it all up and act confused when no one wants anything to do with it. This is further exhibited by Java's attachment to XML, its packaging mechanisms (wars and jars everywhere), and its general verbosity.
I appreciate the intention behind all of this, but I think it's totally non-functional from an outsider's perspective. I hope IntelliJ is better.
Eclipse just feels clunky and not very well designed. Like they forgot to find someone to do UX work. Plus the workspaces concept is really stupid, and the versions I was using couldn't open a file if it wasn't inside a workspace.
It's not that it's faster. That helps. The thought that was put into how you can make it your own -- search boxes on the settings menu are mindblowing -- and the overall polish makes it extremely awesome. I expect that IntelliJ is similarly awesome for Java, because Jetbrains makes good stuff.
The few things I can think of offhand that I like about Eclipse are that I can drag tabs of code windows around and it automatically will split however I want (PyCharm doesn't let me do that as easily, though it does support split windows Just Fine), and the fact that Eclipse is a de-facto (and FREE) standard IDE that nearly everyone has examples for.
PyCharm, and IntelliJ by extension, has been the first IDE I've ever used that I've felt was worth spending money on.
My only complaint is that even with all the tweaking in the world it's basically impossible to make their Swing-based editor component not look terrible on Linux.
Lately I've switched using emacs w/ JDEE to edit code and Eclipse mostly just for debugging and the Android XML layout tools, which feels much better. I'm really interested in this new IDE from google, it'd be better if I could do all my editing/debugging in one program.
I dislike Eclipse primarily because of really bad UI. Big toolbars, tabs, everything takes up considerable amount of screen leaving very limited space for code. Looks ugly. Speed sucks too.
On other hand, IntelliJ not only has cleaner UI, but also better shortcuts and even show hints to remember them. Speed not great, but feels better than Eclipse.
Also, I know what you mean by the large amount of screen real estate all those toolbars and windows take up, but you do know you can close / turn all those off right? It's not too bad after that.
Eclipse is slow, you have to manually edit memory-settings in eclipse.ini just to get bearable performance(-Xmx384m wtf??), it's buggy, plugins are confusing and often conflicting , the ui is bloated, intellisense is more in the way than it is helping, keyboard focus is all over the place when switching between panels(for example going between code/project/search). It's simply frustrating to work with it once you're used to something that actually works smoothly.
Anyway as IDE developer for alternative languages (Scala, Kotlin) I dont like Eclipse because they refuse to integrate any sort of support for third party languages. This has been going on for nearly a decade. Vmware had to basically fork JDT to build decent Groovy IDE.
There are many amazing third language IDEs implemented as Eclipse plugins, not forks, like http://www.eclipse.org/koneki/ldt/.
This requires deep integration with Java Development Tools to make incremental compilation working. And JDT team refuses this sort of stuff for nearly a decade now (since AspectJ). There are various hacks (such as aspect hooks used by Scala IDE). Probably best solution is JDT fork made by Spring Source (VMware) : http://blog.springsource.org/2009/07/30/a-groovier-eclipse-e...
And to add insult to injury Eclipse Foundation created their own language called Xtend. It has cross-compilation as well, but it first compiles down to Java source code and result Java code is than compiled by javac. Basically Java Preprocessor. (dont get me wrong. I really like Xtend as language, I just wish their team would put some pressure on JDT folks).
Echoing what others have said, you will notice if you've tried other IDE's. Since my main IDE is Visual Studio, I notice the lag / slowness / clunkiness immediately. YMMV. Maybe on a newer blazing fast CPU it's not so apparent. Definitely not OS dependent. I've tried Eclipse on both Windows and Linux, it's slow on both.
I was disappointed when I bought a brand new Macbook Air last year though only to find hitting cmd-s then switching to a different tab "loses" the save if you do it too quickly (among other general slowness). It's amazing how over so many years with massive hardware increases it doesn't seem any more responsive.
I remember the Google team being shocked (as was the Eclipse community) when Juno came out since it was so awful ui-performance wise. They rushed to donate some machines to re-enable performance tests which had been commented out due to lack of resources, it was small like 10K commitment or so. With their help the Eclipse team was able to mitigate the problems, but its still very slow compared to the 3x branch. In a way they seem like they dont want to admit it and defend the 4x branch. I'm sure this Studio release will be a wakeup call.
I suspect we're seeing the result of Eclipses 4x failure. The only light at the end of the tunnel is that Eclipse releases every year along with its huge plugin ecosystem. They almost never miss a date which is amazing considering its usually millions of lines commited on everything from graphical modelers through c++ tools. Maybe the next major release will fix all this crap and restore order to the Force.
edit/tl;dr: 4x performance issue fixes hopefully done by June 2013: https://bugs.eclipse.org/bugs/show_bug.cgi?id=393429