HomeDigital EditionSys-Con RadioSearch Java Cd
Advanced Java AWT Book Reviews/Excerpts Client Server Corba Editorials Embedded Java Enterprise Java IDE's Industry Watch Integration Interviews Java Applet Java & Databases Java & Web Services Java Fundamentals Java Native Interface Java Servlets Java Beans J2ME Libraries .NET Object Orientation Observations/IMHO Product Reviews Scalability & Performance Security Server Side Source Code Straight Talking Swing Threads Using Java with others Wireless XML

My mother bought a computer for her birthday, the usual affair – Windows, printer, scanner, speakers, etc. She’s a complete novice and needless to say, she’s having a hard time working the thing. Her main complaint (I think in relation to word processing) is that it does far too many things that she doesn’t want it to do and the terminology is confusing.

I can empathize – as a Java programmer, Integrated Development Environments (IDEs) have, in the past, confounded me in the exact same way, getting in the way of completing the task. These days I’m using a simple text editor with text highlighting for Java programs and Ant, Apache’s Java-based build tool.

I find it much quicker to develop but having said that, I realize there are those who take the time to learn how to “drive” one of these IDEs and swear by them. Maybe I’m just lazy, but I never invested the time and effort into learning the ways of an IDE.

James Gosling recently recognized the fact that there are indeed various levels of developers: people who are not experts at writing code and, presumably, those who are. This is a true observation and IDEs are no doubt a godsend to those who are not experts.

What do the expert code writers think? Do they use these beasts? Often I hear the mumblings, mockings, and dismissals of hard-core engineers as they berate the way of the wizard and gasp in horror at the underlying code it produces. There’s a certain machismo in using a plain text editor to develop software.

Perhaps IDEs are just another step in the journey from the machine languages that Alan Turin (or perhaps Mr. Babbage himself) would have rattled out, and the so-called ease of use of 4G languages and the world of wizards. We don’t have any programming languages that use natural language yet, and if it were possible, would it be desirable?

It seems the entire progress of computer languages is based on the assumption that they should become more like everyday languages (usually English, as fate would have it) and yet it is developers who complain the most about the wizard approach to programming.

Who’s driving this progress? If “hard-core” developers don’t approve of this approach, then who’s behind the demand for tools such as IDEs? Where does Java fit into all of this? Wasn’t Java designed to be easier to learn than its predecessors by extracting a lot of the nuts and bolts away from the developer and utilizing an object-based system?

Industry drives the demand. Industry has a commercial need to utilize the latest in information technology. If this can be made easier and allow more people to become practitioners of languages such as Java, then so much the better – they can have that internal reporting tool up and running in no time at all.

There’s an unnerving contradiction going on here somewhere but I can’t quite put my finger on it. If computer languages are to progress in the same way as they have been, with the honorable goal of expanding the number of programmers, then this could be a problem for developers.

If universities are to continue to churn out conversion course graduates with nine months of experience, will they be as able as the computer scientists? Probably not, but then isn’t that what high-level languages are all about? Making it quicker and easier to learn how to build software.

I seem to have asked more questions than I’ve answered! Oh well! Like I said, I can’t quite put my finger on it.

I’m glad I didn’t get an IDE for my birthday because I would probably be pulling my hair out just like my mother is. How many menus can one piece of software have!

Author Bio
Keith Brown has been involved with Java for many years. When he’s not coding up client solutions for a European Java company, he can be found lurking in the corridors of conferences all around the world.

[email protected]

All Rights Reserved
Copyright ©  2004 SYS-CON Media, Inc.
  E-mail: [email protected]

Java and Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. SYS-CON Publications, Inc. is independent of Sun Microsystems, Inc.