Eclipse Vs. IntelliJ IDEA III

Okay, now that I’ve been playing with Eclipse for a week, things are kind of back to some semblance of normalcy. Once that blue pill dissolves in you stomach, things ain’t so bad. And the lobotomy surely helps (although I can’t remember why).
Still, there’s a lot of annoyances and little odd quirks of Eclipse that should be noted. One is that it’s pretty much impossible to deal with hierarchal source code bases in any easy way. Eclipse doesn’t (seem to) have any way of excluding subtrees from a project which are “owned” by a project in that sub tree. Yes, I know you can exclude things as a source folder. But all that does is create a replica of the subtree in the parent project which isn’t a Java source folder – it’s it’s all still there an annoying the hell out of you.
And this example – and believe me, this is just one – is really a symptom of a disease we are all infected with as programmers. We have a mind set on how work is done and that bleeds through everything we do – despite our best efforts. Eclipse is plainly a result of a lot of ex Smalltalkers and VisualAgers. Very 90’s in a lot of ways.
Still, this is just issues that I have moving from something I’m intimately familiar with and have grown quite comfortable with – i.e. IntelliJ. IDEs and text editors are kind of like your underwear. If you change brands or styles, it can be quite uncomfortable until you get used to it. Hell, look at all the flame wars between Emacs and VI users (BTW, I’m an Emacs user, so suck it up VI weenie).
Now that I have the source code control all figured out (man, what a pain to figure out), I think I’m going to stay in the new house. It’ll be nice not having to pay for an editor that I can’t really figure out how to adapt (sorry, that’s just me). The simple fact is that Eclipse has a stunningly huge community and there’s a zillion plug ins out there – of varying quality, of course. But there’s a shit load of them out there, and building your own is actually not that hard.
And the thing that is the clincher for me is the fact that Eclipse is built on OSGi. Every Eclipse plugin is an OSGi bundle. Since I am now basing all my work on OSGi, and given that Eclipse is now the de facto development environment for OSGi, it’s a no brainer. I wish that I could continue to use IntelliJ, but it’s simply not an option any longer. They have a different plugin module, and getting the built in support for OSGi will simply not happen any time soon unless I actually take the lead and do it myself – something I really am quite frankly not even interested in since I already have Eclipse.
I wish the IntelliJ folks well and hope to god that the produce something in the future which will tempt me to throw money at them again, but for now I’m going to have to hang man testicles on the wall and become an Eclipse weenie.
God, I feel so dirty.

Eclipse Vs. IntelliJ IDEA II

Wow. Okay. The learning curve for Eclipse is, as predicted, rather steep and somewhat strewn with broken glass and discarded pop bottle caps (rusty, of course). But the Maven 2 integration Eclipse plugin… man, that thing really sucks. it’s usable only for small projects, not – like I have – even a moderately sized workspace which consists of multiple projects.
Geesh. Those guys should be shot with silly string until they are forced to run from the room in shame.
I hear rumors that we’re going to see “real” integration of Maven into Eclipse real soon now. Man, it can’t happen soon enough for me.

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.