Category Archives: IM

Service Reliability

Omar Shahine, a PM on Windows Live Hotmail, has an excellent post entitled, "Designing for Services Dependencies" from the Hotmail perspective.  Reading it brought back a bunch of memories and lessons learnt from Messenger Server.  (I don’t have to think about service reliability these days as we have more "qualified" people to do so.)  Let me focus on the "reliability" aspect rather than the "dependency" aspect.

Who remembers the 8+ day outage of MSN Messenger back in July 2001?  I confess that I was "not a fan" of MSN Messenger back in those days (I had just started to use AIM over ICQ) so it didn’t affect me.  But the legend of that outage can still be heard if you seek out the members of that team back in the day (whom are now scattered all over the place–everywhere, including Google and Yahoo!, but Messenger).  You can read about the whole ordeal here.  (As far as I know, though, the outage had nothing to do with .NET; the .NET Messenger Service was just a PR branding exercise.)  What about the outage in early 2003?  I don’t have first-hand accounts of these weeks as I wasn’t around during that time.

In the old days, what we would do is schedule several hours for server upgrades where we would kick off the entire Messenger user base (that’s millions of people around the world), take the entire cloud offline, deploy new binaries to the machines, restart the machines, smoke-test a bit, and then finally start taking traffic.  It was a heavily manual, intensive process, often taken many hours.  These were scheduled during the lowest peak traffic period in the week, which happened to be Friday nights, around 9 PM PST (sorry, Asia!).  We would be down for several hours while we upgraded bits.  Some people would be in the S.O.C. while the rest of us would be in a large lecture hall watching a movie (before!) and then watching the "action" on the big screen during deployment.  People got tired and sometimes made mistakes.  [Note that in the really old days, the servers were rebooted by developers to "try" out new fixes/features.  In the really really old days the servers were boxes under someone’s desk.  It would have been cool to be around then.]

So when was the last time you saw the pop-up dialog when using Messenger: "The Messenger Service will be performing maintenance in 5 minutes"?  It should have been some time late in 2004.  That maintenance, if I recall correctly, lasted several hours, during which time 100% of the Messenger user base was disconnected.  (I remember my sister on the east coast IM’ing me, "AHH!! No! No maintenance!  I need to talk to my partner to get this project done!!!!")  Prior to that event would in fact be the weekend of October 9-10, 2004.  That was a ‘fun’ weekend.  According to this article:

By early afternoon Monday, a representative of Microsoft said the company had fixed the issues that had prevented its users from logging on to Messenger.

"The system is now back up and running," the spokesperson said at 1 p.m. PDT. "We believe that the problem is now fixed." …

The spokesperson would not give further details about the problem, except to say that the Monday morning outage was due to "administrative maintenance."

Indeed, that was a big SNAFU.  (How much can I divulge here without getting fired?  Just use your imagination.)  It took a long while to recover from that outage, and we had learnt our lesson.  It was interesting to note, as well, that when you have an outage, it actually takes a while before the number of online users reaches the pre-outage numbers.  I suppose that it’s not surprising that you lose some percentage of users when your service is out-of-commission, but you don’t really wrap your head around the fact that even a small percentage of millions of people is a lot of people.  Nine hours in a year (= 99.9%) is not a lot of time, yes, but nine hours at once, passes by fairly quickly, and you’re guaranteed to hit many other blips along the way.

How do we measure reliability?  Surprisingly enough (it surprised me), we don’t actually take the statistics that clients upload to us since the checkbox to "Join our Customer Experience Improvement Program" is turned off by default, unfortunately, and not very many people turn it on.  (By the way, you really should check off that box: Tools > Options > General > Quality Improvement.)  Instead, we have these little programs that run against the cloud, simulating actual clients, every X minutes or so.  Using a little math, one can turn these into a rough measure of percentage uptime.  I always found this to be somewhat arbitrary.  For instance, it’s easy to figure out what happens if Passport is down.  As Omar says, you’re down on your ass.  But what does it mean, for example, if you can login and get the status of your buddies, but you can’t establish an IM session with them?  How does weight that for ‘service reliability’.  The best way (in my opinion) would be to get actual client data–how often people try to set up IM sessions compared to how often they fail; but we don’t have all that data (and definitely not all of it in real-time), so we figure out some complicated formula.  We try to be objective but it’s totally subjective.

Keeping a service up and "reliable" may sound extremely boring to many folks, but there are people here dedicated to doing exactly that.  An extra 9 is coveted by these people and will do anything to get that extra bit.  Funny enough, it’s a constant struggle between those that want to keep the service reliable ("don’t touch what ain’t broke") and others that want to roll out new features to users as quickly as possible.  Interesting dilemma there too.

Messenger has gotten much much better at dealing with downtime since 2004.  Part of that, of late, has to do with some platformizing and leveraging some cool work done in Search.  Which is why, although you may experience "unable to connect" every now and then, you won’t see "maintenance" any time soon.

E-mail Losing Ground to IM, Text Messaging

E-mail losing ground to IM, text messaging
Young people driving switch to instant gratification communication

E-mail is so last millennium. Young people see it as a good way to reach an elder — a parent, teacher or a boss — or to receive an attached file.

. . .

But when immediacy is a factor — as it often is — most young people much prefer the telephone or instant messaging for everything from casual to heart-to-heart conversations, according to research from the Pew Internet & American Life Project.

. . .

"Adults who learn to use IM later have major difficulty talking to more than two people at one time — whereas the teens who grew up on it have no problem talking to a bazillion people at once," Boyd says. "They understand how to negotiate the interruptions a lot better."

Good, short, article (albeit a little shallow). And it speaks the truth: old people like to e-mail (no offense), and young people like to IM. Personally, I’m not big on the who text’ing thing–mostly due to the fact that not only am I slow at messaging on my phone (I refuse to use ugly non-English shortcut IM lingo), but I have to pay to do it as well??

The strangest feeling I had gotten while working on Messenger Server was that most people on the team don’t get IM. Sure, they work on the product day-to-day and churn out new features to make those 204 million users happy, but they don’t get it. They don’t live it, don’t breathe it. They aren’t IM addicts online 24/7 (maybe that’s a good thing) who use it as their primary means of communication. (Actually I’m not online 24/7 either since the last thing I do at night is shut off my computer–although the first thing I do in the morning is turn it back on.) I’m not certain of the composition of the Messenger Client team–probably they are much more in tune with customers than we/they (Server) are. We need fresh blood. Hire a bunch of kids (actually they’re already doing this–how do you think I got hired? 😉 ) that are soley devoted to IM. One of the interview questions should be, "What’s your score on one of those IM Addiction Tests? Hell, a portion of the interview should be conducted over the IM product of the candidate’s choice. Take longer than 5 seconds to reply? IM in paragraphs? Goodbye. If you don’t know what you make inside and out, if you don’t live and breathe it all the time, how can you advance its frontiers? While you’re at it, might as well fire a bunch of people to slim down the team (I was thinking it’d be cool to make a Mini-Messenger blog, but I suppose that’s another topic for another time.)

Oooh, I got derailed. Sorry, I hadn’t made a rant in a while. I guess I’ve been itching to do one. Anyway, e-mail losing ground to IM. Yeah.

Talking with G; Round 2

Several days ago, I decided to reinstall GTalk at home. It turns out that they had fixed the issues I was seeing on my laptop (freezing and the like).

Today, GTalk came out with a new feature: Roaming Chat Histories! I had alluded to this idea in an earlier post–it was a natural progression of having your Mail in the sky, searchable, with context-based ads; to having your IMs in the sky, searchable, with context-based ads. [Apparently I’ve heard that MSN had such ideas a long time ago but has yet to deliver on the feature (I’ll leave it to the reader to speculate why).] So the idea’s not really that innovative. But GTalk’s still the first to do it. And they do it well.

I just love it. Someone IMs you a phone number or an address. You don’t bother writing it down. You can log in from anywhere (like the public library’s kiosks) into GMail and seamlessly search for it. And going "off the record" is a neat little feature as well. This is just so cool. It’s unfortunate that MSN does not (yet) have this feature. And it looks like GMail’s getting its own version of WebIM very soon.

One of the misconceptions that people (in general) have about IM is that it’s just the network of users that matters. Certainly, people will argue (as I have) that it’s very tough to move people off AIM/AOL, even with their crappy client (or at least, it used to be crappy–I haven’t tried Triton), as all their friends are on it. This certainly was the case in college. But I think people don’t realize that the network effect only goes so far.

Case in point: Koreans used to be absolutely fanatical about MSN Messenger. They had 3rd party plug-ins and avatars long before Messenger even supported Dynamic Display Pictures. They had the whole revenue stream figured out years before Messenger even considered the pay-per-download model. Now? No one in Korea uses MSN Messenger anymore. They’ve all switched over to NateOn. What happened? Messenger didn’t pay close enough attention to the Korean market. So Koreans found something else that was "cooler" and catered to their tastes and everyone left. Everyone.

The argument that some network doesn’t have "enough" users is only valid up to a point. There’s a threshold that can be crossed. And once it is, the network effect is no longer valid. Cause your network’s gone.

At some point, people will get fed up that Messenger randomly takes up 99% CPU and their computer freezes to a halt. You can give them all the Winks in the world and they won’t care. And they’ll head for that IM program that costs them 5 MB RAM. Not to mention the ability to archive messages in the sky.

In other IM news…

hmm I might be able to scrounge up an invite for auction
 
A/G vs. M/Y.. interesting times ahead.
 
Flipping Your Startup 101 [c/o Carnage4Life]
very informative.  Personally I don’t like uploading my password to some third party–but I can see how the typical end-user just doesn’t know the difference.  Just goes to show that to make money you don’t actually need a novel idea.
 
… don’t click on sketch links!

IM Unified

Press Release: Microsoft and Yahoo! Announce Landmark Interoperability Agreement to Connect Consumer Instant Messaging Communities Globally.

We didn’t officially find out until 72 minutes before the press release. Obviously we aren’t need to know. Hmph.

I don’t have any Yahoo! contacts. In fact I’ve only used the Yahoo! IM client (now with voice) once a month or two ago, when I was trying to figure out what would happen if it were to become a battle of the clients. To my surprise, the clients are very similar feature-wise. (But our emoticons are so much better.) The next day I promptly uninstalled it.

So what do I think?

  • It’s a bold move by both Yahoo! and MSN. Obviously neither side thinks that they will crash and burn, losing all their users to the other side. Let the battle of the clients begin!
  • It’s still an entire year away. Now if AOL wants to play, they’re going to be the third to the table. And we all know that three’s a crowd.
  • This isn’t the first time interop has been attempted. The history of MSN Messenger, for instance, is quite colourful. And then came IMIP from the IM Unified Coalition, thought that fell through as well. It seems that this time, the market (and Yahoo! and MSN) are finally ready for it.

There was a 10’x6′ poster board in our lobby. The left half had the Yahoo! logo and the right had the MSN. We were supposed to sign it and then send it off to Yahoo!. Some people signed the Yahoo! side. Someone had to put up a sign, "DO NOT SIGN THIS SIDE. SIGN THIS -> SIDE ONLY!" Hahaha. (I suppose I’m partly at fault because I told someone to go sign the left side [jokingly] and he did..)

It’s going to be a lot of hard (and dirty?) work to get this ready for the next year. But it’s definitely a good thing–keeps us focused.

MSNahoo!

Microsoft, Yahoo to Link IM Networks. (Yes, I get my IM news from Overdo.)

Real? Speculation? I don’t know. Don’t you hate it when you’re out of the loop? Fortunately, I saw this one coming for a long while (it’s like taking small pieces of a puzzle and trying to put them together). I guess more coming tomorrow? Stay tuned…

Where to Eat?

As reported by all the Virtual Earth guys, the Virtual Earth Shared Map was launched yesterday. Contrary to what Scoble says, this was whipped up by Steve. It’s awesome! Now you can easily settle on a place to eat everytime you’re IM’ing someone for dinner. (I know I have the problem all the time.) I’m sure Steve is accepting feature requests 😉

The Dancing Pig!

Yet another reason why MSN Messenger is so cool…
 
So my realtor tells me this weekend that he’s in the process of getting a divorce from his wife.  Which means that he’s back in the ‘game’.  And as a thirty-something single guy, where is he going to go to meet girls?  He knows "his type"; but it’s hard to meet those people.
 
So he sinks to (what I think of as) the ultimate low, and goes online to those internet dating sites.  I’ve never been a proponent of sites like these, but obviously plenty of people use them.
 
Anyhow, within days he got hundreds of e-mails from people (most just want to get hitched for a Green Card I think).  But he zeroed in on this Thai girl in Thailand.  And now he uses MSN Messenger daily (err.. nightly) to talk to her.
 
Quote: "I used to think instant messaging was just for teenagers."
 
"[I was] saved by the Dancing Pig!"
 
I’m not sure if I should be proud or embarassed.
 

Hot off the press.. (unofficially)

Wild speculation today, and then this article: Google Talk Review

Basic IM capabilities, high-quality and easy to use VoIP, complete integration with Gmail, and a simple, ads-free interface.

It will be interesting to see the quality of their voice sessions.  We have ok integration with Hotmail, especially with the MSN Today window.  Yes it could be better.  Ads-free?  We’ll see how long that lasts.

The download is tiny (about 900k) and the install is so quick and easy you don’t even realize it’s finished yet.

MSN Messenger is huge.  Somebody go complain to the client folks..

Google tells us that SIP support is coming soon and are in talks with Skype, AOL, and Yahoo! concerning interoperability. 

OUCH!!  Once interop happens it becomes a game of who’s client appeals to which users.  Sounds like Google is banking on simplicity.  Danny said this today, "The thing about interop is, you don’t want to be first, and you don’t want to be third."  And definitely not fourth.

Another big feature they’re working on is "joint search," which would allow two or more Google Talk buddies using Google and surfing the web together.

I think Messenger already has this. 

Google also tells us that they don’t yet have solid plans on making money with the service, but plan on using it to drive users to Gmail.

Hmm.. so I take some stuff back I said in the last post.  This is by no means revolutionary.  Somehow I expected more.  I’m not sure if I’m disappointed or relieved.

Hey gIM, you there?

From The New York Times: Where Does Google Plan to Spend $4 Billion?

Google executives say they plan to unveil on Wednesday a "communications tool" that is potentially a clear step beyond the company’s search-related business focus.

While executives would not disclose what the new software tool might be, Google has long been expected to introduce an instant messaging service to compete with services offered by America Online, Yahoo and MSN from Microsoft."

From Mess.be: Hold on tight, because MSN Messenger might get some competition…


So let’s be the Devil’s advocate here and say that Google comes out with something revolutionary. In fact, I’d be willing to bet that it’s going to generate some pretty big hype. Google’s not dumb enough just to release another plain old IM service. Everyone and their mother is speculating about what Google has up their sleeve. I won’t do that here. Instead, I’ll look at what this means for Messenger.. ? (This list was meant to be mutually exclusive.)

  • Microsoft execs get nervous. They don’t want a repeat of Search (when they jumped on the bandwagon way late), so they immediately bring in the big guns. All current development on existing Messenger servers goes into maintenance mode to support the current Service. In the meantime, the big guys architect a whole new design (but it won’t really be new because the first idea came from Google anyway). They design, build, and ship. It maybe takes a year. In the end the existing team (including me) all gets fired, or at least transferred to some dead-end group on the moon (without life support).
  • Around a month and a half after Google’s announcement, we decide to rewrite Messenger. Sound familiar?
  • People (from low-level developers, all the way up the food chain) hit themselves over the head: Why didn’t we think of that? Duh. (Actually this can happen in conjunction with any of the other points.)
  • People think it’s an interesting idea, but we continue on with our daily routine. (God, I hope this doesn’t happen. We need some serious competition to start some serious innovation.)

Pretty bleak. So then I have a question. Everyone knew Google was developing some sort of IM solution. Why didn’t we (MSN) put our heads together and pre-emptively innovate? Why didn’t we come up with something so earth-shattering that people would look and say, "Wow, MSN did that? This makes everything else obsolete." (Steve and I had one such idea about a month ago–and if Google comes out with something similar I’ll be sincerely pissed.) Why do we constantly have to wait for competition to take the first step? Competition provides motivation, but it would be so much better if we were just so fast and innovative and cool that there was no competition because they wouldn’t be able to keep up.

Wow this blog is getting just more and more cynical. Think happy thoughts.. happy thoughts. Can’t wait until Wednesday.