Software, technology, sysadmin war stories, and more. Feed
Thursday, November 15, 2012

IM status messages were a lost opportunity

Back around 2007-2008, I had an idea after noticing something about the day to day behavior of people where I worked. Nearly everyone was using Gmail in their browsers and also stayed logged into to chat at the same time. There was a sidebar which showed the people you most frequently contacted plus anyone else who you tagged as 'always show'.

The contact list isn't too interesting. The dynamic element of it was somewhat useful, but there was a third piece which really got me thinking. You could set an optional status message and it would show up under your name. Anyone who happened to have you set to display whether explicitly or automatically would have a chance to see it.

As a result, there was a steady flow of oneliners, interesting URLs, random snarky comments on things going on, actual status updates, and more. People posted things about what they were up to, how they were feeling, things to look out for, tips on which cafes had the best dessert that day, and so on. It was all over the place.

It was a lot like what Twitter wound up becoming, but all of this existed well before Twitter really took off. It also had the added benefit of working with anyone who had a chat client which was tied into the broader XMPP federation, whether GTalk or not. As long as you were "subscribed" to the other person in XMPP (Jabber) speak, you could see their status changes.

I decided that I wanted to start capturing all of this stuff to see what it might look like as a "timeline" of sorts. It wasn't feasible to do this sort of thing in my browser within the messy depths of Gmail, so I just started using Pidgin again and had it log in as me. Then I wrote an extension which would keep track of incoming status messages.

My extension's logic was simple enough: if someone sets a status message, and they're still "here" (i.e., not away, or "do not disturb", idle, or whatever), then keep track of it. Also, flip through their last few statuses, and if we already know about this one, ignore it. This was particularly useful because a bunch of people had horrible IM clients (Android, I'm looking at you) which would flap on and off all day long and would oscillate between not saying anything at all and then saying stupid things like "blahblah is in portrait mode". Who cares?

After this deduplication stage, then I had it write the status to a file with their name and timestamp. This file just grew and grew, and it became an easy way to keep tabs on things. Now, if I hadn't noticed the status while it was set, perhaps because I wasn't there at the time, or if that contact wasn't visible for whatever reason, it didn't matter. I could still see what had happened.

What I found interesting is that I managed to catch a fair number of people who were raging in their own semi-private way long before they officially burned out and quit. You could see a definite pattern in their status messages. One guy was on the Notebook project, one of many which was axed in 2008. His messages went from being about improving things, to how managers were stupid, to how companies were stupid, to how the users were posting messages like "please don't kill this" in support forums online, and then his messages vanished entirely.

Why did they vanish? Easy. He quit.

I kept this running for a fair amount of time and got to see some interesting trends. Of course, much later, "Buzz" came along, and I'm sure everyone knows what kind of fun that brought with it. Being forcibly added to a service that then goes and spews lots of interesting data about your contacts to other people is wonderful, isn't it? Go read about the lawsuit if you're curious.

What I had created was just a sensible way to manage the data which was already being shared with you. It didn't ask your friends to do anything new to make things work, and it didn't leak data back to anyone. It was just a simple way to keep up with the things they had to say.

Of course, it didn't do anything like get more valuable demographic data about users or "identify the well-connected nodes in the social fabric" or any crap like that. Maybe that's why nobody really cared about it. It never made it beyond being a cron job on my workstation. Other people were free to load it up (since statuses were already viewable by all employees anyway), and a few did, but it never went anywhere else.

I'll always wonder if someone could have outdone Twitter just by using all of those pre-existing IM status messages. The world may never know.