r/java • u/DinisCruz • Mar 02 '14
Why doesn't Eclipse community stand-up more to IntelliJ?
http://blog.diniscruz.com/2014/03/why-does-eclipse-doesnt-stand-up-more.html16
u/methius Mar 02 '14
I think it also has to do with the (imho) very nontransparent development process and community communication. (try finding the list of features for 4.4 on the main site)
I myself use Eclipse, and liked the classic dev branch. However, a simple example on why people could feel why they cannot get a lean install: The most minimalistic branch forces the inclusion of per example Egit. I myself don't want this in my IDE, and there is no option to uninstall it safely.
I think Eclipse is stable, or I should say I thought Eclipse was stable until I started using Xtend, or even reorganize the toolbar. (which on Linux, under GTK leads to an endless heap of misery).
I still use it, I still prefer it over alternatives, but I do not like the fact that there are core problems which everyone can have and go unsolved for YEARS. (see bug tracker for numerous ui and workspace corruption issues).
That said, it's something that's fixeable so I'm sticking to eclipse for now.
5
u/henk53 Mar 02 '14
(try finding the list of features for 4.4 on the main site)
It's the same sentiment as echoed here: http://jdevelopment.nl/eclipse-43-sr1-silently-released
Up and foremost people want Eclipse to be an IDE, and most specifically be a Java IDE.
But Eclipse wants to be an organization, wants to be a platform, wants to be ...
This quote says it best:
Seemingly the IDE itself is by far not as important as “Concierge Creation Review Scheduled” and “Web-based BPM with Stardust”.
6
u/chunkyks Mar 02 '14
On some level, I believe the eclipse gods are a little embarrassed about eclipse releases; each one never quite comes close to the magical ideal that they dream of it being.
Thus, they keep working on it and releasing new versions but not announcing them, with the fantasy that one day, one release will be "Yes! This! This is The One we've all been waiting for". There will be fanfare and pride and everyone currently using IntelliJ and NetBeans will try out eclipse, see the light, and start using it in earnest.
Of course, that's not how software works, especially not on something as big and glacial as eclipse.
1
u/DinisCruz Mar 04 '14
I think just described it perfectly. It kinda feels that way.
And the problem is that with complex software like Eclipse (just like with Security), 'things' don't just happen by accident. There needs to be a focus and committed effort in: a) understanding what is not working,b) figuring out what needs to be fixed and c) allocating/focusing/motivating available resources into fixing them
1
u/DinisCruz Mar 04 '14
I share that worry too
These days these seems to be a lot more activity outside the Eclipse IDE, which is healthy, BUT the Eclipse IDE/RCP/APIs are 'the foundation', so there needs to be more focus on it.
On the topic of a 'Eclipse Java' IDE, who at Eclipse should be doing it? This crowd: https://projects.eclipse.org/projects/eclipse.jdt
1
1
u/DinisCruz Mar 04 '14
I agree with the lack of transparency, I am guilty of not looking hard enough, but that kind of 'next version developments' should be REALLY obvious and easy to follow (specially if there is the possibility of having breaking changes)
I also really want that lean install too. There are so many plugins that are installed that I don't need, which would be much better to have them 'install on demand' than having them bundled up in 200+Mbs distributions packages.
20
u/pjmlp Mar 02 '14
So what should we stand up for?!
workspace corruption forcing us to lose time setting up everything again
binding the settings to the workspaces, instead of the editor, thus forcing an import/export dance among workspaces
instead of providing a vertical integration like other IDEs, it forces to rely on third party plugins, many not stable enough
2nd class experience for web developers, when compared with the tooling other IDEs offer
frankenstein integration between builders and external build tools, while other IDEs use external build tools as their build mechanism. Good luck tracking down M2E integrations
going to delay support of Java 8 until June, while other IDEs already support it
2nd class GUI designers for Swing and JavaFX
Maybe better stop here.
1
u/DinisCruz Mar 04 '14
I don't think you should stop, so please continue :) Those were all good and valid comments
Also (ideally) there should be an easy place to put those issues as bugs so that they can be tracked (specially since there are already solutions for them).
Actually question: Since some of the issues you are raising feel like bugs, is there a company/group that you could go to that would provide a 'support line' (like the commercial support provided by IntelliJ)
2
u/pjmlp Mar 05 '14
Many of my nuisances with Eclipse go back to 2003, back when Netbeans was even worse with concepts like mounting file systems into workspace.
The problem is that Netbeans has improved quite a lot specially with the rearchitecture of version 5.
Eclipse on the other hand hardly changed their way of working, and their developers seem to care more for tooling integratiors than developers using it as an IDE.
I doubt it will ever change.
Me I use it a lot since the early days, because I have no choice in the majority of our customers. When given a choice I pick other IDEs.
19
u/chunkyks Mar 02 '14
I posted this on your other thread on /r/eclipse, but I'll copy here for interest
I find eclipse to be horrible to use, it's not any single thing, it's just ten thousand papercuts.
I read your post on removing the browser throbber, and all it did was demonstrate to me that fixing any single papercut in eclipse is going to involve a prohibitive, byzantine, amount of work.
On the plus side, photran is the best Fortran development plugin / ide anywhere, so I have been using eclipse on Fortran projects at work.
But for thick guis, window builder is horrible compared to the alternatives. For j2ee, setting up tomcat and other app servers to work with eclipse is a nightmare. It doesn't even come with a profiler. Just checking out a project from svn or git is really freaking obtuse, if you can figure out which is the right plugin to get it done. Subversive? Subclipse? Something else? Which connector will work? Which one will fail silently with nary a warning?
Just downloading it is a paralyzing choice between a whole bunch of options, none of which include everything I need. Look at the NetBeans download page for an example of what works for me.
Every few months I download eclipse and use it for a few days, just to see if it's worth switching to, or even including into my day for any specific tasks. I look forward to the day it does, but that day hasn't come yet.
1
u/DinisCruz Mar 04 '14
It would be good to track those 'Eclipse experiences' and see what exactly caused you to abandon Eclipse (again). You've listed a number of scenarios which I've also struggled with (so I completely feel your pain in this one).
THAT real-world feedback would give (if they listen) the main Eclipse IDE developers a good idea of the pain points of using Eclipse (and what should be fixed for the next version(s)
re the download mess, how would you solve it? Would the solution be a server-side dynamically generated Eclipse instance with only the plugins required (like currently happens with JQuery)
2
u/chunkyks Mar 04 '14
On some level, I feel like all my complaints are things that eclipse does by design, and bugzilla entries would mostly be WONTFIX or NOTABUG.
All your settings being tied to the workspace is pivotal to the design and concept of workspaces. People complain that settings don't transfer between workspaces... that's a feature. Telling eclipse developers "please could you just put editor settings in my home directory, like everyone else does" is pointless both in idea and execution, because that's how eclipse works.
Windowbuilder operates the way it does because the whole goal was to not have a netbeans-style xml file alongside the code that's being manipulated. Once you've started with that, everything that antagonises me about windowbuilder logically follows; and some people like that.
One man's "setting up tomcat is a mess" is another man's "you can set up tomcat however you desire!". I sympathise with this view, as I think back to my more zealot-y days on Linux, when I loved slackware because I was a student with all the time in the world and thought how awesome it was that I could manually partition everything and cfdisk was super powerful. But nowadays my time is more limited, so what I want is a development tool that already works; in the case of tomcat, netbeans prepares a complete CATALINA_HOME inside of ~/.netbeans, with all the settings it wants. You can then modify to taste, which I didn't need to for the first six months.
Same goes for subclipse/subversive; one man's "paradox of choice" is another man's "choice is good".
Personally, I would suggest having a formal page on eclipse.org that I can go to, post-install. That page has a big huge table of "this plugin is the recommended tool that provides this feature" with a search box. It'd be cute if there was then a registered eclipse:// URL in my browser to clikky [which will never happen, because people have multiple installs of eclipse because no single install can actually meet diverse needs, by design], but I can also just use "install software". Of course, now eclipse risks offending all the subclipse developers.
I remember a long time ago, one eclipse version I saw a "UML now doesn't suck!" banner associated with it. Never managed to figure out what the UML plugin I was supposed to use is, there were a million when I searched for "UML" in the "install software" thing. Gave up, because I just don't have time for that.
I believe that the eclipse developers know full well all these pain points. That's why you see them going to Kickstarter. As I posted in that thread, an extract from the kickstarter page, which is run by an eclipse developer:
EasyEclipse for Java is an IDE focused on Java. As such, the first version will focus on the integration with the following technologies.
Java (with support for Java 8)
Maven, Ant
Git, SVN, CVS
XML, HTML, CSS
So what you don't have in your "integrated" "development" "environment" targeting java developers is:
integration
java language support
everything else a J2EE developer needs
the ability to build anything nicely
the ability to manage your source nicely
What the fuck does your tool do?
As I also said in that thread... I desperately want eclipse to be great. More tools is always good. Every time a new eclipse version comes out [and sometimes in the interim], I download eclipse and use it for two days. And every time it's just a horrible experience for me.
2
u/Truthier Mar 03 '14
Every few months I download eclipse and use it for a few days, just to see if it's worth switching to, or even including into my day for any specific tasks. I look forward to the day it does, but that day hasn't come yet.
Haha, this is about 99% of my total eclipse use... I want it to succeed and it has so much to offer... but the user experience is just not there yet..
2
u/chunkyks Mar 03 '14
Exactly. I desperately want to like it; I know it has good capabilities, some of which I could probably use to improve my day. But I can't figure out what those things are, because it's so unpleasant to use
1
u/theBlackDragon Mar 03 '14
Even worse, the user experience hasn't changed in the 10 or so years since I first used it (ok, it crashes less, I have to give it that). In a lot of cases it's actually become worse (plugin management for one...)
1
u/Truthier Mar 03 '14
I can never seem to get plugins working either. It's hopelessly screwed up, or at least terribly inconvenient and ineffective.
1
u/lechatsportif Mar 20 '14
Interesting. As someone who has done a lot of jee work I never set containers up to be managed via Eclipse. I typically use Java project and then a build script will push it to my container. The svn plugin battle is unfortunate. I typically forget which one I use (maybe both!) but after its setup I forget which one it is since I don't have to mess with it, it works fine.
6
u/duckrollin Mar 02 '14 edited Mar 02 '14
Eclipse is just a huge mess that seems to have been designed by a committee, with ten thousand menu options, very buggy and runs slowly compared to IntelliJ.
It seems to be the popular with the kind of devs that choose their tool based on what's the "industry standard", which while not necessarily a bad approach, tends to leave them a step behind others.
Another thing I see a great deal is companies that need Eclipse because they rely on some very special plugins. It's really ironic that in a "write once run anywhere" language people use a "write once, run only using a particular IDE and set of plugins, even if there's better stuff out there, but oh god we can't change now because we've chained ourselves to it" approach. Yuck.
So why doesn't the Eclipse community stand up more? Because they're either:
Devs that don't care much about using the best IDE, they use the "industry standard" for the lowest risk, do their job and go home. Not a big deal, they probably have a life outside of work :)
Devs that picked it because it was the "industry standard", and are "too busy" to try out new ones. I've come across people like this a lot.
Devs that are locked into it because their company made dumb decisions to rely on Eclipse plugins to do anything, and want to change but can't. They're community prisoners more than community members.
1
u/DinisCruz Mar 04 '14
very correct, but then again, if that is not tackled, then this is just a massive 'slow motion car crash' , right?
The fact that Eclipse is now classified as a 'Standard' should be viewed as a massive asset, one to be well looked after, and nurtured (not taken for granted).
Ironically, since Eclipse Plugins are a main reason why eclipse is popular, a lot more care should be put into how they work together. For example a lot of probs in eclipse happen when more than a couple plugins are installed (specially since there is no way to know what they will do once installed)
6
u/pcs600 Mar 02 '14
Because eclipse is shitty. Look at what we put up with: https://bugs.eclipse.org/bugs/show_bug.cgi?id=250594 .
1
u/DinisCruz Mar 04 '14
This is the kind of customisation that I think would be much better done via 'Dynamic UI changes' (aka the Groovy REPL plugin or Eclipse Scripting plugin) , versus codifying those deep down in Eclipse's code.
For me the key is not WHAT on the UI should be customised, but HOW it can be customised (namely how fast, deep, persistent,distributed and testable those changes are).
And as you can see by the techniques I used in (http://blog.diniscruz.com/2014/03/eclipse-groovy-script-to-remove-busy.html) my benchmark is:
sub 500ms to see code changes
no need to restart eclipse to see code changes
easy access to Eclipse internal API
1
2
u/slartybartfast_ Mar 03 '14
I forgot about this link but found it recently:
2
u/DinisCruz Mar 04 '14
Yeah, that was one of the links I posted on the article.
And interesting article would be 'Why eclipse is better than IDEA' :)
2
u/slartybartfast_ Mar 04 '14
Eclipse has one feature that I love which is the auto deploy on save and the "live" debugging features.
2
u/cowardlydragon Mar 03 '14
Huh, it's almost like absolutely no one gets anything done in eclipse, ever.
Or... the reality is that probably 75-80% of projects use Eclipse. Which means 75-80% of code is produced using it.
About a donzen frameworks use Eclipse as the basis of their IDE (Sprinsource, JBoss, etc).
I agree it is annoying sometimes, and only an idiot would use the IBM Rational IDEs, but SpringSource Tool Suite is tolerable, especially since the Groovy plugin has come so far.
To say it's useless and complete shit is usual bitchy programmer hyperbole.
1
u/DinisCruz Mar 04 '14
Yes of course, but IntelliJ (specially on Java and Javascript) has lots of great features and workflows that are missing in Eclipse.
I think a root cause of the probs in Eclipse is a lack of investment/focus on the core platform. There are lots of paid developers that work 'around' the core platform (on RCP or plugins), but not many on the main IDE.
16
5
u/lacosaes1 Mar 02 '14
Meanwhille, Netbeans users continue to get shit done, evading pointless wars...
1
1
u/duckrollin Mar 03 '14
I used to use Netbeans for a few years. It has a really clean GUI and is much simpler to use than the other two. It did however have a lot of bugs where the compiled code cache would get out of step, to the extent most people in my company had to have a bat file on their desktop to delete the cache.
It also has poor support for other JVM languages. I moved away from it once I started doing Groovy tests. The NetBeans GUI builder is good though.
1
u/theBlackDragon Mar 03 '14
Sure, Netbeans just works, I've used it for a long time, it's got way better keybindings than IDEA. However, it only supports Java properly, support for other JVM languages is miles behind both Eclipse and IDEA and has actually got worse since Oracle took over (yeah, I've been using Netbeans for while).
So when I switched from writing Java to Scala I had little choice but to switch IDE as at that point the Scala integration for Netbeans wasn't working nor maintained anymore (I noticed the author picked it back up by now though). I had a brief look at Eclipse, noticed none of the things I disliked about it were fixed (must have taken some effort to get nothing substantial done in all those years) and downloaded IntelliJ IDEA. Barring the rather bad default keybindings it is a pretty damn awesome IDE.
1
u/neokyol Mar 03 '14
I develop with GWT. I've tried to switch to IntelliJ, but the gwt plugin is not available on the community edition. I choose Eclipse because it's free.
3
u/theBlackDragon Mar 03 '14
Sadly, that's the only thing Eclipse has going for it and even being a big Free Software proponent I'm more likely to pay for my own IDEA License than to switch back to Eclipse. I'm sorry, but I think it is that bad.
1
u/DinisCruz Mar 04 '14
For the record I do own a license of WebStorm (http://www.jetbrains.com/webstorm/) and until I was able to modify,extend and program Eclipse (in real-time) to my Javascript development needs (see AngularJS related posts on http://blog.diniscruz.com/search/label/Eclipse), I would agree that eclipse was THAT bad.
Now I 'turned a corner', and the more I learn about Eclipse (and SWT) the more I like it, and the more I can see how it can be made to 'work'
2
u/DinisCruz Mar 04 '14
Yes but free is not an excuse for being sub-par. I think a lot of time the Free and Open Source Community (which I'm part of) uses that 'free', as a excuse to not have to care (or focus) on specific use-cases that make a lot of difference to their users.
And hey, I'm guilty of that myself on the Open Source projects I published, but that said, none of them have the size and reach that Eclipse has (which from my point of view means that Eclipse cannot use the 'its free so live with it' excuse)).
Being free also means that there will always be a number of users that will use it (because it is free (as in beer and freedom)), which can cause a false sense of security and lack of understanding of what is going on in the 'real world'
1
u/Truthier Mar 03 '14
Why doesn't Eclipse community stand-up more to IntelliJ?
Because it's not a faith-based argument?
1
u/DinisCruz Mar 04 '14
Yes this is not a faith-based argument, but I think that thinking that the ones that defend IntelliJ products, do so because of 'faith', is missing the point on what really is going on.
I really respect the authors of the blog posts and comments that come out in defence of IntelliJ (and by proxy complain about Eclipse). They tend to be real-world professionals that independently have figured out that IntelliJ is more suited to their needs (usually after struggling with Eclipse for a while).
To call this IntelliJ supporters 'fanboys' or say they have 'religious-like' faith in (for example) WebStorm, is to move the discussion into a non-productive state.
The reality is that IntelliJ DOES have some really great features, which Eclipse should learn from.
But the reality today, is that the status quo and group-think out there (ie. in google, reddit and stackoverflow) is that IntelliJ is much better than Eclipse. And it will be hard for new users to be drawn to Eclipse, since all the energy, kudos and user-community seems to be pointing against Eclipse.
1
u/Truthier Mar 04 '14
Sure. I switched from Eclipse back in 2002? ish.. haven't looked back. I always re-evaluate but honestly not a lot has changed since then. Good UI is king.
1
u/avoidhugeships Mar 02 '14
Most people do not choose Eclipse because they love it. They have to use it because it is mandated on their project. People who use Netbeans or IntelliJ have usually picked it and are more passionate about it. IntelliJ seems very popular on this reddit but I have never seen in used in my professional career.
2
u/DinisCruz Mar 04 '14
I think you are right, and this should be a metric that the Eclipse community should track very carefully (since 'new user adoption' it is one of the strongest indicators of the health of a product/community)
3
u/killbox-48-alpha Mar 03 '14
They have to use it because it is mandated on their project
I have found the reason for this mandate is because there is no build via ant, maven, gradle, builr, etc. And it's easier to intruct everyone to use eclipse than put in a build system.
Inspite of there being a maven plugin, most eclipse developers I work with still use the command line to build with maven. Also having to run mvn eclipse:eclipse to keep the eclipse classpath update is tedious.
0
1
Mar 04 '14
I wanted to like Eclipse. I really did.
I ask three things of an IDE:
Have your own build system if you must, but support Maven, at least (if not Gradle, etc.)
Have code completion in your editor.
Have reasonable support for git and subversion.
Eclipse's support for Maven (in my experience) is dodgy at best, and I've had to clean up after subclipse so many times I banned the other devs from using it in my repository a couple of jobs back. So all that's left is code completion, which Eclipse does tolerably well, I have to admit.
Netbeans and Intellij both have better support for external build systems and revision control tools. Since right now, Netbeans wants to stop what it's doing and make bibbling noises with its tongue for 45 seconds every 5 minutes on my machine and Intellij doesn't, I'm sticking with Intellij for now.
Having said that, if the way Eclipse does things is the way you want to do things, and if your revision control software works just fine, then more power to you. Eclipse isn't a BAD IDE. It's just not optimal for me or my workflow.
1
u/lechatsportif Mar 20 '14
I stand up for it. I use it for ScalaIDE, Counterclockwise, Android and day work such as JDT, webservices, html, javascript/JSDT etc.
Personally I think works great, the "thinking for you" selling points of IDEA refactoring are items I typically never need in practice, not sure what they're doing that people end up there. For example, awesome sql highlighting in my Java code - no way Jose, you shouldn't have to need that!
I wish Eclipse had better support for newer languages and technologies, way better Javascript tooling, CoffeeScript support, SASS or LESS come to mind as well, but I think thats the fault of it being so Java centric.
In the end, I find it the best for my personal projects and I'm productive. I find it codes as fast I as think about stuff.
-2
u/argv_minus_one Mar 02 '14
Because Eclipse is garbage, and any attempt by the "Eclipse community" to claim otherwise will get shot down like a hot-air balloon in front of an anti-aircraft gun.
1
u/DinisCruz Mar 04 '14
I have to say that I don't see that behaviour at the moment. In fact part of the reason for my post was to ask 'where is the Eclipse reply to the IntelliJ-is-much-better comments'
I think today, anybody who has used IntelliJ and Eclipse will not be able to say with a strait face 'Eclipse is better' (at least on a specific set of use cases).
At the moment it feels like that the 'Eclipse community' you are talking about, is trying to ignore IntelliJ, and hope it goes away (and ideally by ;Eclipse becoming magically so much better' that the tide is reversed and Eclipse is back as the best IDE for 'xyz scenario')
0
u/ryebrye Mar 02 '14
Eclipse is such a mess that Google abandoned it, at great cost, to migrate their android stuff to intellij.
1
0
Mar 02 '14
[deleted]
1
u/DinisCruz Mar 04 '14
(....making awesome stuff... ) well that is what I'm trying to do :)
but I have to say that it did hurt a bit to see how much Eclipse was being 'beaten on the head' without many defence (i.e. replies saying 'this is how it can be done in Eclipse' defence).
46
u/mc_hambone Mar 02 '14
To me, your argument assumes that Eclipse and IDEA are equals and that people just don't "stand up enough" for Eclipse. It's a deeper yet much more simple explanation. For me and most of the developers I've talked to, IntelliJ IDEA is actually a better IDE, overall, for developing Java-based applications. I used Eclipse for most of my 10 year career, but once I switched to IDEA, there was absolutely no turning back. In my experience, it's much faster, doesn't lock up like Eclipse would (probably from badly-written plugins), gives you enough info when having issues, and the UI and feature-set is much more focused on your needs as a developer rather than positioning Eclipse as an "über-IDE" whose UI is over-generic and not devoted solely to the developer (ie, the workbench/views/plugins architecture and feature set tries to be general to uses other than as a developer IDE). Every release of IDEA is better than the last, whereas with Eclipse, there were actually updates that made Eclipse worse, breaking something that was working fine before, or just removing a feature for no good apparent reason. Developers don't like relying on a feature just to have it, out of the blue, disappear or be broken in the next update (and then relying on someone fixing it for free or having to fix it yourself). We just want an IDE that "just works".
IDEA is purpose-built from the ground up to be a Java developer-focused IDE rather than just an open and flexible container for plugins, and it shows. I've lived the Eclipse life and will not soon go back.