Friday, December 08, 2006

Services anywhere, anytime, and anyhow?

We all have different kinds of computing devices; desktop computers, laptops, handtops, PDA devices, mobile phones, you name it. All these devices offer different kinds of usage patterns and allow accessing services in different ways. What would be really cool is to have the services be available, in a way or another, for all the devices capable of producing content for those services. Confusing? Maybe, so let's have an example.

I have multiple devices for taking pictures. Or for producing content for blogs. For instance, I take pictures with my Ixus digital camera or my mobile phone. I also write content to blogs using desktop/laptop computers and mobile phone. How could all these be integrated in such a way that for instance I could take a picture with my mobile phone, attach some text to it easily, maybe include some context data, and finally post the whole thing to my blog? Well, one way could be to first take the picture and upload it to some online picture album, such as Flickr or PicasaWeb. Then I would write the text, and upload it to the blog. Finally, I would attach the picture from the online picture album to the blog, and maybe tag the blog entry with some context-enabling keywords. Quite complicated?

At the moment, interfaces to all the services, or parts of them, are provided by different service providers. Flickr allows uploading pictures with various ways, and with various devices. Similarly, blog providers allow inserting entries with different kinds of interfaces; web upload, email, etc. What is missing is the real "glue" between all these, so that I could have a client from which I could just aggregate the service access with some nice way. Maybe Semantics and Web services, or preferably a combination of them - Semantic service composition - would provide an answer to this?