Eclipse vs. IntelliJ IDEA

I’ve been an Intellij man for quite a number of years. I have personally provided an inordinate amount of money to fatten their coffers. However, I think I’m pretty much out of IDEAs. The final straw was the the integration of Jess into Eclipse. Part of the project I’m doing is heavily rule based and so having not only a syntax oriented editor for Jess CLP files, but an integrated debugger – well, what more need be said? To my credit I spent three days desperately trying to get at least a syntax sensitive editor replicated in IDEA. But, and this is probably more of a reflection of me rather than IntelliJ, the process was quite incomprehensible. The documentation was out of date and incomplete. Hell, I know that documentation is one of the things that always falls by the way side, but if you’re going to have a platform where you encourage developers to – well -plug in to your environment, it had better be damn easy and documented within an inch of its life.
I had built a couple of plugins for IntelliJ – the last was a desperate attempt to integrate the god forsaken source code control system we have here at House Harkonnen into the source control integration of IntelliJ. Since the stuff we use was based on Clear Case (based, as in “humans are based off of single cells”) I thought I’d use the plugin already developed for Clear Case. What a nightmare. Debugging this system was something I wish I had never witnessed. The required apis needed to integrate into IntelliJ were hardly documented and when things went wrong it was as transparent as mud.
Again, most of this is my issue. I usually ignore developer forums because I have found that 99% of my questions just flop against the wall and slide down with a sickening slurping sound until they hit the ground. My god, the Maven users mailing list is like yelling into a hurricane. But that is the subject of another post. My god, I could write a whole book on my observations of Maven. But I digress.
The long and short of it is that I had some pretty nasty experiences with IntelliJ plugin development and this latest one wasn’t much different. I did go to their user forum this time and overcame the initial hump which was nice to see. But the real issue really isn’t whether or not it’s easy to develop for the platform. At this point in my career, the issue is whether something already exists or not.
See, I believe that there’s 5.5 billion people on this planet for a reason. And that reason is to take care of the myriad of things that I am not interested in doing. I, myself, take care of a shit load of things that no one else seems to care about at all. And so it’s nice to see that things I’d like to use – use, mind you, not develop – already exist. All I have to do is simply use them. I don’t have to bang my head against another brick wall and figure out how to do something that was supposed to save me time but only turns into a time waster in which I end up spending more time developing than actually doing what I wanted to do in the first place.
But that’s the subject of another post – i.e. how to quit your job and slack off.
So, to bring this ramble back to the original subject, I’m sticking my toes into the Eclipse ocean to see if they get bitten off. So far, things seem okay. It’s a different system so it takes a while to get used to. And it’s built by a bunch of ex Smalltalkers so there’s that whole thing to deal with as well… But, as I said, so far things are going okay. The Maven integration is pretty poor, but that’s to be expected. I’m surprised that XML file handling wasn’t part of the base, but I found XMLBuddy and we’ll see how that goes.
Still, it’s going to be a bit of a learning curve. We’ll see if it’s worth it in the end.

Leave a Reply