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?
..accomplishes much of what Elipse is trying to do. I have even used VS to step through Lex.
I am very small, utmostly microscopic.
What sort of "mission critical" things are you talking about when it comes to IDE's? I mean, if it doesn't work, you just take out the offending plugin and do it without it. It's not like an IDE has to be a high-availability server-type thing. Obviously, it can't always be breaking and crashing or productivity suffers, but it's not like one crash of a properly backed-up project is going to end things.
If it ain't broke, you need more software.
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...
I tried this this app a few weeks ago, it's modular and configurable and has potential. It actually runs fairly fast under windows because they implemented their own (native to windows) GUI api (not Swing which is slow as hell). Basically I spent the whole time experimenting with just the Java GUI library they supply with it because I'm tired of watching my Swing apps chug along. As far as IDEs go... I work faster in others, much faster.
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.
I did a review of a few of the IDEs out there ,primarily for their java stuff. Based on my short try out, Eclipse wasn't wuite there for the Java stuff, but that would have been the plug in. I ended up with IDEA, and we'll probably have a few people here singing it's praises.
I think that the IDE still really needs to understanf the language to be effective, but maybe the plug-ins will solve that.
The cool things in IDEA, and I would love to see in Eclipse, is the refactorings, the ability to have multiple configurations for running and debugging in a single project (nice for unit tests), and the ability to run one program while debugging another, great for client-server type programming (If you view Servlets as the client, and EJBs as the server, but would work for other stuff as well.)
Yes I looked at netbeans. I just don't have the desktop programming power to make it run fast enough,especially doing a JBoss recycle. but I'll periodically re-evalute the options for my shop.
Open Source Identity Management: FreeIPA.org
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. :)
For a short period, I found Eclypse interesting, but it has the same problems as NetBeans (SLOW!!), and it doesn't have has much features : Netbeans has synchronization between an interface and the classes that implement it, an import statement wizard, integration with Gentlware's Poseidon UML, etc...
I know it is good to have many different alternatives (otherwise why Linux?), but in that case I'm afraid it will take away some developpers from Netbeans, which would really be a mistake.
This reminds me of the old Gnome vs KDE flameware (not to talk about emacs vs Vi).
The Eclipse project has only been OSS since November 2001. At the project's current state, the developers are probably not very interested in the support efforts of (1) developers who can't compile their development tools, (2) Linux users who can't deal with RPM interdependencies, or (3) developers who primarily pick their development tools based on website screenshots.
;)
The people using this software should currently be the ones reading the source code... or at least ones capable of doing it. That's the way these projects reach a user-friendly state, rather than sinking into the negative murmurings of a thousand well-meaning users who aren't qualified to touch alpha code.
Of course, previous versions of the Linux-based UI were based off of Motif... would >you post screenshots of a Motif-based app?
Unless I am missing something here, Komodo is a commercial product (at least version 1.2+ appears to be) with only one non-commercial license and that applies to "teaching or learning environment only". The regular cost is ~ $300.
Eclispe is free.
Expense is bad, Cheap is good, but free is better
This is because it invokes javac (or whatever compiler you're using) once for every changed file, and javac is slow as hell to startup (create a new VM, load the compiler classes and so on).
Ant only invokes javac once, reusing the same VM, thus saving you tons of time.
Except Java GUIs.
I've yet to see a one with a snappy and good responsiveness.
Big.
Slow.
Still under development.
Promises to change the world as we know it -- real soon now.
But in the meantime, doesn't do anything particularly useful.
This is why I "crossed over" to M$ after being a SunOS / Linux fan for over a decade. 20 years of developing Big, Important Software, and the *nix community still can't agree on which key is backspace.
There I was, sitting there trying to fdisk a hard drive in single-user text mode and I made a typo. I hit backspace. The terminal spits out '^?'. I hit delete. It prints something like '^[[3e'. I hit ctrl-H and ctrl-U. It types '^H^U'. I reboot and install Windows 98 on the ***damned thing. F*ck 'em. No joke, I haven't booted Linux since.
Same thing with the GUI. Ten million people developing X Windows and it doesn't have buttons and scrollbars. Don't you already have the latest, greatest widget toolkit lib installed? Gnome, KDE or Enlightenment? Or none of the above? After putzing around with Linux for a year or so, you might end up with a useable desktop environment! Thanks but no thanks.
When I first tried Eclipse, I was very impressed.
First of all, it looks good. Much better than any other Java program I tried.
Second, it used a single main window instead of multiple floating ones. Us stupid Windows programmers find multiple floating windows visually confusing. There is nothing worse than seeing one's desktop bitmap with all those shiny icons in betweens one's editor and one's toolbar. (Even MDI is dying out as a concept and being replaced with a single window with tabs representing open files at the top. The only people still prefering MDI are traders, because they generally set their workspaces up to view as much info as possible and then just monitor them.)
Third, it's the first well-made piece of software I've ever seen from IBM. IBM has a history of producing inferior software on the PC platform. I once heard someone from IBM refer to his colleagues as "ninjas". If they spent more time working on their programs and less time dressed in black pajamas throwing metal stars, maybe their code would be better.
Fourth, the plug-in concept is well executed. Usually abstraction and usability don't go well hand in hand, but using Eclipse was just as comfortable as using JBuilder which is a Java-only IDE.
So why an I not using Eclipse? Because their Java plug-in is still not robust enough.
I had a rather large project that I was working on. It worked fine in JBuilder and JDK with Ant. But when I loaded those same files into Eclipse, simply touching some of them caused Eclipse to puke.
Must have been some programming construct I used. But if a tool doesn't offer a simple migration path, most people are not going to switch. More to that point: Why can't Eclipse import JBuilder and Forte project files? That would also ease the transition.
Dejan
www.jelovic.com