Thursday, September 3, 2009

(empo-tymshft) OK, so what is real time?

Perhaps you've heard the phrase "real time." What does this mean?





In the late 1990s, I was working for a company that manufactured automated fingerprint identification systems (AFIS). These systems have been around since the 1970s, but obviously their capabilities have improved over the years. For example, it was a laborious task for the early AFIS systems to compare a submitted set of fingerprints against a database of fingerprints, and it could take you hours or perhaps days to get results back. By the late 1990s, it was possible to get results back in a few minutes or less, so all of us AFIS people were prancing about talking about "real time" results.

Around this time our company acquired a computer aided dispatch (CAD) business, and I'd be willing to bet that the CAD people thought that we were the biggest bozos on earth as we were strutting around. CAD people, you see, design systems for emergency services, where you need to dispatch people to a fire, police, or medical emergency RIGHT NOW. Getting a result back in ten minutes isn't good enough for CAD people - if CAD firms depended upon our AFIS definition of "real time," people would literally die.

On the flip side, what if AFIS firms adopted the CAD definition of real time? It is theoretically conceivable that the FBI could require that its forthcoming Next Generation Identification database complete all AFIS searches within three seconds - but would the benefit outweigh the cost?

Now in the social media world, there's been a lot of talk about "real time" also (normally coupled with the "RSS is dead" theme). And again, different users will have different needs, or wants, for real time data.

Sometimes I'll write a blog post for my Empoprise-BI blog or for one of my other blogs, and I figure that the notification of the post's existence will eventually propagate out over the Internet. But there are times when I write something and I want the news of the post's existence to get out RIGHT NOW. In these cases, I use a combination of manual and automatic processes. With my current setup, here's how something like this might go:

  • Manually I ping Feedburner to make sure that the post ends up in my feed.

  • Manually I refresh my FriendFeed entries for the blog to make sure that it appears in FriendFeed.

  • Automatically FriendFeed notifies Twitter, and a tweet goes out about the post.

  • Automatically (after a while) my FriendFeed and Facebook "Empoprise-BI" group/fan club are updated.

  • Manually I stumble upon the post, and any related third party sources, to get the material into Stumbleupon.

  • Manually I put the post into my own Facebook feed (rather than the fan club feed) so that my Facebook friends can see it.

  • Manually (after a while) I share the item in Google Reader, which not only allows my Google Reader friends to see it, but also puts it in my FriendFeed again.
And so on and so forth. Even if I got smarter about portions of the process, some of this would still be manual, which is one of the reasons that I don't do this for every post.

And I haven't even looked at my consumption of information. There are those who need (or want) to know RIGHT NOW when something happens. Such people tend to gravitate to Twitter, or to services (such as FriendFeed) that immediately publish Twitter updates. But while Twitter is a good real-time source for some things (such as 5.0+ earthquakes in populated areas), it's a pretty poor source for real-time information about other things (such as whether my dog's water dish is running low, or whether a tree falls in an empty forest, or whether my favorite radio personality snorts cocaine).

And not all information is equal to everyone. As you may gather, I have a definite interest in automated fingerprint identification system news, and somewhat of an interest in computer aided dispatch news (my company is no longer directly associated with CAD products). Now Louis Gray probably has no interest in AFIS, but if a new iPhone app appears that promises greater enterprise level social media interactions, he's probably all over it. (I have a different cellular telephone, so iPhone apps don't interest me that much.)

So what is real time? Real time is the provision of information that YOU need, WHEN you need it. Bill might want an AFIS result in five minutes. Amy might want to know police car availability in two seconds. I might want to know the latest National Academy of Sciences report scuttlebutt by 8:00 am tomorrow morning. And Chris might want to know New York Times bestseller list information the day before royalty checks are cut.

In short, there's no one way to provide a real time solution...because there are several billion different real time problems.
blog comments powered by Disqus