Tuesday, April 26, 2005

The Event Driven Life

A few years ago the Smithsonian did an exhibition on time. It explored the changing way in which Americans have measured, used and thought about time, with a movement from time marked by the Sun's cycle to time marked by the tolling a clock bell to time marked by a personal watch.

The watch revolutionized our relationship with time. Before the watch everyone got up at sunrise, ate when the Sun was at its highest and retired when the Sun went down. The clock tower with its bell marking out the hours allowed a slightly better control of time. For example, it meant that everyone could arrive for the Church service at the right time.

In the 19th century mass production and improved manufacturing techniques reduced the cost of a watch to the point where everyone could afford to own one (does this sound familiar?). In a world where everyone has their own timepiece, people could schedule their own use of time, and now they are expected to. So instead of the time being broadcast by the clock tower bell with the granularity of an hour, we each keep our own time to the granularity of a few minutes.

With a watch, we have to keep a list of appointments and constantly look at the watch to keep on time. It is well known that polling is an inefficient algorithm, and constantly checking a watch is very distracting for everyone. We all know a type-A person who never seems to relax or even listen to what we are saying because they constantly looking at their watch, indicating with their body language that the next appointment and keeping on schedule is more important than whatever they are doing now.

The next stage in the evolution is to eliminate the distraction of looking at a watch and polling it by giving the job of managing out personal calendar to an information appliance. This is a portable device that knows our calendar and the time and lets know what we are supposed to be doing now. With this device we can lead the event driven life, the machine tells us what to do and when to do it. The evolution is complete when we stop thinking about time because we never have to know the time, only what we are supposed to be doing.

Some of this exists. In my estimation we are about a third of the way there. You can buy a PDA and synchronize it with your corporate calendar. Within the corporation others can see your calendar and organize events with your schedule in mind. However synchronization is weak and the corporate calendar is a closed system that does not interoperate with other calendar system.

Moreover, calendar applications are very primitive, lacking many useful features. For example, if I have to travel to an event and want to ensure that I am not scheduled for something else when I am supposed to be traveling, I have to calculate travel time and add that to the event, so I lose the event starting time. If I create the travel time a separate item it is not associated with the event and does not change when the event changes. Another example is that there is no function to buzz me 5 minutes before the end of a meeting to remind me to wrap up so that I can make the next meeting on time.

Interoperability is another problem. The real problem is that there is tight integration in the closed corporate system and no outside integration. If I arrange a dental appointment, I have to enter the appointment in the calendar by hand. Later on the dental receptionist will call me to remind me of the appointment which I again have to check by hand. What should happen is that the dentist sends me an email confirmation of the appointment and I right click on the email to add it to my calendar. This should just work between all email clients. Again, if I go to a web page that announces an interesting event, or I use the web to register for an event, I should be able to right click on the web page and select "add to calendar" using the browser plug in for my calendar application.

The good news is that there are clever people who realize that there is a problem and are trying to solve it. The bad news is that the solutions are closed systems. What we need are open standards that allow for interoperability. Again, clever people have realized this, but so far the standards have not stuck.

No comments: