Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

So which IDE do experienced Java programmers use?

2 views
Skip to first unread message

Soefara

unread,
Dec 2, 2002, 4:25:11 AM12/2/02
to
There's a recent thread "What's a good Java IDE for a beginner"
and I saw an even earlier thread from a year ago with the same
question.

http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&th=a0f289387d39cf24&seekm=MPG.160825208e28d0439898bb%40news.altopia.com#link11

In the latter thread, Chris Smith and Dale King (both of whose posts
I've learned to respect) mentioned BlueJ in a teaching environment.

BlueJ certainly does look interesting, but I'm wondering what people
do when they're past the beginner stage ?

I've looked at JBuilder and Eclipse but they were very slow on my
PC (even with 800 Mhz and 256 MG RAM) and I found them frustrating.

Other than the debugger, what are the key features that you use
to make those decisions?

I'm sorry if this question has been asked before, but I did check
the archives and could find nothing in the last 2 years that
address the non-beginner.

Thank you,

Soefara.

Michael Weller

unread,
Dec 2, 2002, 4:46:28 AM12/2/02
to
Hi!
Go for IntelliJ's IDEA or jedit(.org)! In my eyes they're the best ones
available: both pure-Java, but almost C's performance, both are
code-centric, and jEdit is even open-source and has big support from a large
user community (i.e. lots of plug-ins available, good support).

-mw


"Soefara" <soefara...@hotmail.com> schrieb im Newsbeitrag
news:46756afd.02120...@posting.google.com...

kim bruning

unread,
Dec 2, 2002, 8:56:14 AM12/2/02
to
Soefara <soefara...@hotmail.com> wrote:

> BlueJ certainly does look interesting, but I'm wondering what people
> do when they're past the beginner stage ?

Vim.

One of my previous "gurus" would kill me for saying so though,
he reccomended nvi.

I'm just a vi-agnostic.

Why vi? It takes practice to use, but it grows on you and is very
powerful once you're used to it. It's also relatively small and starts
up quickly.

What usually happens is that people start using some other tool.
But then they need to make this one small change, and don't want
to go back and restart the editor, so quickly-quickly it gets done
in vi. And that's the start down the long slippery slope. :-P

Some people prefer EMACS or XEMACS instead. I'll admit I do use
xemacs if I'm writing html sometimes. It has some nice features.

> Other than the debugger, what are the key features that you use
> to make those decisions?

In C and C++ you need a debugger just to find certain classes of error.
This is not the case for java, and I don't use a java debugger. It feels
clunky when you're used to hand-compiling in your own breakpoints and
watchpoints.

(-: Since entire religeous wars are fought over the topic
emacs vs vi versus other,
I hereby invoke Ed's law[*] to protect myself. :-)

In the hope that this is useful:
read you soon,
Kim Bruning

[*] Google for "Ed, the one true editor!"

Jacob Dreyer

unread,
Dec 2, 2002, 9:46:31 AM12/2/02
to
Soefara wrote:

> There's a recent thread "What's a good Java IDE for a beginner"
> and I saw an even earlier thread from a year ago with the same
> question.

Before you ask what IDE, first figure out if you need an IDE at all.
This is a note that has been missing from the threads you are referring
to. I don't think beginners need an IDE, and in particular I don't think
experienced programmers need an IDE!

What you do need is a powerful text editor. (X)Emacs whould be my
suggestion.

I used a debugger back in the C++ days, but experienced java
programmers doesn't need one.

I create my GUI's from scratch including GridBagLayouts etc. It
whould be nice with a simple wysiwyg frontend for this but it is not
essential. I like to stay independent. There once was a tool called
VisaJ which looked promising. I am not sure about its current status.

Finally you need a build environment. This is not hard to set up yourself.
See for instance http://geosoft.no/javamake.html

Bottom line: KISS!


Paul Tomblin

unread,
Dec 2, 2002, 10:04:28 AM12/2/02
to
In a previous article, "kim bruning" <k...@NObruning.SPAMdemon.HEREnl.invalid> said:
>Soefara <soefara...@hotmail.com> wrote:
>> BlueJ certainly does look interesting, but I'm wondering what people
>> do when they're past the beginner stage ?
>
>Vim.

Vim + ctags + "make && java com.xcski.Foo" for me.

BTW: Does anybody have a clean configuration file for vim to get that
"jump to the next error message" feature working with jikes?

About the only thing I feel the lack of in vim that a good IDE might be
able to give me is the whole "complete the method name, fill in the
arguments and maybe show me the javadocs for it in a popup". Oh, and
something that does the opposite of ctags, shows me who uses the
current variable/method/etc. Neither of those needs has been urgent
enough for me to retrain my fingers after nearly 17 years of using vi,
though.

--
Paul Tomblin <ptom...@xcski.com>, not speaking for anybody
"Leave the beaten track occasionally, and dive into the woods. You will be
certain to find something that you have never seen before."
-- Alexander Graham Bell

Jon A. Cruz

unread,
Dec 2, 2002, 11:35:48 AM12/2/02
to
Soefara wrote:
> Other than the debugger, what are the key features that you use
> to make those decisions?

Emacs + JDEE

http://jdee.sunsite.dk/


The key feature for me is productivity. Emacs has been developed from
the ground up by developers for themselves, and works very well for that
purpose. JDEE adds a lot of Java-specific features, but I don't use them
as much.

Chris Smith

unread,
Dec 2, 2002, 12:21:31 PM12/2/02
to
Soefara wrote ...

> In the latter thread, Chris Smith and Dale King (both of whose posts
> I've learned to respect) mentioned BlueJ in a teaching environment.
>
> BlueJ certainly does look interesting, but I'm wondering what people
> do when they're past the beginner stage ?

Depends on your goals. If you want to teach people to be successful
professional Java developers, then you start building skills in using
some more conventional IDEs. Just about anything will work; IDEs tend
to all involve similar or the same concepts.

If you're still interested in education in programming topics, then
honestly I don't see what's wrong with continuing to use BlueJ. It can
be used to write rather elaborate data structures and algorithms, and
its advantages carry over to there as well.

As far as personal choice, I use Eclipse at the moment (though it's
probably one of the least conventional of conventional IDEs).

> I've looked at JBuilder and Eclipse but they were very slow on my
> PC (even with 800 Mhz and 256 MG RAM) and I found them frustrating.

If you want fast, then another environment I've used and enjoyed in the
past is JCreator. It doesn't maintain local history or have refactoring
support, which kinda puts me off, but it does do popup completions,
syntax coloring, class and method browsing, and debugging. That's
pretty much the basics.

> Other than the debugger, what are the key features that you use
> to make those decisions?

Besides the "basics" mentioned above, refactoring support is big for me.

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

Chris Smith - Lead Software Developer/Technical Trainer
MindIQ Corporation

Tim Tyler

unread,
Dec 2, 2002, 12:32:39 PM12/2/02
to
Jacob Dreyer <jacob....@geosoft.no> wrote:

: Finally you need a build environment. This is not hard to set up yourself.

Ouch.
--
__________
|im |yler http://timtyler.org/ t...@tt1.org

Tim Tyler

unread,
Dec 2, 2002, 12:33:55 PM12/2/02
to
Paul Tomblin <ptom...@xcski.com> wrote:
: In a previous article, "kim bruning" <k...@NObruning.SPAMdemon.HEREnl.invalid> said:

: Vim + ctags + "make && java com.xcski.Foo" for me.

: BTW: Does anybody have a clean configuration file for vim to get that
: "jump to the next error message" feature working with jikes?

You're already using "jikes +E" - I hope.

A Bag Of Memes

unread,
Dec 2, 2002, 12:44:10 PM12/2/02
to

"Soefara" <soefara...@hotmail.com> wrote in message
news:46756afd.02120...@posting.google.com...

> There's a recent thread "What's a good Java IDE for a beginner"
> and I saw an even earlier thread from a year ago with the same
> question.
>
>
http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&th=a0f289387d39cf24&seekm
=MPG.160825208e28d0439898bb%40news.altopia.com#link11
>
> In the latter thread, Chris Smith and Dale King (both of whose posts
> I've learned to respect) mentioned BlueJ in a teaching environment.
>
> BlueJ certainly does look interesting, but I'm wondering what people
> do when they're past the beginner stage ?
>
> I've looked at JBuilder and Eclipse but they were very slow on my
> PC (even with 800 Mhz and 256 MG RAM) and I found them frustrating.

Weird, it's reasonably fast on my 500mhz PIII with 512 megs.

>
> Other than the debugger, what are the key features that you use
> to make those decisions?

Refactoring support. I can't live without it. IntelliJ's Idea got me
hooked. Now I use Eclipse. Other must have features are code completion
and a convenient code browsing interface.


Tim Tyler

unread,
Dec 2, 2002, 12:44:03 PM12/2/02
to
Soefara <soefara...@hotmail.com> wrote:

: BlueJ certainly does look interesting, but I'm wondering what people


: do when they're past the beginner stage ?

: I've looked at JBuilder and Eclipse but they were very slow on my
: PC (even with 800 Mhz and 256 MG RAM) and I found them frustrating.

Eclipse is slow to start of, slow when changing context - and slow
*sometimes*.

The rest of the time it seems reasonably nippy.

If I find my tools running too slowly, I often find a better-spec'd
machine is an attractive alternative to ditching the tool on
performance grounds.

If I wasn't using Eclipse the other environments I would probably consider
are CodeGuide - and Visual SlickEdit.

Joona I Palaste

unread,
Dec 2, 2002, 3:21:10 PM12/2/02
to
Soefara <soefara...@hotmail.com> scribbled the following:

> There's a recent thread "What's a good Java IDE for a beginner"
> and I saw an even earlier thread from a year ago with the same
> question.

> BlueJ certainly does look interesting, but I'm wondering what people


> do when they're past the beginner stage ?

> I've looked at JBuilder and Eclipse but they were very slow on my
> PC (even with 800 Mhz and 256 MG RAM) and I found them frustrating.

GNU Emacs and Sun J2DK. Anything else is just bells and whistles.

--
/-- Joona Palaste (pal...@cc.helsinki.fi) ---------------------------\
| Kingpriest of "The Flying Lemon Tree" G++ FR FW+ M- #108 D+ ADA N+++|
| http://www.helsinki.fi/~palaste W++ B OP+ |
\----------------------------------------- Finland rules! ------------/
"Keep shooting, sooner or later you're bound to hit something."
- Misfire

Kenny MacLeod

unread,
Dec 2, 2002, 3:32:16 PM12/2/02
to
Joona I Palaste wrote:
> Soefara <soefara...@hotmail.com> scribbled the following:
>> There's a recent thread "What's a good Java IDE for a beginner"
>> and I saw an even earlier thread from a year ago with the same
>> question.
>
>> BlueJ certainly does look interesting, but I'm wondering what people
>> do when they're past the beginner stage ?
>
>> I've looked at JBuilder and Eclipse but they were very slow on my
>> PC (even with 800 Mhz and 256 MG RAM) and I found them frustrating.
>
> GNU Emacs and Sun J2DK. Anything else is just bells and whistles.

Or "productivity aids" as they're also known as. My productivity has jumped
considerably ever since I moved from JCreator to Eclipse.

kenny


Goedy Reen

unread,
Dec 2, 2002, 4:35:26 PM12/2/02
to
Jacob Dreyer <jacob....@geosoft.no> wrote in message news:<3DEB7247...@geosoft.no>...

> Before you ask what IDE, first figure out if you need an IDE at all.
> This is a note that has been missing from the threads you are referring
> to. I don't think beginners need an IDE, and in particular I don't think
> experienced programmers need an IDE!

I see lots of people touting a text editor and a make tool for Java
development. I don't understand this.

I would love to use vim and just run ant to build my project. It would
work fine actually, but it would be a pain in the ass.

I currently use CodeGuide from Omnicore.com. My project involves
almost 1000 classes and references many third-party class libraries.

Here are the things my IDE does that I can't live without:

Code completion and inline documentation. If I type "whatever." and
hit tab, it brings up a list of methods, shows me some of the Javadoc
comments, including parameters. I can't even remember the method names
and parameters in the classes I wrote, let alone some library that I
touch once a year.

Finding usages. I can go to anything, hit control+shift+i, and get a
list of where it's used anywhere in my source. Very handy.

Finding definitions. I can hit control+enter on anything to jump to
the source. This is quite a bit easier than manually finding the file,
opening it, and finding the method.

Hypertext error messages. When I compile or run from Codeguide, any
errors show up with web-style links. I can just click them to jump to
the class and line where the error occured.

Browsers. I can browse my files, and then just my classes. I can also
browse a tree of my current class methods and fields.

Debugger. Not the best debugger in the world, but does the job just
fine.

There are lots of other features I use on a daily basis that just make
life easier. When I get things working, I can just go to "tools" and
run ant to do a fresh build for distribution. Of course, anything can
do that, but it's nice to have it right there.

I've tried lots of different editors. None of them would make my life
better while developing a massive project than Codeguide. I just tried
jEdit today, and it's not bad. You can automatically download
"plugins" to do some of the features I listed here, but most of them
just don't work as well as my IDE. I think I might try jEdit at home
for small projects though.

So anyway, I like IDEs. Codeguide is cheap too, compared to the
others.

A Bag Of Memes

unread,
Dec 2, 2002, 8:31:27 PM12/2/02
to

"Goedy Reen" <javai...@hotmail.com> wrote in message
news:96489b24.02120...@posting.google.com...

> Jacob Dreyer <jacob....@geosoft.no> wrote in message
news:<3DEB7247...@geosoft.no>...
>
> > Before you ask what IDE, first figure out if you need an IDE at all.
> > This is a note that has been missing from the threads you are referring
> > to. I don't think beginners need an IDE, and in particular I don't think
> > experienced programmers need an IDE!
>
> I see lots of people touting a text editor and a make tool for Java
> development. I don't understand this.

Me either. Why go back to a text editor when there are decent, free
refactoring IDEs? The vi commands are still someplace in my brain, but I
can't think of any good reason to find them.


Scott Ellsworth

unread,
Dec 2, 2002, 7:02:28 PM12/2/02
to
In article <46756afd.02120...@posting.google.com>,
soefara...@hotmail.com (Soefara) wrote:

> BlueJ certainly does look interesting, but I'm wondering what people
> do when they're past the beginner stage ?

I have tried a large number of IDEs, and have settled on refactoring
ones. While code completion was what got me hooked at first (thus
JBuilder and recent versions of CodeWarrior qualify), I ended up finding
the refactoring support to be the most important set of features, and
the ones that save me the most time.

> I've looked at JBuilder and Eclipse but they were very slow on my
> PC (even with 800 Mhz and 256 MG RAM) and I found them frustrating.

Try more RAM. The M3 builds especially have some memory leak problems,
but even so, you should have enough horsepower to run them as long as it
is not swapping.

I have tried IDEA, but am now waiting until it is out for my TiBook.
Once it is, I shall try it again. It appears to be faster and a bit
more solid than Eclipse, but I am very impressed with the progress
Eclipse is making.

As far as the "vim/emacs/BBEdit" thread, we do use ant for all
production builds, so one can do small amounts of work with just a text
editor. That said, once I start doing serious work that will take more
than a moment, I break out the IDE.

Scott

Phillip Lord

unread,
Dec 3, 2002, 7:36:26 AM12/3/02
to
>>>>> "Goedy" == Goedy Reen <javai...@hotmail.com> writes:

Goedy> Jacob Dreyer <jacob....@geosoft.no> wrote in message
Goedy> news:<3DEB7247...@geosoft.no>...

>> Before you ask what IDE, first figure out if you need an IDE at
>> all. This is a note that has been missing from the threads you
>> are referring to. I don't think beginners need an IDE, and in
>> particular I don't think experienced programmers need an IDE!

Goedy> I see lots of people touting a text editor and a make tool
Goedy> for Java development. I don't understand this.

Goedy> I would love to use vim and just run ant to build my
Goedy> project. It would work fine actually, but it would be a pain
Goedy> in the ass.

Goedy> Here are the things my IDE does that I can't live without:

Goedy> Code completion and inline documentation.

Goedy> Finding usages.

Goedy> Finding definitions.

Goedy> Hypertext error messages.

Goedy> Browsers.

Goedy> Debugger.

Goedy> When I get things working, I can just go to "tools" and run
Goedy> ant to do a fresh build for distribution.


Here is the problem, of course. Many people mean different things by
"IDE" and "Editor". Emacs, for example, which is an editor, does all
of these things, as well as a few more, like easy generation, and
sorting of imports, which I find essential. The debugger is a little
ropey, but as I tend to build using a lot of tests I don't find this a
problem.

This makes it the perfect solution for me. I write in a lot of
languages, and many of these features work for all of them, which is
not true of some of the bigger IDE's. Consistency is more important
than absolute functionality.

You pays your money, you takes your choice.

Phil


Soefara

unread,
Dec 3, 2002, 11:44:14 AM12/3/02
to
Thank you very much to everybody for offering all of the advice.

I think I'll have to upgrade my PC and try Eclipse again as that
seems to be building momentum.

I don't know what "Refactoring" is so did a quick search on google.
It sounds more like something people do
(http://www.refactorit.com/index.html?id=397)
as opposed to something that can be automated in an IDE. I'll have
to investigate more.

Something that nobody has mentioned here but which I've yet to see
in an IDE is the ability to input Japanese or Chinese languages.
As it is I always have to write ResourceBundles with MS Word !,
when it would have been nice to stay within the IDE. I've been
using Omnicore CodeGuide which somebody else has mentioned is a
nice little IDE.

As for debugging, I mainly develop servlets so debugging them
consists of writing to the log file or System.out.println()
Do any of the IDEs integrate with a servlet engine allowing proper
debugging ?

Thank you again, everybody 8)

Soefara Redzuan.

Jon A. Cruz

unread,
Dec 3, 2002, 12:19:35 PM12/3/02
to
Kenny MacLeod wrote:
>
> Or "productivity aids" as they're also known as. My productivity has jumped
> considerably ever since I moved from JCreator to Eclipse.
>

Emacs *is* a productivity aid.

(BTW, from what I can see of them Eclipse and Emacs+JDEE are very close
in functionality, with the added difference that Emacs is currently good
for working in several languages).

Galen Boyer

unread,
Dec 3, 2002, 12:07:26 PM12/3/02
to
On 3 Dec 2002, soefara...@hotmail.com wrote:

> Something that nobody has mentioned here but which I've yet to
> see in an IDE is the ability to input Japanese or Chinese
> languages. As it is I always have to write ResourceBundles
> with MS Word !, when it would have been nice to stay within the
> IDE. I've been using Omnicore CodeGuide which somebody else has
> mentioned is a nice little IDE.

Emacs has strong support for Multi-byte character sets and
keyboard entry, therefore its java IDE would have this.

--
Galen Boyer

A Bag Of Memes

unread,
Dec 3, 2002, 2:14:03 PM12/3/02
to

"Soefara" <soefara...@hotmail.com> wrote in message
news:46756afd.02120...@posting.google.com...
> Thank you very much to everybody for offering all of the advice.
>
> I think I'll have to upgrade my PC and try Eclipse again as that
> seems to be building momentum.
>
> I don't know what "Refactoring" is so did a quick search on google.
> It sounds more like something people do
> (http://www.refactorit.com/index.html?id=397)
> as opposed to something that can be automated in an IDE. I'll have
> to investigate more.

Please do. Read Martin Fowler's book "Refactoring". The subtitle is the
best definition I've found: "Improving the design of existing code." It's
the best programming book I've read in the last 5 years.

Refactoring is "something people do" and as such there are tools to make it
easier. Refactoring "browsers" started in Smalltalk and are almost
universally used in that community. Java IDEs like Eclipse and Idea provide
automated support for common refactorings like extract method, inline temp,
pull up field, etc. Just highlight the code you want to refactor and hit a
hot key.

>
> As for debugging, I mainly develop servlets so debugging them
> consists of writing to the log file or System.out.println()
> Do any of the IDEs integrate with a servlet engine allowing proper
> debugging ?

All of them do. Just run the app server in debug mode in the IDE.

Chris Lambert

unread,
Dec 3, 2002, 12:35:38 PM12/3/02
to
I second this, MF's Refactoring book was a great read and very informative.
Mostly common sense but the way it serves as both a learning aid and reference
makes it one of those must have books.

Chris

Chris Lambert

unread,
Dec 3, 2002, 12:37:28 PM12/3/02
to
IMO it is something people should DO and not just blindly leave up to
the IDE. There are IDE's that will automate this process a bit and help
remove opportunity for human error, etc ... My favourite IDE (currently)
is IntelliJ and it does this quite well.

Chris

Chris Lambert

unread,
Dec 3, 2002, 12:39:24 PM12/3/02
to
I agree, but if a person is learning Java fr the first time then learning the
process in building a project (i.e. compiling, classpaths, etc) .... may
actually help de-mystify some aspects of the language.

Chris

A Bag Of Memes wrote:

A Bag Of Memes

unread,
Dec 3, 2002, 2:35:23 PM12/3/02
to

"Chris Lambert" <chris_...@transcanada.com> wrote in message
news:3DECEC4D...@transcanada.com...

> I agree, but if a person is learning Java fr the first time then learning
the
> process in building a project (i.e. compiling, classpaths, etc) .... may
> actually help de-mystify some aspects of the language.

Perhaps. I learned Java before there were any IDEs, and I learned
programming long before Java, so it's hard for me to imagine what it's like
to learn it today. But I wonder if knowing how to build without an IDE is
that helpful anymore. Does knowing how to use a slide rule really help one
use a calculator?

Ideally everyone should learn assembly, but I don't think it's vital to
every programmer out there.

kim bruning

unread,
Dec 3, 2002, 1:09:23 PM12/3/02
to
Soefara <soefara...@hotmail.com> wrote:
> Thank you very much to everybody for offering all of the advice.

> Something that nobody has mentioned here but which I've yet to see


> in an IDE is the ability to input Japanese or Chinese languages.

Vim is internationalised and supports at least japanese and korean.
I'm not sure about chinese.
If you're running it on the console this does depend somewhat on
the consoles' support for same.

> As for debugging, I mainly develop servlets so debugging them
> consists of writing to the log file or System.out.println()
> Do any of the IDEs integrate with a servlet engine allowing proper
> debugging ?

Actually that isn't such a bad way of debugging code in general you
know. Maybe it's just me.

Chris Lambert

unread,
Dec 3, 2002, 1:39:53 PM12/3/02
to
Fair enough, the comment only stemmed from having some xp dealing with VB
developers who had no idea what "compiling" was or how the process has any
effect on "creating" an exe ... Seen some pretty ignorant stuff.

Learning assembly is another thing altogether.

A Bag Of Memes wrote:

A Bag Of Memes

unread,
Dec 3, 2002, 4:08:40 PM12/3/02
to

"Chris Lambert" <chris_...@transcanada.com> wrote in message
news:3DECFA7A...@transcanada.com...

> Fair enough, the comment only stemmed from having some xp dealing with VB
> developers who had no idea what "compiling" was or how the process has any
> effect on "creating" an exe ... Seen some pretty ignorant stuff.

I don't know any VB folks. Does it keep hinder their development of VB apps
that all they ever see is the IDE?

Sergei Gnezdov

unread,
Dec 3, 2002, 4:04:06 PM12/3/02
to
> I've looked at JBuilder and Eclipse but they were very slow on my
> PC (even with 800 Mhz and 256 MG RAM) and I found them frustrating.

Our product has about 3500 files. I use PC with 522 MB of RAM with CPU
speed about 900MHz.
I find Eclipse performance reasonable.

> Other than the debugger, what are the key features that you use
> to make those decisions?

Debugger. Eclipse takes advantage of JDK 1.4 and you can edit your code
without restarting Java application. Eclipse debugger is an attempt to
provide debugger environment similar to smalltalk.

Eclipse has a reasonably powerfull refactoring tools. Sooner or later you
will need it.

Simple help such as go to the definition of the method/class. Show all
usages of the method. Show all interface implementations. Simple
conviniences like sort all imports (editor based users like it a lot) or
more important things like organize imports based on the rules (first three
imports are by class after that just import the whole package and yes it is
sorted already).

From the corporate point of view a unified coding style can be enforced, but
will take some effort.

You will get all your errors highligted. F2 will display the error message.
You can configure debugger to display warnings such local variables not used
in the method, which helps to keep code clean.

Code completition is important for a big project where often you simply
don't remember all the names.

Those who like CVS will find CVS integration very reasonable. Local class
and method (!) history is maintained even if you don't use CVS.

Projects dependency is important for the big products.

XP practitioners will like JUnit integration.

Release enginering is integrated with Ant.

Eclipse is not only the tool. It is a platform. You can find UML modeling
tools integrated with Eclipse.

What is missing. Gui editor. You may use some GUI builder to build Views.
If you use MVC that is all you need to build a GUI. If you like to build
GUI manually you will never notice that GUI builder is missing. IBM is
working on GUI builder.

....................................................

I used the following tools before I started to use Eclipse: VIM, Emacs,
JBuilder, Netbeans, back to JBuilder, Visual Age for Java, Eclipse.

1. VIM, Emacs, UltraEdit, JEdit belong to the same editor based category.
VIM requires a lot of work to setup up the process. You have to maintain
ctags application. You will never get a proper debugger. You have to
maintain scripts to start different java applications. A lot of work which
should be handled by a tool is a manual work. I spent about 2 years in
editor based coding. What a mistake. Emacs was to difficult to learn after
VIM. Emacs provided debugger, but it was impossibly slow and very hard to
use. If you torture yourself for a year you will probably like editor based
environment.

2. JBuilder
It is very nice and it is very simple. I used JBuilder 4. Think about it as
an editor optimized for the java development. It has a very nice way to
build GUI. Debugger was slow, but it was a lot faster then debugger in
emacs. Debugger was improved in a newer version of the JBuilder. It will
be the least painful environment after you move from editor environment.

3. Netbeans.
More powerful then JBuilder. It is also the slowest IDE I have ever used.
Usability of this IDE is the lowest. It has a bad layout of the components.
Its power is in GUI builder, but the weakness of this builder is in parts of
code developer is not allowed to modify directly. It had more features then
JBuilder. It was also harder to start using.

4. Visual Age.
Perhaps the most difficult to start using if you have never used Smalltalk.
It was very slow. It works only with Java 1.2. It is image based.

5. Eclipse.
See the beginning of this post. It has been the best environment for me so
far. I don't spend time taking care of proper tags generation and all other
little details editors enforce to worry about.


Ole Ildsgaard Hougaard

unread,
Nov 30, 2002, 5:29:39 AM11/30/02
to
On Mon, 02 Dec 2002 15:46:31 +0100, Jacob Dreyer
<jacob....@geosoft.no> wrote:

>Soefara wrote:
>
>> There's a recent thread "What's a good Java IDE for a beginner"
>> and I saw an even earlier thread from a year ago with the same
>> question.
>

>Before you ask what IDE, first figure out if you need an IDE at all.
>This is a note that has been missing from the threads you are referring
>to. I don't think beginners need an IDE, and in particular I don't think
>experienced programmers need an IDE!

Do experienced programmers need an IDE? No. Can experienced
programmers put an IDE to good use? Certainly. IDEs are not necessary,
but they are useful. The same can be said of most programming
constructs that go beyond simple BASIC. That doesn't mean we should
discard them.

The most important aspect of using an IDE is (in my opinion) not the
code it can generate for you through powerful wizards, but the way a
good IDE lowers the distance between idea and code.

>What you do need is a powerful text editor. (X)Emacs whould be my
>suggestion.

I haven't kept up with the development of Emacs over the last couple
of years, so maybe my comments are out of date. In my view, what you
need is a powerful, *code-savvy* editor. Live templates, code
completion, easy access to documentation, code analysis, refactoring,
and smart code-search (find usages, implementing methods, and so on)
are all part of making your time more productive and your code better.

>I used a debugger back in the C++ days, but experienced java
>programmers doesn't need one.

As above, I would say that just because you can do without a debugger
doesn't mean that you shouldn't use one. Some problems are better
solved by logging what the program does, other problems are quickly
solved by just reading the code, but a lot of problems might be solved
very easily by just stepping through a few lines of the offending
code. This will often give you a real "aha"-experience that'll make
you more efficient in solving the problem.

>I create my GUI's from scratch including GridBagLayouts etc. It
>whould be nice with a simple wysiwyg frontend for this but it is not
>essential. I like to stay independent. There once was a tool called
>VisaJ which looked promising. I am not sure about its current status.

I don't use a GUI builder, either. I use IntelliJ IDEA, which doesn't
even come with a GUI builder. I've tried JBuilder but the code it
produces is a mess.

>Finally you need a build environment. This is not hard to set up yourself.
>See for instance http://geosoft.no/javamake.html
>

>Bottom line: KISS!

Simple, as far as I'm concerned, means that I shouldn't need to bother
with getting routine stuff right. I want to just do it.

Don't get me wrong. It might be that IDEs are not for you. But you
shouldn't assume (as many have done in this thread) that it's just a
lot of fluff. Using an IDE may have a severe impact on the way you are
working.

Michael Borgwardt

unread,
Dec 4, 2002, 5:44:16 AM12/4/02
to
Soefara wrote:
> Something that nobody has mentioned here but which I've yet to see
> in an IDE is the ability to input Japanese or Chinese languages.
> As it is I always have to write ResourceBundles with MS Word !,
> when it would have been nice to stay within the IDE.

Netbeans allows you to input Japanese text just fine, and I'm pretty
sure the same is true for Chinese and for Eclipse. However, it only
works "out of the box" if the system locale is set to Japan, which
also causes all menus to be in Japanese and requires a reboot on
Windows. I suspect that Japanese input with a Western locale can
be made to work by tweaking the fonts.properties file of the JRE.


Ole Ildsgaard Hougaard

unread,
Nov 30, 2002, 6:09:38 AM11/30/02
to
On 3 Dec 2002 08:44:14 -0800, soefara...@hotmail.com (Soefara)
wrote:

>Thank you very much to everybody for offering all of the advice.
>
>I think I'll have to upgrade my PC and try Eclipse again as that
>seems to be building momentum.

256MB is a minimum with most of the Java IDEs I've tried. The clock
frequency seems to play a smaller role.

>I don't know what "Refactoring" is so did a quick search on google.
>It sounds more like something people do
>(http://www.refactorit.com/index.html?id=397)
>as opposed to something that can be automated in an IDE. I'll have
>to investigate more.

Refactoring - as opposed to rewriting - uses small, well-defined steps
in transforming the code. Many of these steps are sufficiently small
and well-defined to be automatable.

Galen Boyer

unread,
Dec 4, 2002, 7:25:54 AM12/4/02
to
On Tue, 03 Dec 2002, a@b.c wrote:
>
> I don't know any VB folks. Does it keep hinder their
> development of VB apps that all they ever see is the IDE?

I've been forced to use SQLServer Enterprise Manager when working
in that environment. Many times, I've been frustrated that alot
of the guts of the system where hidden from me, as opposed to
Oracle, where I have the entire brain of the database sitting
there waiting for me to ask questions.

I think both a coding environment and architectural knowledge of
that environment are a good thing. There were many times when I
was very happy just having to click a couple of buttons to get my
SQLServer work done.

I feel this analogy holds up with the IDE argument. To me, both
an IDE and someone who can code with notepad and javac are
powerful skills. If I needed someone for a 2 month project, I'd
choose the someone who knows an IDE. If I needed someone for a
2-year project, I'd be more inclined to go with the fellow who is
comfortable with knowing how it all fits together. He could pick
up the IDE in a day. The IDE only guy could be architecturally
challenged in many ways.

--
Galen Boyer

Chris Lambert

unread,
Dec 4, 2002, 11:15:32 AM12/4/02
to
Sometimes, mainly when there are deployment issues or they are dealing with
external libraries and understanding what is going on. This is more a VB
mindset (and similiar to my own experiences using Delphi/PB) and the tool tries
to isolate the developer from anything but code.

A noble cause but sometimes a bit misguided and more trouble in the end.

Chris

A Bag Of Memes wrote:

Robert Wappler

unread,
Dec 7, 2002, 7:49:54 AM12/7/02
to
Because you are talking about IDEs. Does someone no how to set up
eclipse in a common linux environment. I wasn't able to get it working
with configuration files in the home directory of the user instead of
the program's root directory.
Currently I use Sun ONE Studio. It's functionality is great. There's
nothing I miss in it. The ones I like most is the great debugger front
end and the templates to generate the basic code.
On the other side it needs a lot of system resources, especially memory.
So I was very impressed by the speed of eclipse.

Robert Wappler...

Phil Hanna

unread,
Dec 7, 2002, 11:03:07 PM12/7/02
to

>Vim.

I'll second that (or third, or fourth; I've lost count). I develop
entirely in Vim with the addition of some Vim macros I've written for
my own use (such as one-button expansion of private variables into
getters and setters, etc.)

The problem with IDE's (especially for beginners) is that you end up
devoting a significant amount of time learning the IDE itself --
fiddling with plugins, figuring out which dialog box contains the
option you need, etc. Then if you manage to get up to speed on one,
you have to go through the same learning curve all over if you are
required to switch.

The second problem is that IDE wizards such as GUI builders are
generally only useful for initial coding. They don't usually handle
rework or importing of outside code cleanly nor produce code a human
can easily read. Even if they do manage this, the code they produce
is not portable to other GUI builders or IDE's on the same basis
(i.e., useful imports of higher level design chunks)

Java is not complicated.
Editing a file is not complicated.
Typing "javac" is not complicated.

Once you have thousands of files and you're designing hundreds of
write-once GUI's, an IDE might be helpful. I still think, though, that
good programmers can better employ their talents by writing Vim or
Emacs macros that do specific tasks they find useful.

--
Phil Hanna
Author of JSP 2.0: The Complete Reference (real soon now)
http://www.philhanna.com

Jon Skeet

unread,
Dec 8, 2002, 3:39:49 AM12/8/02
to
peh...@yahoo.com wrote:
> Once you have thousands of files and you're designing hundreds of
> write-once GUI's, an IDE might be helpful. I still think, though, that
> good programmers can better employ their talents by writing Vim or
> Emacs macros that do specific tasks they find useful.

Could I ask how long it would take to write a Vim or Emacs macro to do
the same kind of refactoring I can do easily in Eclipse? Simple ones like
renaming a package or class would be relatively easy (trivial for the
class itself, of course, and fair easy to change the classes which
reference it, but still requiring a bit of work). However, I suggest that
even to a fairly experienced programmer, it would take longer to write
something such as "extract method" which correctly deals with the various
cases of returning values and working out which parameters need to be
passed than it would take to learn to use Eclipse.

--
Jon Skeet
sk...@pobox.com - http://www.pobox.com/~skeet
If replying to the group, please do not mail me at the same time

Davor Cengija

unread,
Dec 8, 2002, 5:54:29 AM12/8/02
to
Robert Wappler wrote:

Try starting eclipse with -data <workspace dir> switch.

I guess if you unpack eclipse in /opt/eclipse and create a simple shell
script, you might get fully supported multiuser eclipse installation.

#!/bin/zsh
cd /opt/eclipse
LD_LIBRARY_PATH=/opt/eclipse ./eclipse -data $HOME/workspace

I don't know what will happen if some user tries to upgrade the
installation.
--
Davor Cengija, dcengija...@inet.hr

Manish Jethani

unread,
Dec 8, 2002, 6:42:45 AM12/8/02
to
Soefara wrote:

> BlueJ certainly does look interesting, but I'm wondering what people
> do when they're past the beginner stage ?

My last project had around 3,000 Java source files comprising
more than 80,000 lines of code. My colleagues (some of whom I
would consider to be "experienced Java programmers") would use
JBuilder 5 as a standard.

I've been using Vim (on Win32 and UNIX alike) for editing. On
Windows I would set my JBuidler to use Vim as the editor.

The Jikes compiler.

JDB for debugging (I did consider using a GUI front-end to it
but never really felt the need to).

On UNIX I would use "mmake" (note the double 'm') to generate a
single Makefile for the entire source (3,000+ files). Wanted to
check out Ant but never found the time to learn it nor did I
ever feel the need to.

I used a program called JTags to generate a TAGS file for Vim.
JTags is written in Java and the TAGS file works pretty damn
well with Vim.

CVS for version control. WinCVS on Windows.

So here I go again (with a sense of deja vu): my favourite
"IDE" is GNU/Linux + Bash + Vim + Make + Jikes + JTags + CVS +
(...). That's the UNIX way of doing things. ;)

Manish

"The statements and opinions expressed here are my own and do
not necessarily represent those of Oracle Corporation."

Paul Tomblin

unread,
Dec 8, 2002, 8:41:31 AM12/8/02
to
In a previous article, Manish Jethani <manish....@oracle.com> said:
>I used a program called JTags to generate a TAGS file for Vim.
>JTags is written in Java and the TAGS file works pretty damn
>well with Vim.

Pssst. "Exuberant CTags" works perfectly and is written in C.
http://ctags.sourceforge.net/


--
Paul Tomblin <ptom...@xcski.com>, not speaking for anybody
"Fly the airplane, then work the problem"
-- Rick Grant (quoting RCAF pilot training)

kim bruning

unread,
Dec 8, 2002, 9:35:38 AM12/8/02
to
Jon Skeet <sk...@pobox.com> wrote:
> peh...@yahoo.com wrote:
>> Once you have thousands of files and you're designing hundreds of
>> write-once GUI's, an IDE might be helpful. I still think, though, that
>> good programmers can better employ their talents by writing Vim or
>> Emacs macros that do specific tasks they find useful.

> Could I ask how long it would take to write a Vim or Emacs macro to do
> the same kind of refactoring I can do easily in Eclipse?

Depends on the macro.

>Simple ones like
> renaming a package or class would be relatively easy (trivial for the
> class itself, of course, and fair easy to change the classes which
> reference it, but still requiring a bit of work).

There's some tricks with regexps which are nearly as fast already in fact,
and give lots of control.

> However, I suggest that
> even to a fairly experienced programmer, it would take longer to write
> something such as "extract method" which correctly deals with the various
> cases of returning values and working out which parameters need to be
> passed than it would take to learn to use Eclipse.

That sounds like eclipse is pretty easy to learn indeed.

Hmmm, as a fun challenge, could you give us a functional
specification for "extract method", so that we could give it a shot?

(I might try for fun when I have some free time :-) )

read you soon,
Kim Bruning.

Jon A. Cruz

unread,
Dec 8, 2002, 11:37:55 AM12/8/02
to
Jon Skeet wrote:
> Could I ask how long it would take to write a Vim or Emacs macro to do
> the same kind of refactoring I can do easily in Eclipse?

Well, Emacs can do it 'easily' since it's macros are lisp. As to the
details on how long, you could ask one of those people who already have
solutions out for it. :-)

> However, I suggest that
> even to a fairly experienced programmer, it would take longer to write
> something such as "extract method" which correctly deals with the various
> cases of returning values and working out which parameters need to be
> passed than it would take to learn to use Eclipse.

That might be. But for Emacs, one could just piggy-back on JDEE.

0 new messages