The other day I had an experience with my computer, and MSN’s software that just made me smile. You see, for the past year or so folks on my team have been involved on a feature that took coordination from dozens of internal teams. This was a big feature, one that I have spent countless man hours involved in, and some of my directs and co-workers an order of magnitude more time working on. It took everything from sharp technical minds, good business practice, relationships with carriers, partners, and of course operations, user experience folks and the usual suspects for any feature (development, testing, program management).
For the first time ever, I was able to use this feature with my sister, and I felt empowered. It’s the kind of feature that makes me so proud to work here because I fully understand the complexity of what we did, and the simplicity of the feature to the customer. It’s really my favorite kind of work, and it’s incredibly satisfying to have been a *small* part of it.
So what is this feature? Let me first explain the scenario.
Today, when two people have SMS enabled mobile phones, it’s possible to send an SMS (Short Text Message) from one phone to another phone. This is a fairly old system that was built years ago and was initially a hallmark of the GSM mobile phone system pioneered in Europe. Many years later we finally have SMS between all sorts of different carriers and technologies and in most cases it works world wide.
SMS requires a lot of inter carrier technology, billing support, and queuing technology. It’s a widely popular system and something I use a lot to communicate with my friends and family.
Now we also have this MSN Messenger thing which allows you to do many of the same types of things between two users sitting in front of a computer. Today it’s not a queued system but one that requires both sides be “online” at the time. So if I want to send a short message to some one who is not signed into MSN Messenger I have two choices: to send them an email, or to wait till they return online. In many cases my communication is not appropriate for email as a communication medium, and if I wait, I might forget about it. The current system does not allow me to continue the conversation with the person (even though that person may have a mobile device capable of having a text based conversation).
In the past few years there have been an effort to port the IM stacks to mobile devices to enable the same experience as the PC. However, there are millions of mobile devices that do not have IM stacks, and even if they are available, it’s sometimes too cumbersome to sign in to the mobile IM stack. Finally, that system suffers from the same problem as MSN Messenger on the PC. The communications require both parties be online.
So what to do? Enter MSN Messenger to SMS communications (we call this Enhanced mobile messaging). The feature we’ve been working on for the past year (or longer) was to allow a user of MSN Messenger on a PC to send a message to some one that is not signed into MSN Messenger but has an SMS enabled Mobile device AND to reply to that SMS message and have a real time chat (in otherwords, a two way conversation between MSN Messenger and Mobile phone using SMS as the wire protocol). This last part is important, but to understand it I need to explain one more thing.
For the past few years part of the scenario above has been available through what I will call a hack. Most phones that have SMS also have an email gateway that can take a message sent to a special email address and forward that message to the phone. For example, an email sent to <phone number>@mmode.com will forward that message via SMS to the <phone number> of an ATT Wireless subscriber. However, the user cannot reply to that email enabling a 2 way chat. Furthermore, it breaks the SMS user experience that mobile phone users are used to.
So, to fix this we set out to build all the necessary carrier infrastructure, SMS infrastructure, and build the technology and carrier relationships to ship the ability for users to have a two way conversation from MSN Messenger to a Mobile device that has nothing more than SMS capabilities (practically every singe phone on the planet). Not only that, but we support “Offline messages” so that if a Mobile phone device replies to an SMS from Messenger, and you have signed out of MSN Messenger, the next time you sign in the message will be delivered to you allowing you to continue the conversation. This is EXACTLY the same experience you get with a Mobile phone since it can queue SMS messages if your phone is off, and always deliver them when the phone is on. Now we have the same capability in MSN Messenger, and I’m happy to say that this is possible because of Hotmail’s participation (we are the store for all these offline messages, as well as delivery of the messages to Messenger). As a result of all this, two days ago, when my sister was “offline” from MSN Messenger, I was able to have a conversation with her from my Desktop PC and I had no idea where she was. That is super powerful and empowered me to do something that was not previously possible, and something I wanted and makes sense to me as an end user. One of the many reasons I love building software.
I write this because a lot of what I do at Hotmail is this kind of work. This isn’t a big splashy feature with a lot of chrome. But it took some super hard work from so many people across Microsoft, and shipping it is really a testament to how we can build interoperable features across organizations, technologies and overcome numerous obstacles to deliver something that makes a lot of sense to our users :-). This feature is particularly interesting as well due to the numerous SMS billing models world wide. In the US we have Recipient Party Pays (the person receiving the SMS gets billed) and in many other countries Calling Party Pays (where you must pay a small amount of money to send the mobile IM from Messenger to the SMS device). These two models are negotiated with the different carriers depending on the prevailing business model in that market. Today in the US this feature works for Verizon and T-Mobile users. It’s coming soon to other carriers near you.
You can read about how to use this feature in the mobile messaging help topic.