Skip to content
May 7, 2012 / Keyhole Software

The Programmer’s Utility Belt

The other day I was reading about the Batmobile…the car from the 1960’s television show. The Batmobile, regardless of whether you prefer George Barris’ campy custom rod or any of the others, probably is one of the coolest superhero accessories.

But what is the second coolest accessory? I suppose Batman wins again…with his utility belt. It seems that, no matter what he needs, that belt has got it all.

That got me to thinking: every programmer has a “utility belt” of their own that gets them out of their everyday jams. Not everything is as glamorous as a grappling hook or shark repellent, but every item is useful. Also, it shows you are prepared and that makes a good impression. Here are some of the items in my utility belt:


One of my favorite utility belt items is my smartphone. Many times I need to get information on a challenge I am facing, and sometimes access to the Internet is severely restricted or unavailable. Sometimes I need some tunes to inspire me, or a way to communicate with my geographically-diverse colleagues.

USB Drive

OK, yeah, I’m a geek… I admit to carrying a USB drive on my keychain. But the fine folks over at PortableApps and PenDriveLinux have made it possible to turn empty drives into toolkits of software. If I don’t have my laptop with me, but I have access (and permission) to a PC, I probably have something on there to help me out.  Not only do I have executable software, but I carry around a small PDF library, some code samples that I find helpful, and a Java decompiler. But the single best thing about a USB drive is that it gives you the flexibility of the Sneakernet when it is most needed!  (And we’ve all been there…)  How many times have you been at a place where a 20MB (zipped) file needs to be moved, there is no space on the network, the mail limit is a measly 2MB, and you need the file moved now.  Instant superhero!


On my USB drive, these are the resources I have acquired, or converted to, PDF files. I have found them infinitely helpful not only for myself, but for use in sharing knowledge with colleagues and employers. Here are a few in my library; some are older, but I still find them remarkably useful:

Java/J2EE Interview Companion
Remote Debugging with Eclipse
JavaScript Hijacking
An Interview With Mike Davidson of ESPN
Bind Variables – The Key to Application Performance
Transitional Layouts in (X)HTML and CSS
Beyond Code – Rajesh Setty

Pocket Knife

Yeah, a pocket knife.  Personally, I carry a small Swiss Army knife; the small screwdrivers on it sometimes come in useful if I need to work on a PC or tighten the screws on my eyeglasses. Mine even has a ball-point pen just in case.


Okay, that one’s too easy.  ‘Nuff said.  But it’s not the laptop that’s the real interesting thing…it’s what’s in the BAG:

Laptop Bag

Other than a convenient way to get your laptop from place-to-place while protecting it, the laptop bag provides a wealth of space to stash other accessories like:

  • Assortment of spare batteries (for when those wireless mice just don’t make it through the day)
  • Network cable
  • iPod cable and charger (hey, I’ve loaned mine to colleagues and executives and it always makes a good impression)
  • Mini and micro USB cables (see above)
  • Another USB drive (for loaning)
  • Change for the vending machine
  • ibuprofen
  • blank CD and DVD

So… what’s on your utility belt?

— David Kieras,


Leave a Comment
  1. David / May 7 2012 10:08

    Google, Code Assist, “Beer” Bottle Opener

  2. Jerry Kieras / May 8 2012 02:53

    Great article! Keep up the good work.

  3. R.J. Lorimer / May 8 2012 13:57

    Sites! Rememberthemilk, getpocket, google reader, github, google docs, atlassian ondemand, lastpass, etc.

    Mobile Apps! Many of the above again, Colornote, calculator, convertor, torch/light, etc.

    Laptop bag: DVI and minidisplay adapters


    Beer! (and opener)

  4. djkieras / May 22 2012 14:54

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: