A good text editor for JAVA?

C

Chris Uppal

Just how much do we think the (I)DE or typing-speed affects
productivity?

I'd say that a good (or bad) IDE is a lot more than just an editor, and that
it's the other things that significantly affect productivity. If your speed of
typing (with or without help from "Intellisense", etc[*]) is such that it is a
significant bottleneck then I would say that one of the following apply:

a) You are a /very/ slow typist (serious physical disability,
such as having no hands).

b) You are a /very/ fast thinking -- much, much, faster
than anyone I've ever met.

c) You are wasting your time doing writing repetitive code which
can be and should be automated (or otherwise changed to
remove the repetition).

d) You are a very bad programmer, who programs without
thinking even though thinking is required.

BTW, one place where I do think that fast typing (and good editing features)
make a real difference is that it becomes easier to document code
appropriately.

-- chris

[*] Personally, I find auto-completion and similar intrusive popups, to be a
hindrance rather than a help.
 
O

Oliver Wong

Chris Uppal said:
[*] Personally, I find auto-completion and similar intrusive popups, to be
a
hindrance rather than a help.

Maybe in the long term, in that it's may be encouraging memory lost:

I was in the middle of some Java method, and I had type
"someMethodCall( " and then paused, because I knew I wanted to put the local
variable I had declare some moments earlier there, but I couldn't remember
the name of the variable. Well, Eclipse, being what it is, looked up the
method definitions for "someMethodCall" and then found the arguments that
all of its overloaded variants expected. It then looked at all variables
that were visible from the location in the code I was located (local
variables, publicly visible variables, fields from parents, etc.) it then
looked at the type of all these variables, and climb their inheritance tree,
cross-referencing that with the overloaded variants, and seeing which
variables could actually be legal given the type-checking rules.

It then displayed a pop up with my local variable, essentially asking me
"Is this what you're looking for?"

All of this before I had time to send the signals to the muscles that
control my eyes to scroll up and read the variable declaration a few lines
above.

So I find auto-completion helpful, but it concerns me that I can't
remember things that I looked at only a few moments ago.

- Oliver
 
M

Monique Y. Mudama

So I find auto-completion helpful, but it concerns me that I
can't remember things that I looked at only a few moments ago.

Oh, I dunno. There's a hard limit to how many things a given person
can keep in his/her "stack" at a time. You probably were juggling
enough other data that you just didn't have room for that piece.
 
Z

zero

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.

In my (admittedly limited) experience teaching non-computer-literates and
my (rather extensive) experience in selfstudy, I have found that people
tend to remember things better if they discover them themselves. Looking
up a word in a dictionary is better than having the teacher tell you what
it means. And I believe the same goes for looking it up in JavaDoc versus
selecting from a list.

I am not saying you should code using only vi or notepad - an IDE can be a
wonderful tool, and it can save you a lot of time. I just think that when
you're new to programming, using the documentation rather than developer
tools can help you learn faster.

Plus of course there's the point that many others here have made: learning
to use an IDE is non-trivial. Combined with learning a language (and
perhaps at the same time learning OO), it can be overwhelming.
 
M

Monique Y. Mudama

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...

As near as I can tell, it's a problem for me for any mouse. But I use
my whole hand for all mice, not just my fingers as you describe.
Maybe my hand is smaller than yours?
 
Z

zero

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.

Plus working with the keyboard is just plain faster for many things. As an
example on windows pressing Alt-F4 is 10 times faster than moving your hand
to the mouse, moving the mouse to the close button, and clicking it.
 
M

Monique Y. Mudama

In my (admittedly limited) experience teaching
non-computer-literates and my (rather extensive) experience in
selfstudy, I have found that people tend to remember things better
if they discover them themselves. Looking up a word in a dictionary
is better than having the teacher tell you what it means. And I
believe the same goes for looking it up in JavaDoc versus selecting
from a list.

That may be. I know that I've often visited a Javadoc page for a
particular purpose, but ended up learning a lot more as I noticed
interesting methods and read about them. That would be less likely
using an IDE's selection features.
I am not saying you should code using only vi or notepad - an IDE
can be a wonderful tool, and it can save you a lot of time. I just
think that when you're new to programming, using the documentation
rather than developer tools can help you learn faster.

Plus of course there's the point that many others here have made:
learning to use an IDE is non-trivial. Combined with learning a
language (and perhaps at the same time learning OO), it can be
overwhelming.

I definitely agree with that. Setting up Eclipse for my current
project drove me nuts.
 
R

Roedy Green

The "rats" are
supposed to be more ergonomic, but not for me they aren't...

My partner has horrible neck/back spasms after long hours with a
mouse. One idea I had was to find an ambidextrous mouse, and give each
side of the neck a rest by alternating. Has anyone any experience
with such a beast?
 
M

Monique Y. Mudama

My partner has horrible neck/back spasms after long hours with a
mouse. One idea I had was to find an ambidextrous mouse, and give
each side of the neck a rest by alternating. Has anyone any
experience with such a beast?

If I work on the computer long enough, I get similar problems ... but
oddly enough, the muscles involved are my traps, right where neck
joins to shoulder. And it's only the left side (mouse hand is on my
right). Is this at all similar to what your partner describes?

By amidextrous, do you mean simply one that can be gripped by either
hand, or do you mean one where the buttons can easily be reversed?
 
S

Shrike

netbeans rocks, but i like v3.6 more than 5.0beta (editor-wise). is
there something in between that still lets you mount directories?
 
O

Oliver Wong

Roedy Green said:
One idea I had was to find an ambidextrous mouse, and give each
side of the neck a rest by alternating. Has anyone any experience
with such a beast?

I've tried using a handedness-neutral mouse with my left hand, and find
it as difficult as trying to write with a pen in my left hand. While it
might give your right hand a rest (assuming you're right handed), expect
your productivity to go down for a while.

- Oliver
 
I

IchBin

Shrike said:
netbeans rocks, but i like v3.6 more than 5.0beta (editor-wise). is
there something in between that still lets you mount directories?
Think you should have started you own thread for your question.

If I remember right the old mount method was taken out at 4.1. So I
guess you could try 4.0. Not sure if you can download any version
older than 4.1. I could be wrong.

--


Thanks in Advance...
IchBin, Pocono Lake, Pa, USA
http://weconsultants.servebeer.com/JHackerAppManager
__________________________________________________________________________

'If there is one, Knowledge is the "Fountain of Youth"'
-William E. Taylor, Regular Guy (1952-)
 
R

Roedy Green

If I work on the computer long enough, I get similar problems ... but
oddly enough, the muscles involved are my traps, right where neck
joins to shoulder. And it's only the left side (mouse hand is on my
right). Is this at all similar to what your partner describes?

It runs from the back of the shoulder across the top of the back to a
point an inch or two from the spine. The muscle goes like a tight
cord, very easy to feel. It is usually on one side, though I don't
recall which.

My own ergonomic back problems have been pretty well fixed with two
techniques.

1. a sort of giant rubber whoopy cushion on my chair.. The idea is I
can't sit still on it. I have to wriggle slightly to stay balanced. It
saves me from freezing up in one position. The wriggling is below
ordinary conscious awareness.

2. making sure my chair adjust stays high up so that I am not
reaching up to the keyboard.
 
C

Chris Uppal

Oliver said:
I was in the middle of some Java method, and I had type
"someMethodCall( " and then paused, because I knew I wanted to put the
local variable I had declare some moments earlier there, but I couldn't
remember the name of the variable. Well, Eclipse, being what it is,
looked up the method definitions for "someMethodCall" and then found the
arguments that all of its overloaded variants expected. It then looked at
all variables that were visible from the location in the code I was
located (local variables, publicly visible variables, fields from
parents, etc.) it then looked at the type of all these variables, and
climb their inheritance tree, cross-referencing that with the overloaded
variants, and seeing which variables could actually be legal given the
type-checking rules.

It then displayed a pop up with my local variable, essentially asking
me "Is this what you're looking for?"

All of this before I had time to send the signals to the muscles that
control my eyes to scroll up and read the variable declaration a few lines
above.

If it could:

always find /the/ correct identifier to insert,

insert it without bothering me,

do so in a way that I could learn when to expect it to do so -- i.e. fully
deterministic algorithm that is simple enough for my /fingers/ to learn,

then it would be useful to me. As it is, I get popup lists of irrelevancies
that I'm expected to scan while I actually want to be using my eyes and brain
for other things. For me, complete-on-demand is useful but autocomplete is
just a nuisance.

-- chris
 
S

stevengarcia

I completely agree with this, it is easy to write bad code in an IDE
but have it conform, reformat, and refactor it for you to make it look
better.
 
C

Chris Uppal

Monique said:
As near as I can tell, it's a problem for me for any mouse. But I use
my whole hand for all mice, not just my fingers as you describe.
Maybe my hand is smaller than yours?

Quite probably. Or your mouse is bigger. Or both. For comparison, if a mouse
is small enough for me to use without pain then I can easily touch the desk
with all five fingers on three sides of the mouse without touching the mouse at
all. Of course, what works for me might be an absolute killer for you...

Finding small, flat, mice is becoming almost impossible these days (presumably
the profit margin is higher on rats) except for tiny USB things intended for
laptop users who dislike touch-pads / track-balls / stupid-nipple-things
(whatever they're called).

-- chris
 
T

TrXtR

This I definitly agree with. For beginner you want a good ext editor,
not and IDE :) My personal opinion ofcourse. It's all about learning,
and eclipse can hide allot of little things.
 
O

Oliver Wong

Chris Uppal said:
If it could:

always find /the/ correct identifier to insert,

insert it without bothering me,

do so in a way that I could learn when to expect it to do so -- i.e.
fully
deterministic algorithm that is simple enough for my /fingers/ to
learn,

then it would be useful to me. As it is, I get popup lists of
irrelevancies
that I'm expected to scan while I actually want to be using my eyes and
brain
for other things. For me, complete-on-demand is useful but autocomplete
is
just a nuisance.

Yes, it's not perfect...

But I believe you can keep typing even when that pop up is there, so
perhaps you can "learn to ignore it" for those times where it isn't able to
narrow down the possible suggestions to a single identifier?

- Oliver
 
M

Monique Y. Mudama

Yes, it's not perfect...

But I believe you can keep typing even when that pop up is
there, so perhaps you can "learn to ignore it" for those times
where it isn't able to narrow down the possible suggestions to a
single identifier?

I use it as a typing saver. To the extent that, even if I know what I
need, I often purposely wait after typing the '.' so that I can then
type the first few chars and hit enter.

If it delayed me when typing, though, I wouldn't use it.
 
L

Luc The Perverse

TrXtR said:
This I definitly agree with. For beginner you want a good ext editor,
not and IDE :) My personal opinion ofcourse. It's all about learning,
and eclipse can hide allot of little things.

I would like something half way in the middle.

It would be either MDI or single window (by user choice), have a compilation
output at the bottom of the screen and allow you to jump to line numbers by
clicking on errors.

Maybe I need to program this.
 

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,792
Messages
2,569,639
Members
45,351
Latest member
RoxiePulli

Latest Threads

Top