Topic: Editor’s choice

The Groovy Mode for Emacs

Over the years there has been no shortage of Groovy modes for Emacs. They all had an irritating tendency to stumble even on common language constructs. I was very happy to find a new version that seems to get things right.
Continue »

Zoom in on XOM

Today’s kudos go to the profusely productive Elliotte Rusty Harold and the XML model called XOM. To quote the XOM web site, XOM is

an open source (LGPL), tree-based API for processing XML with Java that strives for correctness, simplicity, and performance, in that order

Among the design principles, there is one I particularly like: An API is written by experts for non-experts. Great, I simply don’t want to learn all the intricacies of namespaces etc. I just want the API to tell me if I’m heading the wrong way.

My confidence in this package has grown over time. I have used XOM primarily to juggle Docbook documents, using XSLT and XPath. The application has been in production for a while and has performed without a hitch.

It’s a pity that DOM didn’t reach this level of excellence. There is a Swedish saying, “Many cooks, little taste.”

Automatic Bug Finder

Who likes a fault-finder? Well, the FindBugs utility from the University of Marylind makes me smile. I’m delighted to see that this project is alive and kicking. Kicking at bugs!

When I tried it about two years ago I didn’t expect a lot. A small program pretending it could find bugs in Java programs? So I let it have a go at a not too large project I had done. To my astonishment and embarrassment it didn’t just nag about bad habits, lint style, it actually found one or two real bugs! My embarrassment quickly turned into admiration.

Java has a very capable compiler. You may think it checks everything. It doesn’t.