Monday, September 24, 2007

Remember bang paths?

For those who don't remember, back in the mists of time if I wanted to send email to my friend down the street at the Prestigious University Research Lab, I would have to spell out exactly how it was supposed to get there.

We did this by giving a list of machines that the message was to pass through, separated by bangs ("!"). In those days much of the heavy lifting was done by VAXen and Sun workstations were popular for the desktop. The result might look something like


(Except probably with all names 8 characters or shorter)

I was never very good at this, even with help from the ASCII-art maps they posted to the newsgroups from time to time, so I usually just called or hopped on my bike and went over if I really wanted to be sure the message got through.

Then along came the email addresses we know and love today, and I could just say

That was much better. I didn't care how the message got there, just which machine it was headed for. Except that sometimes my friend was logged into researchsparc and sometimes othersparc, and mail would miss from time to time. That didn't take long to fix (and the capability was there all along, I think). Soon everyone had a single mailbox, independent of where the messages were stored, what route they took to get there, what protocols the mail system spoke, or anything like that. Then I could just say

and mail would get there. Even I could handle that.

Score one for abstraction. Successful abstraction isn't drifting off into some ethereal realm of ideas about ideas. It's cutting out everything that's not essential to the task at hand and holding on for dear life to what is (in this case, whom I'm trying to reach).

Footnote: For several years during that era my address was, which was both a valid email address and a valid MS-DOS filename. A desert topping and a floor wax. I always got a strange sort of pleasure out of that.

No comments: