The Programmer’s Utility Belt

David Kieras Programming 4 Comments

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!

See Also:  Go "On The Fly"


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
See Also:  What’s On First: The Case For Accessibility-First Programming

So… what’s on your utility belt?

— David Kieras, [email protected]

Related Posts

0 0 vote
Article Rating
Notify of
Newest Most Voted
Inline Feedbacks
View all comments