First Thoughts on the Eclipse IDE?
OpenSourcerer asks: "Has anyone used the opensource IDE Eclipse. Initial impression is that of a slightly slow but very modular and configurable IDE. Anyone else has any experience using this?" I must say that the idea is novel enough, instead of building an environment around a specific language/compiler, you build a framework and have plugins support the specific features that you want. Java development tools have already been released and it looks like the C/C++ project is just getting under way. For those of you who have given the Eclipse project a quick look, what do you think?
Eclipse is the best looking Java app I've ever seen. Congrats to IBM for taking the bold step of not using AWT/Swing, and replacing it with something decent (SWT/JFace).
The problems that come up will be "sins of omission". In order to avoid breaking a generalized interface, plugin makers may not create an interface the way that makes the most sense for a certain language.
Eg: has anyone used Visual Basic? The interface is built around what the language is good at (and the interface is a main reason for its popularity). While the same functionality could have come via a plugin, likely it wouldn't have. Instead, a tool like the form editor would be bundled with the other resources, rather than front and center in coding. This makes coding other types of projects awkward, but they aren't VB's strengths anyway...
In short, I think there are advantages to building a UI solely around a specific language.
Let's not stir that bag of worms...
From the project page:
"an open extensible IDE for anything but nothing in particular...[value comes from] plug-ins that "teach" eclipse how to work with things"
Isn't that one description of emacs as well. Emacs has a, probably, justified reputation as being hard to use and extend. But is it really going to be that much easier to write extensions for Eclipse? And are those extension writers really going to make the extensions easy to use and with a consistant user interface? I have my doubts on both counts.
And the subject line was rhetorical.
Heh, I just can't get over the fact that the IDE we've been using internally for the last 6 months is getting so much play on slashdot and in the world-at-large.
One thing that's important to remember about eclipse is that it is a great deal more than your basic IDE. The pluggability really means that anything you can do in Java (or in principle, any language), you can make eclipse do. My department is focused entirely on using eclipse as an *application platform*. Think big. Yes, you can make it into a C/C++/Scheme/ML IDE, think bigger. Yes, you could definitely write a word processor plugin, and maybe plugin-ize an existing product. Think bigger. There's no reason in principle why you couldn't make a set of plugins that, for instance, made eclipse into something like zope or websphere -- your IDE could let you edit your php/jsp/perl, and then act as your development webserver too, for rapid prototyping. I dunno, I'm just pulling random things out of the air :) The point is, calling it modular might not be... emphatic enough. :)
As an IDE, it's pretty solid, I definitely encourage java developers to check it out, and as the C/C++ plugins solidify, I expect I'll move to it for my own C/C++ development too, if for no other reason than that I use it at work all the time. :) One thing that is both a blessing and a curse is that it does not (at least, our internal versions do not) come with a repository system a la Visual Age (IBM's older, less extensible Java IDE) -- instead that's up to you - we have teams using basic file system, cvs, cvs over ssh, and CMVC (a defect tracking and team file management tool that I imagine few outside IBM have ever seen. :) A curse in that out-of-the-box, you don't have team-managed repositories working like in VAJ, but a blessing in that you get to set up whatever fool system you like, maybe even keep whatever system you're already using. :)
Anyhow, just a few thoughts, the previous posts I've seen on eclipse seem to understate its extensibility. It's got the potential to be this decade's emacs - the application that is almost an operating system. :)