Tool Cruft

It’s almost 2005 and I can tell you, right this second, most of the keystrokes to format a document in Wordstar. I could also navigate a DOS-based version of XTree in my sleep. Additionally, I could explain to you the color scheme I chose for Xtree and weigh the pros’n’cons of said color scheme against other schemes.

This is the crap that is in my brain after two decades of being a geek.

Of course, Wordstar and XTree are dead and gone, but that’s not the point. At their peak, they were the shit and by that I mean they were absolutely essential tools for me to get my job done… wait, I forgot Qmodem! ATDT-LORD-GOD-I’M-A-GEEK. These echos of tools gone by are called “Tool Cruft”… unique lightning fast keyboard/mouse combinations that you’ll never forget because they been burned into your brain by your NADD.

Tool cruft is created because, as software engineers, we love it when a tool just does it’s job to perfection. Go ahead, look at your desktop right now and pick out the tool that you just love. Maybe it’s an application or maybe it’s a utility, but I guarantee you have a something on your desktop that, you believe, makes you twice the engineer than that ignorant boob in the cube next door.

My current pick has gotta be LaunchBar. CMD-SPACE-BLISS. As I’ve mentioned far too often, I suck with the mouse and I rule with the keyboard which means I want to keep my hands over the keys as much as possible. LaunchBar does that without getting the way of my flying across my desktop. Twenty years from now when I’m sitting at my Mac G12, I’ll still type CMD-SPACE in empty space as I surf the web via my cranial plug.

Tool cruft, Rands? Sounds negative.

Yeah, well, it’s is.

Once we’ve found bliss with our respective tools/applications, we’ll go to extremes to keep them and when I say extremes, I mean over the board geek-like obsession-compulsive maniacal extremes. Some examples:

I haven’t seen DOS in a decade and there are folks with web-pages still spending time with these ancient tools.

“But I like ’em, Rands”

So did I… but I moved on.

The question is this: What new tool are you missing out on because of your blind faith in old reliable? A better way of saying this is, what opportunity are you missing?

First, you gotta figure out if your tool is becoming crufty. Pick your suspect tool and ask:

  • Do you have to explain to your engineers friends what the tool is?
  • Have you rewritten the tool from the ground up just to have it on a different software platform?
  • Do you spend more than thirty minutes configuring a similar tool to behave like the old one?
  • Do you run an emulation package just so you can run this tool?
  • Are you running an old version of an OS (say OS 9?) to run this tool?

A yes to any of these is a warning sign. Your tool may be getting crufty. If your tool is getting crufty, you’re getting crufty, too.


Yeah, I forget another qualification question — do you find yourself defending your favorite tool? Loudly? To Everyone? Keep reading.

I gave away every cool trick in the book when I moved to Mac OS X and it pissed me off. I was angry about the Finder, font sizes, window management, keyboard layout… it was an endless amount of crankitude. It gave me a headache. I missed my Windows Start key. I missed my ability to triage common problems in Windows with my knowledge of the file system, the OS, and, most importantly, I missed my bag of tricks.

Gone. Empty. Sad.

Three years later and I’ve got a whole new set of tricks. Someone pointed lsof to me the other day and I was in heaven… LIST EVERY OPEN FILE… HELL YES I NEED THAT. Throw that on top of a every other Mac OS X tip and trick I’ve found in the past 36 months and I’m in bliss because my bag of tricks has doubled in size. I was delighted when a friend brought a cranky Windows box over and I’d diagnosed and fixed the problem in FIVE MINUTES. Hell, if I knew jack about Linux, I’d be a TRIPLE THREAT.

Your job as an engineer is to build stuff. Maybe you’re a user interface type… perhaps you’re a kernel guy… doesn’t matter. You will be judged by your ability to build stuff, but the problem is that while you’re busy building the latest hoozy-what, some smart-ass over at the University of Illinois is building a better hoozy-what… or even worse, he’s making hoozy-whats irrelevant by creating a whole new market for hibbity-jibbities… and he’s doing it for free… because he likes to build stuff.

No. I’m not saying that your love of an ancient editor is going to suddenly make you irrelevant… what I’m talking about is a state of mind. A crufty tool is a sign that the nimble thinking that made you a great engineer in the first place is fading. Yes, you need familiar tools to your job and XYZ editor is a fine tool, but there are different tools out there and some of them actually might be better than yours because we’re all being engineers… we’re all trying to make the job of being an engineer easier and faster. Let us help you.

18 Responses

  1. brasten 19 years ago

    Now here’s an interesting question… about a year ago I switched FROM JBuilder — my IDE of choice since I started in Java — TO emacs. Now, while emacs could be considered a crufty tool for a lot of folks, does it still count if the first time I’d ever used it was a year ago and I liked it so much that I switched?

    Is “crufty” defined by the age of the tool? The features present in it? or the users willingness to consider new options?

  2. I had a blurb about “Emac enthusiasts” in an early draft of this article because I figured I’d piss off someone w/ Emacs…. so I tried the cruft questions against Emacs…

    – Need to explain? NO

    – Rewritten? NO

    – Like-tool configuration? NO

    – Emulation? NO

    – Old OS Support? NO

    – Must defend your tool? YES

    5 out of 6 = not crufty, in my opinion. Emacs is a brain cramp to figure out, but complexity… flexibility does not mean crufty. Just obscure.

  3. You were thinking of MPW, weren’t you. : )

  4. – Running obscure Japanese software to get your keybindings back

    Oh, you mean you don’t have local translation software?

    I’m just happy I can use my 16-year-old reflexes to type email in the toad-licking corporate-standard Outlook client. (Before you object that “16-year-old” is ambiguous, I’ll point out that I’m 32.)

  5. Old tools that solve a problem set that has not expanded are not themselves a problem. End of story.

  6. Mmmmm, Vim. The sweet text-editing joy.

    Seconded on LaunchBar/Quicksilver, though.

  7. Patrick Lemmens 19 years ago

    When I was a undergraduate student in the nineties my professor was a religious user of a dos editor called “pmate”…..

    In pmate you apparently use the right shift key a lot. Being a heavy typist he was quickly going through all the keyboards of the lab. Sneakily exchanging them with other lab keyboards when another right shift key stopped working. He even exchanged his home keyboard one day for a lab one but was found out and was told that was really not acceptable.

    He was also the proud programmer of a graphing program running under dos and which only user-interface consisted of lots and lots of key combinations. Of course these were not documented anywhere but they were known to the programmer in question….

    Don’t you like my graphing program he would say when he saw you struggling while trying random key combinations…. Let me show you: and takatakatak there of course was the graph you were trying to make! Of course afterwards you were trying to reconstruct the key-sequence to no avail….

  8. Jerkass 19 years ago

    So where’s how to lose your job part 2?

  9. Corey Henderson 19 years ago

    Xtree and Qmodem. Wow. I haven’t thought about those, but I could draw you a pixel perfect image from memory of what they looked like.

    I ran a BBS in those days and I still remember the complete modem AT string set. ATZ.

    Anyway, OSX is fine and good, but Windows still has my love.

  10. “Do you spend more than thirty minutes configuring a similar tool..”

    That one made me laugh because last spring I got pissed off at my XP and switched the shell from explorer.exe to cmd.exe. In order to make it usable I had to create a whole ton of batch scripts. It was kind of ridiculous.

    “do you find yourself defending your favorite tool? Loudly? To Everyone?”

    Well shit, there I go.

    Ah well. I’ve moved on by now, but it was fun for a few months.

  11. Autechre has an interesting interview here:

    where they insist that “We use anything, man. I don’t have favourites, and I don’t want habits either.” It seems pretty relevant, especially since they’re about as NADD as it gets in the music sphere.

  12. Brasten/Rands: RE: Emacs

    I was thinking of Emacs the whole time I was reading this essay. As a PHP developer, I’m the only member of my team who uses Emacs. Adobe GoLive is the standard here. I spend a good half-hour configuring Emacs as a powerful webdev ide on every machine I touch following the instructions here:

    I spend this time because Emacs is comfortable to me, and it says POWER to me. But I worry sometimes that the way I use Emacs IS a sign of cruft. I’m a webdev schmuck, not a c/java/lisp developer, and am I sacrificing the power of a modern editor for the sake of comfort?

    These are the questions that keep me up at night.

  13. Klaatu 19 years ago

    My Tool Cruft chest contains:




    and, still my love –

    PARADOX, by Borland


  14. brasten 19 years ago


    Keep in mind that I’m a very recent emacs convert from a “more powerful” IDE – specifically JBuilder…

    The reason why *I* use it is because it’s FAST. My brain already works much faster than my fingers, and the last thing I need is to be waiting for my IDE, or fighting through the GUI to open a file, etc. I would be perfectly happy switching to something like Eclipse if the speed was equivalent to emacs… I occasionally download it, but after waiting for a “project” to open, I dump it. I just want to be able to get in and get out of files as fast as possible, no pausing, no delaying…

    Emacs speed and file navigation converted me.

  15. Paradox. Sniff. I love that program.

  16. John Whitlock 19 years ago

    Great article. Thanks for the tip on lsof (emerge lsof – Gentoo goodness).

    My tool of the moment is MoinMoin, a Wiki engine written in Python. I used to worry that no one on the team used it, but it is perfect for keeping focused when I have more than five things to juggle in my brain. I’m close to running an web server on my laptop just so that I don’t lose access on a plane.

    Even though I try in vain to convince my coworkers how cool it is, it doesn’t meet the other four criteria, so I guess it is in the same category as emacs. One of these days, I’ll learn to touch type and to use emacs. Maybe the same week. Until then, vi/Textpad + advanced pecking.

  17. Klaatu 19 years ago

    One more instance of Tool Cruft: I am the only member of my lab who uses MINITAB. I was asked why I prefer the statistical analysis capability of MINITAB over the ubiquitous Microsoft EXCEL. I think of the lyrics from the song “Indiscipline”, by King Crimson:

    I repeat myself when under stress.

    I repeat myself when under stress.

    I repeat myself when under stress.

    I repeat myself when under stress.

    I repeat..

    The more I look at it,

    The more I like it.

    I do think it

  18. Not only is there Tool cruft, but there is game cruft as well…

    For those of you born in the 1980’s who don’t know where the rogue term in UNIX interface came from: