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

You may be aware of a radio program in the UK called "Desert Island Discs." Basically, well-known people choose which records they would want if they were stuck on a desert island (I've yet to hear anyone say they're taking a CD player). Something of a similar nature is happening to me at the moment, as I'm working from home (but far from stranded).

Since I didn't have any of my normal development tools on the laptop I borrowed, I had to hunt around the Internet and download the tools I needed to get my jobs done. The tools all had one common feature they're all open source. So I decided to present my selection of "Desert Island Open-Source Disks."

I'm currently working with version 4 of jEdit and it's a joy to use. In addition to being a normal source editor with syntax highlighting, it has the ability to use plug-ins. If there's one plug-in I would advise you to download, it's JavaStyle as it tidies up your code layout and also inserts the relevant JavaDoc comments.

( www-124.ibm.com/developerworks/oss/jikes/)
IBM's open-source Java compiler has more meaningful error messages than the original compiler. It also suggests where to use try/catch/finally blocks when working with code that throws exceptions. It handles all the same command-line tags as javac and is very fast at compiling.

If you're using the Extreme Programming route to get software development projects done, you may have come across JUnit already. For the rest of the world, this little utility runs unit tests on your Java code; all you have to do is create a small class to run the code. There's a more in-depth look at JUnit in the article "Test First, Code Later" by Thomas Hammell and Robert Nettleton (JDJ, Vol. 7, issue 2).

This is the build tool that everyone seems to be using, so it would be silly of me to even attempt to leave it out. Personally, I'd be lost without it. As with most software that comes from the Apache Foundation, be prepared to play around with how things work and also to read some of the documentation. Once you get going though, you can't imagine how you got on without it.

SCP/MindTerm SSH Client
MindTerm is a secure shell (SSH) client built entirely in Java. ISNetworks added a secure copy (SCP) function and made it available for download. More and more people have disabled the telnet access in favor of SSH and I'm glad to see it happening, for everyone's peace of mind.

The following demonstrates the benefits of open source. I had a problem with the directory listing since FreeBSD was not recognizing some of the flags in the "ls" command. I fired up jEdit, found the source file, and corrected the problem. A quick compile and I added it back to the JAR file and was back at work.

There you have it the software that kept me going. All free and with its source code so you can either improve its design or functionality or just mosey around and see how it works. The software you use will depend on who you work for, since sometimes you don't have any say in the matter. I try to encourage people to use the tools that suit them and that will enable them get the job done in a manner everyone is happy with.

The nice thing about open source is that there are a lot of people willing to share a lot of information. If you want to know more about open-source principles, The Cathedral and the Bazaar by Eric S. Raymond was helpful. Though it may be geared toward the Linux folks, it's still a good read and gives you a bit of history, a few examples, and some other texts to ponder over (once you've read JDJ word for word, though).

Author Bio
Jason Bell is a programmer and senior IT manager for a B2B Web portal in York, England. He has been involved in numerous Web projects over the past five years, the last two of which have been servlet-based. [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.