Saturday, August 26, 2006

Eclipse Vs IntelliJ - the IDE battle

This one has been going on for quite sometime and there are tons of reviews and loads of comparisions already there. So, why another one? Why not, from my earlier experience, as an architect of similar product, in a related space, I have been observing both these products closely. Now that, I have worked with both of them as a user and more invovled with Eclipse as a Plugin developer, I can share some of my personal thoughts on how things will pan out.

IntelliJ, is no doubt and excellent product, it offers great range of developer friendly tools that are a joy to use. It is considered to be the best in the refactoring business. Of late, I keep hearing concerns about its bloated size and how it tries to second guess the users intentions, but even with these concerns, on feature set and performance, it beats Eclipse by miles. But Eclipse will eventually win. It will be a long drawn battle but Eclipse will win. Following are the technical reasons for my thoughts, ofcourse the usual free vs commercial reason is always on, but Eclipse will be able to win on technical grounds .

1. Eclipse Plugin model has been widely accepted and adopted, where as IntelliJ was a little late in promoting its pluggable API. By the time IntelliJ had started promoting its pluggable features ,Eclipse had head start.

I cannot say much about IntelliJ plugin architecture, a cursory look at their document gives me an impression that it is suspiciously close to Eclipse PDE. But the key is that IntelliJ will always being playing catch up in this category.

2. EMF: Most Eclipse applications extensively use EMF for their structured data design, persistance and retrieval. I think EMF along with PDE have given Eclipse the tremondous popularity with Application Developers. Eclipse as an IDE is way behind IntelliJ but as a platform for developing applications, it much better architected and EMF, in my sense, is definetely one of the reasons. IntelliJ on the other hand cannot boast of any such framework.

3. GEF: With its seemless tie into EMF, GEF is being adopted for a wide range of graphical appilcations. IntelliJ is a no-show in this category as well.

4. Community: Eclipse has mananged to build a better, vibrant and thriving devloper community, the weight of which will be sufficient for it emerge as the leader in the IDE space.

IntelliJ must have also felt the pressure from Eclipse eroding its use base. This is evident from IntelliJ's attempts to diversify and open up newer avenues. Its foray into .Net Studio plugin development and Version control are cases worth mentioning.

To sum up, IntelliJ is a great tool but fails to live beyond that. Eclipse on the other hand falls short on the development features but definitely got its roadmap right. It is a platform and not just a tool. With Eclipse tooling seeing significant improvement and more people moving to Eclipse, I am afraid IntelliJ will go down the JBuilder way.


The products and technologies mentioned are trademarks of their respectives companies. The views expressed in the article are my own and do not represent the views of the company I worked for.


0 Comments:

Post a Comment

<< Home