Shostack + Friends Blog Archive


Single Serving Friend: Technology For Staying In Touch

Following up on my earlier post about staying in touch, there’s a bit of technology that I’ve been meaning to build for, well, over a year now, and haven’t gotten to it.

I was in Portland, Oregon for business, and someone I was speaking with said “Hey, you know Lucas Nelson is there this week?” Well, no, I didn’t. Lucas and I are colleagues in the information security world, I respect his work, and I enjoy his company. None of which leads to me getting in touch with him to see where he’s going to be this week, because the odds of us being in the same place are too low.

suitcase on a bed, looking lonely
But as we sat down and talked, we realized that this is a common problem, and it would be nice to see it solved. “Where Adam is this week” would make a fine add-on to Orkut or Spoke or LinkedIn. You could either forward your ticket emails to the thing, or tell it “I’ll be in Portland March 1-3.” There’s a huge business model here, which is that you know that Luke and I are both in town. Odds are you know where we’re staying. You suspect that we have no local guide. Sell advertisers the right to suggest a meeting place. We’ll be there all night, drinking expense account martinis.

But that design raises real privacy issues for me. I don’t want to have to tell another server where I’m traveling. So lets go to a distributed design.

Really, I’d like to be able to email a few hundred people with a note that says “I’m going to be in Washington DC, May 8-11, and have time if you’d like to get together.” I’d like those notes to be easily ignored by people who aren’t where I’m going to be. I’d like them to be easily read by someone who doesn’t have special software. If we make that note into something structured and stereotyped, then software could help people receive very large numbers of them without noticing or caring, except when they do care.

In my head, I’ve been calling this “Single Serving Friend,” (after Fight Club, but I can see it being used as a singles service, too.) So I might send an email with a subject line of “Subject: Single Serving Friend/1.0/DCA/20050508-20050511“. In the body of the email, I could have a longer textual message, like, “I’m coming to Washington, and have some free evenings. I’d love to check out an interesting new restaurant while I’m in town.”

It would also be possible to use an “X-SSF-1.0” or other header, and use a subject like “Adam coming to Washington, DC.” It’s easy for anyone to filter these out entirely, using their email program. But, if you want to, you could also pass such things to a program that would parse them. I could have a local file with my travel plans. A SingleServingFilter program could parse those emails and say, ahaha! DCA! I’m there, lets pass this through. More cleverly, it could also read itinerary emails from airlines or Travelocity, and know where you’re going to be, making the parsing more efficient.

two beers on a bar.jpg
A couple of side notes: I’m explicitly leaving times out of the base format. I’m using old fashioned text over XML because the format (at least in my mind) is pretty simple, and XML will make it bigger, less readable and more intimidating.

A poor second cousin is the use of various bits of social software to spam all my friends with itineraries, or say things like: Speaking of which, I’ll be in Nashville May 6-7 at BlogNashville, Washington DC May 8-11th or so, first speaking at The Security Leadership Series, and then for a few days of business meetings, and Montreal, at least June 17-19, for Recon. See how inefficient that is? But I’d love to see people while I’m on the road.

(Suitcase photo by Melicious, two beers by BK, both on Flickr.)