Monday, August 03, 2009

Instant messaging in 2011

We all use instant messaging nowadays, I have resisted against it for a long time and was a true believer that UNIX talk and IRC where more than enough to communicate with the outside world. However I also have now a skype account, a MSN messenger account and a corporate Microsoft Office communicator account.

All needed to keep in contact with people. The downside of this all is that you get more and more differentiation between the user communities. Some of use MSN others use Google Talk. Some make the decision because of what their friend’s use, some because of what is installed on the PC. Now if I wanted to talk to someone who is using for example MXit I have to create a account and I have to install a client to be able to communicate with this person.

Creating a account is already a hassle and then I have to hope I can install the software on the PC I am currently using. In some cases I do not have the rights to install the software so in that case I am blocked and cannot come into contact with this person unless he or she is willing to register to the same network and install the client I am using.

If we look at Wikipedia the number if instant messaging platforms is enormous and growing. Just to name some names; AIM, eBuddy, IBM Lotus Sametime, ICQ, IMVU,… the list can continue for some time.

What do we need in 2011?
What we need in 2011 as a new killer app for instant messaging is a instant messaging mashup in the form of a website. Think of it as a single location where you can login once and activate all your instant messaging channels. When you need an extra platform, like for example you need to talk to someone who has only MXit you now can register for MXit and assign it to your mashup profile and will be able to chat with them via the webinterface.


Next step is that you will be able to create a account with only a couple of steps using for example a OpenID. If you have a instant messaging mashup and are able to connect and create accounts using a OpenID you no longer have the need to do all the painfull registration steps, within a minute you will be able to connect to the person you want to talk to as long as his network can connect to the instant messaging mashup.

Another benefit of this is that you can manage your contacts within the mashup and will be able to add them or remove them from all your instant messaging networks. For example if I want to add my friend Tom to be able to talk to him via Skype and MSN I currently have to know what his username is to be able to add him. I also have to add him in both services. In case of a mashup he has registered his name in the mashup and set that he is using Skype and MSN. Now I want to add him I do not add his Skype and MSN account to my account, just add his mashup account to my mashup account. The moment he agrees the mashup application adds his name to my MSN and Skype network.

What will be the downside?
The downside will be that not all networks shall be willing to corporate with this. They will no longer be in the picture and they will become more of a network than a tool. Now they are a tool a application that is on your desktop. It is spreading the marketing for the company who developed it. When it is incorporated in a mashup they will not have the advantage of a dominant position on your desktop.

You will see that they will make it harder to communicate with the messaging servers without using the official client. So this can be a downside. Also some will quite the market and be pushed out of it by this. So you will have less to pick from. Even do I started this topic with the problem of having too many different instant messaging networks it is good that you have a choice. By improving the interoperability of the networks you will see that some will quit. Having a choice is always important so I see this as a real downside.

Mashup network?
Should it be a good plan to also have a mashup network like we have for google talk and MSN for example? Yes, this should be a part of the solution. The ideal situation is that we have a opensource mashup server who is able to also run its own instant messaging service network and connect to other mashup servers. So if you think you do not have to join a existing network you can just make use of the mashup network. If it is propperly designed you can even use it on websites as a sort of makeshift instant messaging chatroom which enables you to talk to people in this specific room and if you like them invite them to become part of your mashup network.

Privacy and security?
Privacy and security, beside the obvious that the security of the mashup has to be really really tight there are more things to consider. However, on the topic of the mashup security. As not all networks will work with OpenID you will have to store some of your passwords in the mashup to be able to a sort of single sing-on. So if the mashup server is compromised all your passwords will be compromised. There are ways and encryption algorithms that can be preventing this however they person developing the mashup server should be aware of this.

Privacy, you should be able to set your own security and privacy in such a mashup as fine-grained as possible. For example, if I get a invitation from Carla and I have a MSN, Yahoo!Messenger and skype account I want to be able to only grant here access to for example MSN because I know that if she gets my Skype account I will have to talk to here every night. Also I want to be able to say I am available on all networks however not on MSN for person X, Y and Z. even do I might be available for person Y on Skype. All these small fine-grained settings you should be able to to define.

Where are we?
Somewhere in the middle I think. What we currently see is that instant messaging networks are opening up. You already have desktop clients that allow you to interact with a number of networks from a single client.

We do have API’s for quite a lot of networks. For example for MSN Messenger we have a Python library; msnlib - a Python MSN messenger protocol library and client.

For Google Talk we can also use Python
and as Google talk is based upon a jabber server we can talk to most of the networks which uses a Jabber server; Google Talk, Live Journal Talk, Nimbuzz, Ovi….. jabber is a XMPP server, you can even start your own server quite easily, just have a look at xmpp.org.

So we can have some bits and pieces now we have to create a mashup for it. Well there is work been done on this subject also. If we check the WSO2.org
we can already find some interesting things. So as you can see some people are working on parts that can be used. Now all we need is a person who will be putting the pieces together and create this mashup which can make all of our lives a lot easier. Never install a client again, always be able to quickly add all your new friends to all your instant messaging networks….. sounds like a good build for 2011.

Is it already their? Yes in some form, if you have a look at ebuddy you will see that something like the above is already available. So why still request a build2011? It is not completly the product as described above. Some of the real ebnifits are missing in my opinion and their is not a strong user communcity. Maybe some people will disagree with me and state that their is already a good working mashup. Well, that is great. however I find it still to little and I would like to opt for a build for 2011 which is also preferably aopensource project so you can download it and create your own spinoff of a mashup. Maybe even connect that mashup to some central mashups. So eBuddy is a great tool it is not (yet) what I am intending.

What about Google Wave?
When I was talking to some people about writing this post Google wave came up. What about Google wave. Well as Google wave is quite new and it still needs to get a good user community I am not sure. Also Google Wave is not a instant messaging client as such. However as from what I have been reading and from what I have seen I would say that also Google Wave should be incorporated to this mashup. Or…… Google Wave should become this instant messaging mashup. As Google wave and the wave protocol are opensource it might be that the community will be building a mashup around Wave or that Google itself will create the interoperability between the different networks. Might be a good hint to the guys over at Google labs. Please do forward a link to them so they might have a peak at this post.

No comments: