Download PDF version of this article PDF

What’s on Your Hard Drive?

Sometimes having the right tools can make the difference between a project’s success and failure. Therefore, it’s no surprise that many of you “roll your own” when what’s available just isn’t cutting it. But before you write that first line of code, visit the WOYHD submissions page and tell us, and the rest of the Queue readership, about these glaring omissions and inadequacies. Who knows, some enterprising programmer out there might rise up and do the job for you. Of course, we also ask that you tell us about some software you love (there must be something you love to use, right?). We eagerly await your submissions at

Who: Ryan Goss
What industry: Government/Military/Aerospace
Job title: Software project engineer
Flavor: Develops on Windows for proprietary
Tool I love! Visual SlickEdit. One feature I like is that it allows you to have all source files open for easy searching (with regular expressions) and changing. It also lists all functions, variables, constants, etc., so a simple double-click takes you to the data. It color-codes source code and is easy to configure.
Tool I hate! Visual C++. This tool does not provide an easy-to-use graphical interface. Its “graphical” interface is so difficult to use that it is simpler just to edit the text file that describes the graphics. Most of the system is so convoluted that making the simplest of changes to any piece of software is an ordeal.

Who: Jeremy Karlson
What industry: Government/Military/Aerospace
Job title: Application developer
Flavor: Develops on Windows for Windows
Tool I love! VIM, Ant, and Javac. The clearly defined tasks performed by each of these tools allows developers to replace any tool they don’t like. It’s simple and it’s basic, but the lowest common denominator is still my favorite.
Tool I hate! PowerBuilder. It’s the antithesis of simplicity and clarity. The PowerScript language and libraries are inconsistent and just plain nasty. The IDE is buggy, and the binary file “sources” are tied to this poor IDE. It’s impossible to replace any of the three simpler components I prefer.

Who: Tony Aiuto
What industry: Technology vendor (software, hardware, etc.)
Job title: Software developer
Flavor: Develops on Linux, OS X for Unix, Windows, OS X
Tool I love! Tcl/Tk. I use Tcl as an instrumentation and debugging tool on many projects. I provide Tcl bindings for all of my C/C++ code so that I can script regression tests. Tk is a fine language for prototyping applications.
Tool I hate! CVS. Let me say first that revision control is as important as breathing. CVS gets a basic job done, but runs out of steam for multiteam, multisite development. It needs a number of enhancements in security and administration that I don’t see on the horizon.

Who: Andrew Wolfe
What industry: Technology vendor (software, hardware, etc.)
Job title: Applications architect
Flavor: Develops on Windows for Linux
Tool I love! Toad. It is exceptionally well thought out—it understands the work of the data modeler and database programmer and supports it exceptionally well. The pop-up object describe and single-click extraction to SQL source features are invaluable.
Tool I hate! RCS. It’s a shameful exemplar of coders implementing a powerful abstraction (the version tree), backfilling it with junk (e.g., file labeling), and doing virtually nothing to apply it to practical versioning problems such as forward patching.


Originally published in Queue vol. 4, no. 1
see this item in the ACM Digital Library


© ACM, Inc. All Rights Reserved.