These are the old pages from the weblog as they were published at Cornell. Visit www.allthingsdistributed.com for up-to-date entries.

July 06, 2004

Mammoth Bones Alternatives

I have made only little progress in my quest for picking a good Java IDE that matches my work style. I received a lot of good advice after my last posting about this, unfortunately all of that advice seems to go be perfectly split between Eclipse and Idea. Which seems to be a good reflection of how the Java professional world has made their choices. I dropped Sun's Studio Creator from the list as it really is geared towards J2EE server side development, and that is not what I need to be doing . I was also about to drop Netbeans from my list, given that nobody spoke up in defense of it, until I picked up this last paragraph in a posting by Tim Bray:

On which subject, hereís the funny footnote. In his opening remarks, Gosling made some severely disparaging remarks about people who put software together with mammoth bones, stone axes, and Emacs. (Some may not know that one of the popular early Emacses was a Gosling grad-student project; James tells me he now uses NetBeans for everything.) Meanwhile, Iím sitting in the audience blogging away in, of course, Emacs

I guess that if Gosling is solely using Netbeans it might be worth giving it a second look...

I did find a reasonable good acceptance test. I have decided to use SEDA as the basis for the project I am developing. Knowing Matt I am assuming SEDA was developed using what Gosling called mammoth bones. So a good test for the usability of these IDEs is how much pain/help they are going to give me importing a large piece of software into a project. Following the tutorial in how to build simple new applications is one thing, importing a big legacy piece is a completely different story.

To be continued ...

Posted by Werner Vogels at July 6, 2004 10:51 AM
TrackBacks

Comments

I might be a bit late, but I have a different suggestion. Codeguide.

Most of the complex/advanced IDEs tend to do too much to your code i.e. they take complete control of it, like creating their temp files or storing your code at some strange hidden location. It becomes tough to work on your project whenever you don't want to use the IDE, or when you want to move your project to a different platform.

Codeguide on the other hand is simple, works like a text editor, yet manages your project, provides debugging environment. It just adds one file to your source code i.e. the project file. The code is still clearly available as a directory that you could simply copy and take somewhere else. It's clean an simple.

Posted by: Aseem Bajaj on July 6, 2004 01:52 PM

I'm not surprise Gosling uses NetBeans - it is, after all, a Sun product.

I agree that the main two contenders for the "best Java IDE" position are Eclipse and IDEA. While I personally use and love IDEA, I also know many who swear by Eclipse (as opposed to JBuilder, which is mostly sweared AT:-). The best way to find the IDE that fits you best is of course to actually use it, and Eclipse vs IDEA seems to be the best short-list to start from.

For IDEA, I recommend grabbing the latest 4.5 beta from www.intellij.net - the beta is stable enough for production use (been using it for months) and has some nifty new features over 4.0. Then go to File|Settings|Errors and go through the (extensive) list of potentially hazardous code-constructs you may want the IDE to warn you about. I think the majority of them is turned off by default; taking the time to enable some will be very beneficial while working with IDEA. Also, as opposed to just about every other IDE I've worked with, the "tip of the day" that shows up on startup is actually useful in IDEA, so don't turn it off.

No matter which one you choose though, I expect you'll be pleasantly surprised when comparing it to VS.NET. See for instance here and here for the experiences of a hard-core VS.NET developer with IDEA - I think most of the features he's raving about are also in Eclipse...

Posted by: Luke Hutteman on July 8, 2004 01:12 PM