A good text editor for JAVA?

R

Roedy Green

There's someone else in .... comp.text.tex, I think .... who claims
to be bilingual in MS Word and emacs, and he sounds moderately clueful
about both. But that's two tools, not dozens.

The experiment that needs to be done it to measure X's SPEED at MS
word and Emacs than challenge him to learn a third editor. Now go back
and measure his proficiency in MS and Emacs.

The experiment you really want is this: Take 99 people. Train 33 on
Emacs, 33 on Word and 33 on both. Then measure each person's fastest
speed on either editor. I conjecture the pure Emacs people should be
most productive.

I will conjecture that if two programs are sufficiently different, you
can attain unconscious proficiency in both because conceptually the
reflexes you develop don't overlap, analogously to playing both the
piano and trombone. It seems to me that editors have unavoidable
overlap at the most fundamental level -- insert, delete, replace,
navigate.
 
R

Roedy Green

I've never encountered any
interference between the two (any more than I encounter interference between
the two major modes of vi).

My partner is like you. What must be frustrating for everyone is the
ambidextrous people claiming the non-ambidextrous people just did not
try hard enough, and the non-ambidextrous people claming the
ambidextrous people are really just inept at both.

The matter could be settled by experiment. It might be a genetically
acquired skill like tongue curling.

I have talked to ambidextrous people, they say that they don't have
trouble because they see the tasks as fundamentally different.

An analogy might be rolling up the windows in a car vs closing the
windows in a house.

What sort of world could accommodate non-ambidextrous people?

It would allow you to configure your ENTIRE machine for how you wanted
various low level editing behaviours to work, then EVERY program would
comply. Similarly menus would use the same word for a function.

Maybe even your microwave and TV remote would understand your
preferences.

See http://mindprod.com/projects/menuconfigurator.html
 
R

Roedy Green

My partner is like you.

She is also bilingual in accent. When she talks to me, she uses a
Canadian accent, and when talking to her mom, a Alabaman one,
including the unusual southern grammar.
 
E

EricF

Sing it. I also have had trouble trying to become multilingual with
regard to editors, though I'm a vim bigot who gets annoyed when she
has to use .... maybe "CUA editors" is the right term. As you say,
knowing which keys to use for common editing tasks becomes a reflex
action, and trying to use something that uses different keys for
the same tasks is not only irritating but also can seem to mess up
the reflexes, which is a whole other level of irritation.

However, I had an interesting exchange in comp.editors recently with
someone who says that he uses lots of tools on lots of platforms and
claims that *if you practice enough* you can develop the ability
to switch back and forth seamlessly. But he claims that it takes
a *lot* of practice. The thread is in comp.editors, subject line
"GENERAL: Formatting text in Linux?", participants me and a Brian
Masinick, if anyone wants to find it in the archives. (Sorry about
not providing a URL or message IDs, but I'm not sure how to do that
unambiguously.)
[snip]

It's all about how you want to use your time. I could use my time learning
lots of different tools and editors or I could find a handful of tools and use
my time to look at new apis/languages or work on open source projects, etc.

Eric
 
C

Chris Uppal

I have a colleague who uses vi to write C programs, Eclipse to write
Java programs, and word-processor-du-jour for prose. He says that he
finds it fairly easy to keep them straight because he uses the different
editors for different tasks. (Not sure why he thinks of C programming
and Java programming as so different .... )

This is, of course, somewhat at odds with what I think of as the
"traditional Unix" approach of having everything in text files and
using the same editor for all.

Which brings us full circle and (almost) back on topic for this thread !

Well done ;-)

-- chris
 
J

jussij

The Zeus for Windows IDE has support for Java:

http://www.zeusedit.com/features.html
Note: Zeus is shareware (45 day trial).

It has features like class browsing, syntax highlighting,
smart indent, code folding, project/workspace management,
integrated version control etc.

The Zeus Quick Help feature also works with the Java SDK
help file:

http://www.zeusedit.com/forum/viewtopic.php?t=10

providing a quick and easy way to access the SDK information.

Jussi Jumppanen
Author: Zeus for Windows
 
N

Nigel Wade

Oliver said:
Not that I'm an Eclipse zealot or anything, but...

Presumably you were using Eclipse in it's "Java Perspective" mode, which
was intented to edit Java source code. In such a context, features like
"captilize all the characters in the selection" would not be so useful;
perhaps more useful would be "Rename this class, and make sure every
reference to this class is updated appropriately" (which Eclipse DOES do).

Comments? Javadocs?

There are times when I want to capitalize or change from lower to upper or vice
versa.
 
O

Oliver Wong

Nigel Wade said:
Comments? Javadocs?

There are times when I want to capitalize or change from lower to upper or
vice
versa.

Sorry, but this is going to be one big long run-on sentence:

Uusually when I want to change the capitalization in a comment or
JavaDoc, it is only one character that I want changed -- e.g. the first
character of a sentence which was mistakenly not capitalized (perhaps
because I had let go of the shift key too early or something) -- OR it is
that I had not yet broken my habit of capitalizing all the characters in an
abbreviation -- e.g., where KB stands for Knowledge Base and ID stands for
Identification, naming a methid getKBManagerUserID() instead of
getKbManagerUserId(), which requires an understanding of the English
language to recognize word boundaries and so probably could not be done via
a macro.

- Oliver
 
M

Monique Y. Mudama

She is also bilingual in accent. When she talks to me, she uses a
Canadian accent, and when talking to her mom, a Alabaman one,
including the unusual southern grammar.

Odd.

I grew up speaking both English and German. I have never been able to
speak English with a German accent, or German with an American accent,
though I can definitely recognize it. I think my mind has mapped the
sounds to the languages, and I can't produce them in the "wrong"
context.
 
M

Monique Y. Mudama

I have a colleague who uses vi to write C programs, Eclipse to write
Java programs, and word-processor-du-jour for prose. He says that
he finds it fairly easy to keep them straight because he uses the
different editors for different tasks. (Not sure why he thinks of C
programming and Java programming as so different .... )

I sure think of them as different! Especially if you really mean C,
not C++.
 
M

Monique Y. Mudama

I got a copy of SlickEdit which worked the same on Windows and
Linux. I have been using it ever since.

The standard editor at my last job was SlickEdit. I couldn't stand
it. It seemed to love corrupting the tags database, among other
things. But the real reason I abandoned it was that its vi emulation
mode didn't emulate well enough.
 
M

Monique Y. Mudama

Not that I'm an Eclipse zealot or anything, but...

Presumably you were using Eclipse in it's "Java Perspective"
mode, which was intented to edit Java source code. In such a
context, features like "captilize all the characters in the
selection" would not be so useful; perhaps more useful would be
"Rename this class, and make sure every reference to this class
is updated appropriately" (which Eclipse DOES do).

You're right though that if you want to use Eclipse as a plain
text editor, there aren't many features or macros provided.

However, there's no technical reason why someone couldn't write
a plugin that provided all those features, perhaps calling it
"Text Editing Perspective" or "XEmacs Perspective" if the user
interface were made particularly XEmacs-like. I'm not sure how
painful it would be to emulate vi's behaviour (I don't know how
much abstraction you'd have to break to directly capture
key-events), but it's probably possible as well.

I'm pretty sure there *is* a vi plugin for eclipse. It's not free in
any sense, and I haven't tried it, but maybe it does what you're
describing.

I have been burned by supposedly 'vi compatible' modes so many times
that I am loathe to spend money to try it.
 
M

Monique Y. Mudama

I was more trying to say that the newby wouldn't learn that
capitalization matters in java. And I believe having code
completion hampers learning libraries. You could just type a
reference variable, and select a method from the list.

As opposed to opening a browser, loading the javadocs, looking up the
type, and *then* selecting a method from the list, copying and pasting
it.

I agree that the javadoc approach is slower; it's not clear to me that
it really forces any more learning.

I think my difference of opinion stems from my belief that motivated
individuals will learn; unmotivated individuals won't. It's possible
you could claim that Eclipse and other high-powered IDEs can act as a
crutch, allowing individuals to crawl along who might give up if they
were forced to use more basic tools. Of course, you could use the
same argument to support the idea that all programs should be written
in assembler, or maybe machine code.
Last year I had to work on an old Windows NT machine, and on a Linux
server installation. Neither was anywhere near strong enough to
run an IDE like eclipse. It was a good thing I was used to coding
java with nothing more than textpad and the command line compiler.

I agree that anyone who works with Java should have those skills. I
don't think that means that we should eschew more powerful tools.
 
M

Monique Y. Mudama

I went back to Vim after the first wrist surgery. I don't plan ever
to go back. Why people are still writing new editors, rather than
customizing existing ones, is beyond me.

One of my professors claimed that she never had problems with carpal
tunnel until she started using a mouse.

I personally find that using a mouse hurts my wrist pretty quickly; I
use trackballs whenever possible, and even then try to do most things
by keyboard, with a wrist pad.
 
C

Chris Smith

Monique Y. Mudama said:
I agree that anyone who works with Java should have those skills. I
don't think that means that we should eschew more powerful tools.

Absolutely!

The self-righteous "do it yourself" answer is too myopic in this case.
Programming isn't typing. It is about doing a lot of things at once,
and typing is among the least important of them. Even if a programmer
has to wait a couple seconds for code completion -- and obviously could
have just typed the identifier name in that time period -- the task of
writing code is going to be far more sustainable if that time can be
used for thinking, resting, relaxing the wrist, or whatever.

--
www.designacourse.com
The Easiest Way To Train Anyone... Anywhere.

Chris Smith - Lead Software Developer/Technical Trainer
MindIQ Corporation
 
M

Monique Y. Mudama

Absolutely!

The self-righteous "do it yourself" answer is too myopic in this
case. Programming isn't typing. It is about doing a lot of things
at once, and typing is among the least important of them. Even if a
programmer has to wait a couple seconds for code completion -- and
obviously could have just typed the identifier name in that time
period -- the task of writing code is going to be far more
sustainable if that time can be used for thinking, resting, relaxing
the wrist, or whatever.

I'll admit that for many years, I avoided Eclipse. Its features were
clunky and slow. I felt the same about every other IDE I tried.

The modern Eclipse is responsive enough that it finally feels like
it's helping my productivity, not hindering it. Mostly.
 
B

blmblm

[ snip ]
What sort of world could accommodate non-ambidextrous people?

It would allow you to configure your ENTIRE machine for how you wanted
various low level editing behaviours to work, then EVERY program would
comply. Similarly menus would use the same word for a function.

vi-style editing in MS Word .... Nah, don't think that's going to
happen. But it's entertaining to think about!

[ snip ]
 
B

blmblm

The experiment that needs to be done it to measure X's SPEED at MS
word and Emacs than challenge him to learn a third editor. Now go back
and measure his proficiency in MS and Emacs.

The experiment you really want is this: Take 99 people. Train 33 on
Emacs, 33 on Word and 33 on both. Then measure each person's fastest
speed on either editor. I conjecture the pure Emacs people should be
most productive.

Either of those would be an interesting experiment to perform.
I wonder whether anyone has done it! It seems like some of those
HCI folks would have done something along these lines ....
 
I

iamfractal

Roedy said:
On 3 Dec 2005 16:39:33 GMT, (e-mail address removed) wrote, quoted or
indirectly quoted someone who said :
The experiment you really want is this: Take 99 people. Train 33 on
Emacs, 33 on Word and 33 on both. Then measure each person's fastest
speed on either editor. I conjecture the pure Emacs people should be
most productive.

More wild off-topicking, but this thread does seem to foster it ...

Just how much do we think the (I)DE or typing-speed affects
productivity? I know the former at least is task-dependent (if you're
given a huge amount of legacy code the needs every method and class
renamed, then Eclipsers will romp all over Notepadders), but in
general, can it affect much?

I'd guess not. I'd guess any difference attributable to a particular
(I)DE is so small that it sinks below measurable tolerances into the
noise of the (let's face it) astrologically inaccurate project planning
within which we work.

Well, I suppose there are some minimal basics. If you're given a new
(I)DE, and you never learn how to delete, then you're in for some tough
deadlines; but on the whole, I'd say productivity is far more weighted
by requirements-clarity, and programmer and tester experience.

That's probably why, "Use whatever (I)DE you're comfortable with,"
radiates such incontrovertable common sense: it gets you above the
basics; you can delete, save, compile, run.

There. DSCR. I've said it.

..ed
 
C

Chris Uppal

Monique said:
I personally find that using a mouse hurts my wrist pretty quickly; I
use trackballs whenever possible, and even then try to do most things
by keyboard, with a wrist pad.

Are you using (or rather, avoiding) those modern "mice" that actually look more
like pregant rats ? Big bulky things that /force/ you to rest your palm on the
beast's spine ? If so -- and if you are like me -- that might be the problem.
With the old-style (shaped like a bar of soap) mice, I can guide the thing with
my fingers; in particular, making precise movements just by flexing my fingers.
With the new kind, that is impossible, so I have to make fine movements with my
wrist/arm, and that becomes killingly painful very quickly. The "rats" are
supposed to be more ergonomic, but not for me they aren't...

-- chris
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,774
Messages
2,569,596
Members
45,128
Latest member
ElwoodPhil
Top