Handy Tools

These are some tools I recommend.

Heartily recommended

I use this stuff all the time.

Ant

A new 'make' but the makefiles are XML and the tool is written in Java. Very handy for compiling big Java projects. Less arcane than 'make'.

JUnit

A framework for writing and running unit tests for Java code. This seems to be the de-facto standard for unit tests in Java.

Mozilla

The open source web and mail client.It's in pretty decent shape. The mail client is very nice. Infamously bloated, if you care about that.

Tomcat

The reference implementation for Java Servlets and JSP.

Unison

An extremely convenient file synchronizer. I use it every day.

Xerces

An XML parser. I use the first Java version.

Grip

A Ripper/Encoder wrapper for Linux. Supports CDDB so you don't have to manually enter cd and song titles. Uses a built-in cdparanoia module for ripping (you can change it if you want) and 3rd party encoding tools for encoding. I use ...

Lame

An mp3 encoder. I use it in Linux and Windows.

Exact Audio Copy

A Ripper/Encoder wrapper for Windows. EAC handles the ripping and uses a third-party encoder (usually Lame -- see above). (I used to use MusicMatch for ripping/encoding but the ripping program, though fast, often left skips in the WAV files. And the encoder did weird things to the sound and never created proper VBR files.)

Recommended

I've used this stuff in the past, or I use it from time to time.

CheckStyle

Checks Java source code for coding convention violations. Some of it was written by me. Well, a very tiny bit.

CruiseControl

A Java-based build manager based on Ant, XML and XSL. Integrates with CVS and other version control systems. Also supports JUnit.

gtkdiff

A nice visual diff. It can be used for cvs diffs. 

Eclipse

A free Java IDE that is very nice. Unfortunately it doesn't handle Java1.5 yet. I used to use Netbeans but I've made the switch.

Bugzilla

Perl-CGI based bug tracking web app. I've used it a bit and it does everything I can think of. Setting up Perl and MySQL was a pain, of course.

Scarab

A new Java Servlet-based bug tracking web app.

Xalan

An XSL processor. I have used it to generate HTML from DocBook documents.bubbles

OpenSSL

A C crypto/SSL library. Good for calling crypto functions (encrypt, hash, etc.) and generating and examining certificates. The documentation is shockingly incomplete.

HTML Tidy

Checks HTML for mistakes. It also cleans up and indents HTML.