The new Unity HUD is a trojan horse.

Written by David Banham

I am super excited about the new HUD coming to Unity.

Quicksilver on the Mac is great, and this new HUD looks like a Quicksilver that also works inside application menus. That is flat-out fantastic and it may well pull me away from OSX.

While I'm super excited about it, I think the thing that makes it so powerful is going to be both an opportunity and a danger for it's continued existence.

What tools like the HUD and Quicksilver do is give us some of the flexibility and power that we get on the command line. For example, say I want to move all image files from my desktop into my Pictures folder. I laboriously click them all on the Desktop (remember it's only images I want, so I can't just select everything, and they're probably interspersed with other icons), then open Finder, pick out the folder I want from all the options in there, then drag all the highlighted files in there. During this process maybe I grabbed one or two files I didn't want, or I flubbed my aim with the mouse and they all ended up in Documents or something.

On the command line, it's as simple and elegant as:

cp ~/Desktop/*.jpg ~/Pictures/

In order to get that simplicity, elegance and power however, I had to pay a toll that many users are unfortunately unwilling to pay. I had to memorise a few things. I had to remember that cp is the copy tool, that ~ is shorthand for my home directory and that * is a wildcard. Basic bash that has repaid the time spent learning it many, many times over. Many people are intimidated by this barrier, however.

What makes it intimidating is that there are no hints to get you started. The command line is a completely blank slate before you've typed anything into it. If you don't even know to type help or use tab completion, you have no way of getting started and this freaks people out. The strength of graphical interfaces is that when people are lost it's easy for them to poke around. There's a whole menu of options they can spend time reading through until they find one that looks right.

What I hope is that the HUD introduces people to the power of text based commands. They can use them in the HUD and maybe move on to using them on the command line and learning more about the systems they use every day. I want it to serve a similar purpose as Hypercard did back in its day by easing people into an unfamiliar new territory. Just like Hypercard was a friendly looking trojan horse that actually taught people the basics of logic and programming, I hope the HUD is the trojan horse of the command line.

I'm afraid, however, that it will simply scare new converts away.