EinTech, Inc.

HOME TUTORIALS CONTACT US

UNIX UTILITIES
SOURCE CODE CONTROL
TESTING TOOLS
BUILD TOOLS
INTEGRATED DEVELOPMENT ENVIRONMENTS
DESIGN TOOLS
WEB SERVICES
APPLICATION SERVERS
Tools
This page contains links to all (or most) of the tools we use in our development environment. All of the software listed is freeware (open-source or otherwise). Almost all of the links listed below will take you to the web site where you can get the current version of the software.

THE INCLUSION OF ANY KIND OF REFERENCE TO SOFTWARE ON THIS SITE DOES NOT CONSTITUTE AN ENDORSEMENT OF THE AFOREMENTIONED SOFTWARE. DOWNLOAD AND USE ANY AND/OR ALL OF THIS SOFTWARE AT YOUR OWN RISK.

UNIX utilities

U/Win
Got UNIX? If the answer is "no," and you are developing on Microsoft Windows machines you want to download one of a number of ports of various UNIX utilities. The first is the AT&T Research port of all the standard UNIX utilities onto the MS platform. Led by David Korn himself, the U/Win package is quite a find. U/Win is the standard by which all other UNIX utility packages should be judged and it is free for non-commercial use only. This package is NOT FREE for commercial use, but I like it so much I had to list it. :-)

Cygwin
One open-source UNIX utilities vendor is Cygwin. The Cygwin home page displays a link to their main setup program which you can download and use to the install the current version of their software.

XFree86 (X Window)
We don't use X-Window at EinTech very often (translation: never), but the Cygwin version of XFree86 works quite well even with its occasional quirky behavior. It is installable from the standard Cygwin setup and, yes, XFree86 works with U/Win (I prefer ksh so I only use XFree86 from the Cygwin distribution).

Source-code control

CVS
The grand-daddy of source-control programs. The version available at http://www.cvshome.org has no documentation, but the Cederqvist .pdf goes in-depth into the whys and wherefores of CVS. Another great piece of CVS documentation is the Karl Fogel documentation. The Fogel docs are my personal favorite as they go into many practical aspects of CVS for beginners and experienced users alike. However, http://www.cvshome.org has plenty of documentation for download for those nights when sleep is difficult.

CVSNT
A CVS Server for Windows. When you tire of trying to install CVSNT, please go to CVSNT Installation Tips for a step-by-step approach to getting the CVS server installed (if you need a CVS server running under Windows to begin with).

Integrated Development Environments

Eclipse
This full-featured IDE from IBM and OTI is the successor to IBM's VisualAge for Java IDE. Eclipse has turned out to be at least as good as many commercial IDE's and in some cases even better. The latest version is 2.0.2. If you decide to use it beware: you may not want to go back to the IDE you paid good money for.

Eclipse plug-ins
The Eclipse plugins site is a rather extensive site that lists a huge number of available plugins (most of which are quite useful). A partial list of plugins we use are:

Plugin Description
LOMBOZ J2EE development support (JSP/servlet/EJB)
OMONDO UML diagram/code generator.
AntView Displays the various Ant build.xml files available for any open projects.
AspectJ Support for Aspect Oriented Programming.
Checkstyle Checks adherence to predefined style guildlines.
DbEdit A JDBC-based database perspective.
Jalopy A code formatter with various formatting options.
JNDI Browser Browse JNDI entries in a given JDNI server.
Solar Eclipse Collection of Web tools (JSP/WSDL support)
Telnet Telnet view from within a perspective.
Keyboard issues.
WSDLEditor Supports syntax coloring and a graphical view of WSDL tags.

Testing tools

JUnit
This testing framework is already build into Eclipse. If you decide not to use Eclipse, or WebSphere Application Developer, which uses Eclipse as its core, download JUnit directly and use the Java classes and testing GUI included in JUnit's distribution. After using JUnit if you were not test-infected you will be.

Cactus
Another great Jakarta-Apache project for server-side Java unit testing. Just as simple to use as JUnit only servlet-based to facilitate server-side testing.

Bugzilla
Bug tracking software. With Bugzilla there is almost no reason not to be tracking your bugs. The only caveat is that Bugzilla is easier to install on Unix than W2K.

Build tools

Ant
Make-replacement written in Java.

Cruise Control
The concept of Continuous Integration dictates that software should be integrated all the time (literally, two or more times a day), not just at project milestones. Cruise Control, developed by the folks at ThoughtWorks, uses a combination of make, source control and JUnit to constantly build and test a developing project. For help getting Cruise Control up and running go to http://jaba.startcom.org:4080/howto/CCHelp.html.

Design tools

Yes, some would say that the art of design is dead, but I disagree. If you can afford a tool like TogetherSoft's Together/J then you probably have the best of both worlds. Until then, either use the UML plugin available for Eclipse or use one of the following:

ArgoUML
A very nice UML tool. Of course, as it is pure Java it has all of the GUI shortcomings that one would expect.

Objecteering/UML
A nicer GUI than ArgoUML, but not by much. The diagrams are very nice and the program is quite responsive. No code generation. Objecteering has a commercial version that handles more of the standard behavior to be expected from a UML tool.

Web Services

Both of the following projects have great software to develop web services in Java. I was able to get Tomcat and Axis up and running within a few minutes and the MindElectric GLUE package has one of the fastest XML parsers I've ever seen. Both packages are superb.
Apache Axis

The MindElectric

Application Servers

JBoss
There aren't enough good things to say about the JBoss project: free, robust, free, leading-edge, free, full J2EE support, free, well documented, free, full standards support, and...did I mention that it was free? Sorry, but you have to buy the documentation (minimal cost).
(c) EinTech, Inc.
Companies and product names mentioned on this site are trademarks or registered trademarks of their respective companies.