Lists Home |
Date Index |
From: "James Clark" <email@example.com>
> > The difficulty is that IDE's (in my experience) rarely provide the high
> > power and constructs that would be useful in a way that is unintrusive and
> > simple. They "get in the way" more often than not
> That's been my experience too. Mostly I've used IDEs just for debugging and
> relied on Emacs for editing. However, the current crop of Java IDEs is
> looking pretty good and they're starting to provide builtin XML support. In
> particular, I've recently started using IntelliJ IDEA
> (http://www.intellij.com). What I like about is that is unintrusive, yet it
> has a deep understanding of Java that allows it to provide really useful
There is a really interesting article comparing "syntax-directed" editors
and "syntax-recognizing" editors inter alia at
I think it has a direct relevance to XML editors: the Author/Editor family
is clearly from the syntax-directed line. I think the syntax-recognizing editors
have as much or more promise. Of course, some domains have natural
mappings to visualizations, and a direct manipulation interface may be the
best for those (in the same way that a visual composer is so useful for
GUI construction). But I think in the next few years it will become clearer
which kinds of document types are suited to syntax-directed editors and
which to syntax-recognizing.
The first decision point is of course whether the editor is used for marking
up pre-existing or partially tagged text. When that is the case, the
kinds of syntax-directed editors we have at the moment do not provide
much help: you cannot throw spaghetti at something that expects a tree.
On the IDE issue, I have been using Visual Age for Java in a 3 man
team for the last 9 months, and found it very useful, despite its steep
learning curve. Not a tool for casual users, its strengths are
visual composition, version control, minimal JAR creation, diff, etc.
I wouldn't like to go back to a non-integrated environment now, though it
certainly has its faults. It has a nice non-intrusive interface
(in fact, a little too non-intrusive) and is fast for editing.