Wednesday, October 8, 2008

Post on The Live Mesh Blog, PDC 2008

I wrote a post on the Live Mesh Blog earlier today that talks about what I primarily work on - the Pub-Sub backend of Live Mesh. I briefly referenced that I worked in this space in a previous post where I commented on Apple's Push Notification announcements.

I've written tons of design documents, specs and tech summaries on the job but writing this post was an interesting exercise - I tried to make it readable for both the geeks and the regular folks in the audience (hence the references to the postal system). I'm not sure how well this will work... I guess feedback from the blog comments will be a good indicator of how effective the attempt was.

In addition to my awesomely smart teammates on the Live Mesh team, who I enjoy working with greatly, I wanted to send a shoutout to Tom who originally helped design a lot of the stuff described in the blog post.

For those who want more details about how stuff works behind the scenes, there are some Live Mesh related deep-dive sessions scheduled at PDC 2008. Sessions related to the Live Mesh backend architecture ("Live Services: Mesh Services Architecture and Concepts" by Abolade Gbadegesin) and backend communications services ("Live Services: Notifications, Awareness, and Communications" by John Macintyre) might be most interesting to those who were intrigued by my post on the Live Mesh Blog and are curious to know more. 

Unfortunately, I won't be attending PDC - I'll probably be busy chugging caffeine and fanning servers while thousands of new users give our new Live Mesh offerings a spin. :)

More Food For Thought About Google And Exit Polls

A couple of months ago I conjectured that Google might be able to produce a very accurate exit poll for the '08 Election. Today's post on the Official Google Blog shows some information that's very close to what I suspected they could generate - very cool. Particularly interesting is analysis of traffic from swing states. I'm sure they could do much more here - trending by counties, for instance.

In that previous post of mine, I guessed that they won't publicly release a prediction, but bits and pieces of information and trends like these are a good stand-in for a full blown exit poll.

Tuesday, October 7, 2008

Regret - Not Reading Enough Books!

A very regretful personal trend I've noticed over the last few years is that I've been reading a lot fewer books than I used to, and I didn't used to read too many earlier either. This applies to works of fiction, self-help books, biographies, etc - the more 'traditional' books. I'm often reminded of this personal shortcoming of mine when I'm around friends and family who read a lot - I usually have much to contribute to conversations, until the topic turns to recent/popular books and I just draw blanks.

This regret hits home even more on the rare occasions that I do pick up a book recommended by my wife or my friends (on average, once in 2 months) - I tend to enjoy these books more often than not. The last works of fiction I read were Jhumpa Lahiri's Unaccustomed Earth and Neal Stephenson's Snow Crash - both recommendations which I enjoyed, and took about 1+ months each to read. I read much slower than most 'good' readers (my wife, who can chow down books orders of magnitude faster than I can), which means I have more breaks and more opportunities for distractions.

When it comes to non-book reading though, it's a whole different story. I'm a voracious reader of blogs, news, current events, technology, opinions and trivia. I can read a newspaper cover-to-cover as fast as anyone I know, browse through several blogs a day without realizing it and read editorials/articles online pretty regularly. Maybe reality is just more entertaining than stories, or lessons from current events are more exciting than lessons in self-help books, or maybe I just do well with 'shorter' reading.

Or maybe I'm just not comfortable with the form factor of traditional books, which is why I've been eyeing Amazon's phenomenally successful Kindle - I wonder if that's my panacea. It's not cheap though. It would be super-awesome to be able to rent a Kindle at local libraries to check it out. I would totally buy one if it let's me get back into reading more 'traditional' books.

Hmm, I'm really tempted now. Maybe I'll just cough up the dough and give this a shot. Anyone have good/bad experiences to share about their Kindle?

Tuesday, September 30, 2008

Surprised by Live Search

I use Live Search as my web search engine of choice, but every so often I need to use Google to find the information I'm really looking for. I was really looking for a site that gave me good side-by-side results from both engines - kind of like how used to work in the old days (I was surprised to find still alive and doing search compilation, but I really wanted a side-by-side view from only my two preferred engines).

Recently, as part of an internal Microsoft initiative, I found exactly what I was looking for - a site that runs the searches in parallel and presents them side-by-side. As a bonus, you get to vote on which engine performed better. I've been using this as my default search engine on all my machines for the last few days and I'm already pretty surprised at how often Live Search comes up with far superior answers. I guess I never paid to attention to comparative relevance and quality until it was presented to me in such an 'in-your-face' manner. Of course, there are still many searches where Google trumps Live Search. Anecdotally, I'd say I prefer Live Search about 60-70% of the time, but maybe that's just me (and it could well be my inherent bias for Microsoft products).

One aspect that simply blew me away was Live Search's ability to fetch answers for very specific things I was looking for. A lot of these are powered by something Live Search calls 'Instant Answers'. A few samples from queries I performed over the last week where I was really impressed by Live Search:

- seahawks schedule vs seahawks schedule
- highest peak in the US vs highest peak in the US
- calories in beer vs calories in beer
- president of somalia vs president of somalia
- Colt McCoy vs Colt McCoy

These were just some of the searches I ran last week - the Instant Answers site has other query formats you can try (incidentally, I didn't know about Instant Answers or the formats until just two days ago). One place where Google still beats Live Search hands down is showing inline maps and directions. I use this fact to give a lot of sh*t to a friend of mine who works on Live Maps - maybe one of these days I'll annoy him enough to make him go fix this stuff! ;)

Friday, September 12, 2008

Bill & Jerry, and A Lame Blog Post

You've probably seen the new Microsoft Windows TV ads featuring Jerry Seinfeld and Bill Gates. The second in the series showed up last night.

When I first heard that Jerry Seinfeld was signed for the ad campaign, I wasn't really sure if he would appeal to the current generation (and I'm not sure he does). I'm a Seinfeld fan though, so I was curious what the campaign would be like. I have to be honest - the ads were completely not what I was expecting. FWIW, not many in the company had seen the ads before they were shown publicly - at least, I hadn't.

Anyways, it seems like the ads have people talking. From what I've read, the reaction seems to be neutral to leaning negative - I think people were expecting a more direct retort to Apple's Mac vs PC ads. Personally, I found the ads pretty amusing. Subtle humor, no direct attacks and entertaining. I think Bill easily outshines Jerry in both ads so far. I had seen Bill Gates act in silly videos at company meetings before, plus in his last day at Microsoft video, so I knew he can do a decent job but I didn't think he could out-do Seinfeld. There are subtle references to Microsoft products and technologies throughout the ads - pretty funny for someone close to Microsoft but I can see how pretty much everyone else might miss it. From the coverage the campaign has gotten and the pervasiveness of the ad spots, I'm pretty impressed with how much buzz the campaign has already generated. A lot of critics have complained that the ad hardly mentioned Microsoft or Windows... does it really need to, though? Bill Gates == Microsoft == Windows. No more logos/information needed.

Knowing nothing other than what I've seen on TV so far, I think this will definitely be a long-remembered ad campaign. It looks like its going to be one of those hugely successful or hugely miserable ad campaigns. Of course, given that work @ Microsoft I hope it's successful.

I wonder how many CEOs have featured in ads. I can remember a few in recent times - Chrysler, Sprint, Ford. None of those had the CEO doing comedy, though. CEOs, especially founder-CEOs, have huge brand appeal and brand recognition so they seem to be a natural fit for come-back type ads. I hope Microsoft has better success than Ford, Chrysler and Sprint are having currently, though.

Given the buzz around the ads, I was kinda annoyed when David Webster from Microsoft, who's apparently running this campaign, posted an entry on his blog trying to justify the ads - the text of the post just reeks of defensiveness. If you're ballsy enough to sanction $300 million for an ad campaign, there's no need to put up a blog post trying to justify it even before the entire campaign has run its course. His tone sounds like he's trying to save his job already - where's the confidence, man? Super lame, Mr David Webster. I think you should've just kept quiet and let the campaign do the talking (or not, if they don't succeed).

Thursday, August 28, 2008

Can Google Predict Election '08 Results?

Today's post on TechCrunch about possibly predicting election results using web traffic analysis reminded me of my thoughts from a few months ago.

Over the course of election season, starting with the presidential primaries through Super Tuesday and going into the national conventions, Google began releasing increasing amounts of election-related content and services. Reading the blog posts linked above and noticing the trend from Google leads to me the conclusion that the most relevant exit-poll for November's presidential election this year might actually come from Google.

Google likely already tracks user searches and email data from GMail. Combine that with some pretty basic data mining around traffic analysis, comments on their targetted election sites and popularity of their election related content/services and you could now get a pretty good 'pulse-of-the-nation' with respect to red state-vs-blue state. My guess is that the big push around election related content and services is an attempt to not only increase pageviews, but also harness large amounts of interesting data that can be mined for various interesting purposes. Additionally, this gives them a large data set to use to refine their own data mining technologies. I strongly suspect that Google will hold on to the raw data past election time and used it as test-data to track progresses in their mining technologies. Good data to test your technologies is *very* hard to to come by, and it would be foolish to let such rich data simply fall by the wayside.

Whether they publicly release their 'exit-poll' is another story altogether. I don't think Google really has much to gain by releasing the data even if they do manage to mine it. I know I wouldn't - I would mine the data, distribute predictions among team members for entertainment purposes only, see how close I got to the result, refine my algorithms and run it over the same data again to see how much closer I am now, and repeat. Releasing the data publicly, even if it turned out to be dead-on accurate, wouldn't buy me much. If it wasn't dead-on accurate, there is some amount of geek-cred that would be lost.

I guess November will prove if my theory above is correct.

P.S. I hope you picked up on the paradox in that last sentence above... :)

Wednesday, July 30, 2008

$10,000,000,000 == $1

I'm no economist, but it's hard to not have seen this coming. From the article:
Zimbabwe will drop 10 zeros from its hyper-inflated currency -- turning 10 billion dollars into one -- the country's reserve bank said Wednesday. President Robert Mugabe threatened a state of emergency if businesses profiteer from the country's economic and political unraveling.
Just a couple of weeks ago, Zimbabwe introduced a 100-billion dollar bill, and it didn't buy nearly enough. People are suffering in Zimbabwe while a corrupt government mismanages the economy. I truly hope their economy recovers soon...

Monday, July 28, 2008

Doing Something "Just Because We Can!"

Working on a distributed system like Live Mesh is a lot of fun, but finding certain types of bugs can be interesting, to say the least. Going from writing code that executes locally on a workstation to writing code that is executed across several hundred machines is an extremely refreshing experience - you quickly learn to spend a good amount of your time and energy building a good logging infrastructure and leveraging it to diagnose problems. There are several other things you learn too, but that's worth a series of its own posts.

With a large amount of logs comes a large amount of interesting data, and an even larger amount of potentially interesting data. Good logs can go a long way in helping infer information about the scale, health, bottlenecks, usage etc of the system. Much time is spent automating such tasks so that useful reports can be generated from logs. Every so often, someone (usually a non-tecnnical person) asks for additional interesting data that would take time, effort and money (in terms of resource utilization) to extract. However, almost all such requests are missing information about what the requester hopes to conclude based on the retrieved data. My instinct is to always push back on such requests, forcing the requester to justify what questions the data will help answer or what conclusions it'll help lead to. If the data gathered does indeed help answer a crucial question, it's worth spending time and money mining the logs for it.

Very often, the reason for the request is "just because we can", in which case I believe the time/money/effort spent is unwarranted unless you have people/machines sitting around doing nothing, in which case you arguably have other problems.

Moral of the story - try not to ask someone else to do work (or spend your own valuable time doing work) without knowing what you intend to get out of it.

Wednesday, July 23, 2008

Blown Away by IMAX (Again)

I caught The Dark Knight at IMAX, and it was so worth the wait (waited in line for an hour, on a weeknight!). I've watched a few movie at the Boeing IMAX Theater at the Pacific Science Center a few times now, and each time I come back amazed at the infinitely better movie-watching experience that the theatre provides. Select scenes of The Dark Knight were shot for IMAX (pretty much all cityscape scenes in Gotham City and Hong Kong) and they were just stunning. Too bad there were no real 3D scenes, like there were in Harry Potter and The Order of the Phoenix. I really need to catch more movies at IMAX - its likely the long lines that put me off, but I need to keep reminding myself that they're totally worth it.

If you have a choice to watch a movie @ IMAX or at your neighborhood multiplex, do yourself a favor and pick the IMAX experience.

Thursday, July 17, 2008

What Live Messenger, AIM and Y! Messenger Need to Remain Popular

Two things - broadcasting and aggregation.

Windows Live Messenger, AOL Instant Messenger, Y! Messenger and Google Talk and several others are hugely popular Instant Messaging applications. Almost all offer rich client experiences as well as web-based versions. I remember reading somehwere that IM apps are the most used apps on computers, and I am pretty sure they will continue to be for the near future. Demand for IM applications on the web is pretty strong too, with sites such as Meebo growing in popularity.

IM clients have been very innovative over the years, starting from simple 2-person chat to having multi-party conversations, voice support, application sharing, file transfers, etc. Innovation in this space seems to be slowing down though - I haven't seen any new game changing features in any of these IM applications. They all seem to have missed the move to a more social web. In many ways, these apps should have been the ones driving the social web, with their knowledge of social networks via friend-lists. However, websites like Facebook, MySpace and Orkut have firmly established themselves as the drivers of innovation in the social space.

Consumer interactions are evolving from being specifically directed to an individual or small group to being widely broadcast. Blogs, tweets and public profiles are visible to anyone and often are used as a broadcast medium. Increasingly, status messages on social websites and, more importantly, micro-blogging are encroaching on the IM space. Twitter clients such as Twhirl are a great example of this encroachment - users interact with it if it was an IM client but it's really just an app that allows broadcasting messages. YouTube is another hugely successful broadcast medium.

Ofcourse, users also want the ability to have personal, directed conversations along with the ability to broadcast - both to a select group (their network) as well as broadly to the world. For IM application to remain relevant and to fulfill this need, they need to include broadcasting features in addition to preserving the existing communication & collaboration experiences. There are multiple potential approaches to do this - use existing APIs of popular social platforms to allow users to broadcast to a specific network or to farm out to multiple social networks

With the desire to broadcast comes the desire to learn about what others are boadcasting. Most (all?) social websites have news feeds and services can aggregate several such feeds to present a unified view of a users online broadcasts/activity like how FriendFeed does. An IM application would be an ideal home for such an aggregated feed.

In many ways, Facebook is almost there with regards to being an ideal IM application. It has the advantage of being a really popular social platform, which certainly helps. Facebook recently complemented their broadcast communication feature (status messages) with IM-like functionality to enable personal communications. And of course, Facebook pioneered the news feed. Now if only they could go broadcast to and aggregate from competitor sites too... ;)

The arguments above apply even to corporate IM applications - this is not just a consumer need.
Unless traditional IM applications evolve to fill this need and compete with the Facebooks of the world, I see them dying a long, slow death.

Monday, July 14, 2008

Netflix on XBox 360 == Silverlight on XBox 360?

I'm really excited about today's announcement regarding Netflix streaming on XBox 360. I have an XBox 360 but I wasn't really impressed with the selection of movies and shows on XBox Marketplace - I'll definitely be signing up for Netflix once the XBox update rolls out. I don't care much about the content sharing part of the announcement though - why watch a movie together with friends when you aren't really together?

I'm not sure if you remember, but Netflix showed off a very slick Silverlight based streaming video player at Mix 07, that also included sharing. I wonder if this announcement means that Silverlight is coming to XBox 360. If it is, that would be very cool indeed. Can you imagine the kinds of applications that would now be possible to run on the XBox? The power of XNA and Silverlight could make XBox 360 a killer platform. It could also enable your XBox 360 to become part of your Live Mesh!

Friday, July 11, 2008

Losing Objective Reporting Would Suck!

Earlier today, CNN and NY Times had perfectly contradicting headlines for what was supposed to be the same news report:

Times: F.C.C. Chief Backs Sanctions Against Comcast Over Blocking
CNN: FCC Chairman Recommends No Fine for Comcast

It's interesting how opinion and interpretation can affect perception.

With increasing globalization and the Internet becoming the primary source of news, I often notice news stories take a life of their own as they spread through different media channels. It's harder today than it was a few years ago to find objective reports - reporters/bloggers increasingly tend to state facts that are inter-twined with opinion. In many ways, blogs need to be this way in order to allow conversations to continue (blog post + comments = conversation) but it is unfortunate that traditional media outlets also increasingly feel the need to add opinion and personal biases to news reports.

Traditional media is still very far behind the blogosphere when it comes to mixing opinion with facts, but I think it would be unfortunate if the current converging trend here holds for long. Without objective reporting, there would only ever be a bunch of opinions floating around, and people would lose their ability to form personal opinions which today derive from facts.

Tuesday, July 8, 2008

Favorites vs Underdogs

The 2008 Wimbledon final from a couple of days ago was epic. Perhaps the greatest tennis player ever against a potential future legend. Sport sites were all over the actual game coverage, but I was fascinated by the psychology of those audience watching the game.

As I watched the game with friends and family, I found myself to be the sole supporter of defending champ, RFed. Everyone else was rooting for Nadal.

This seems to be a theme with me - I was rooting for the Pats in Super Bowl XLII, for Tiger Woods at the US Open last month, for Australia in the 2007 Cricket World Cup, etc. I seem to want the favorites to triumph. Most friends of mine and most others out these seem to always favor underdogs.

I wonder what makes an individual go one way or the other when it comes to supporting the favorite vs supporting the underdog.

Leaving aside the betting aspects of it all, my naive guess is that who one supports has something to do with projecting one's own life experiences. If you've struggled and played the role of underdog more often than not, you empathize with another in the same situation. If you've been on the other side more often, where you've always needed to 'defend your turf' in some way, you probably ed up rooting for the champ.

Someone somewhere has probably written up a study that goes into the exact psychology of it all, but I stand by my extremely un-scientific claims above while I procrastinate trying to find said study.

Virgin America FTW!

Over the 4th of July weekend, I flew Virgin America and was blown away. It's amazing how they've used technology to out-perform their competition in almost every aspect.

Well, their fares were unbelievably great - $170 for a round trip ticket from SEA to LAX two weeks before the 4th of July. Their website is simple and slick, and they have a great model where you're charged a base price and 'frills' come extra (for instance, an exit row seats adds $15 to your ticket cost - I would totally pay for the extra leg room on a long flight). Their check-in and gate counters are Apple-slick and their brand spanking new planes are fitted with pleasant neon lighting and comfortable leather seats. Their in flight entertainment system, called Red (hip with the 'Beta' tag), is superior to any other I've seen in the US. It seemed to have just the right amount of free and for-pay options. Free lineup - live TV, music, games, soda/juice. Paid lineup - movies, food and alcohol (that's right - you order food and drink using the snazzy touchscreen and pay using your credit card). It even has this cheezy-yet-fun chat app which lets you join a chatroom (haven't seen one of those in years!) or send IM to a specific seat. Oh yea - each seat gets its own power outlet, even in economy. Their use of technology on the ground and in-flight seems to have allowed them to reduce staff and yet enhance the flying experience.

By tailoring their service and catering to today's generation, they're focusing on the right things. and the primarily west-coast service seems to be a great fit for their 'attitude'. Oh, and having really pretty air-hostesses helps too. Co-incidence, or perhaps a signature Virgin move ;)

Anyway, I would never fly another airline if a Virgin America route was available and reasonably priced. My guess is that they're losing money like every other airline (but less than others, probably). However, if they're in it for the long haul, I think they're making all the right moves.

Wednesday, July 2, 2008

Viraj's Guide to Interviews - Conducting an Interview

Over the last few years, I've done a bunch of interviewing - both as the interviewer and the interviewee. However, things had slowed down on the interviewing front for the last year while I was primarily focused on getting the Live Mesh Tech Preview out the door. I conducted an interview yesterday after a long while, and thought of posting about my own list of interviewing best practices. Interviewing ranks as one of the more critical functions for the success of a team/company, so I work hard at giving it my best.

I am not, by any means, an expert here but I have been interviewed by some excellent interviewers (primarily at Microsoft, but in quite a few other companies too) and I made it a point to keep mental notes of things they did well so I could apply them to interviews I conduct. While all my experiences have been in computer science related interviews, the list below likely applies to other fields too.

1. Spend at least 10+ minutes before an interview to plan what set of specific skills you intend to assess. It's naive to think that you can cover more than 2 skills in any sort of detail for each hour of interview time. Use part of this prep time to read the candidate's resume and understand his/her previous experience.

2. Make sure the candidate is comfortable, and the environment is conducive to conversation. Conduct the interview and manage interactions the way you would want them to be if roles were reversed. There are times when you want to simulate high pressure situations, but this should be rare and I recommend avoiding it if possible.

3. Ask questions that will help you assess skills needed for the job, and keep conversations relevant. Puzzles and teasers are fun to ask and often even to answer, but that don't tell you much about the candidate's skills. Problem solving, on the other hand, is a great exercise to assess the candidate's analytical skills.

4. Don't let the candidate drive the meeting. Often, candidates get into a safe zone (talking about resume items, for instance) and tend to not let you proceed with your agenda. Respectfully driving the conversation back on track, even if it means cutting off the candidate, is the right thing to do.

5. Don't try to prove you're smarter than the candidate. Remember that the goal is to gauge the candidate's skills and not to prove that you deserve to be interviewing them or are smarter than them. Many times you actually might not be, and that's OK!

6. Pay attention when the candidate is talking. Checking email or generally being distracted shows lack of respect.

7. If the candidate is struggling with something for over 4/5 minutes, help steer the candidate to a solution. Assess how the candidate reacts to hints and whether they're able to regain their composure.

8. Gauge the candidate for team fit and other non technical skills. Is he/she someone you would enjoy working and interacting with? How can he/she help you grow your own certain skills? How organized and methodical is his/her approach to problems?

9. Leave the last 5/7 minutes of the interview to answer the candidate's questions, and be as honest as possible. False sales pitches are often easy to detect and say a lot about your character (and that of the company). Try to determine whether the questions asked are genuine, or mundane and uninteresting. Often, what they ask says a lot about them.

10. End an interview with concrete information about what the next steps are for the candidate. If you don't know, make sure you refer the candidate to someone who does.

Any other interviewing best practices you've experienced that aren't covered above?

Tuesday, July 1, 2008

Some thoughts on Apple's Push Notification Service

Last month, at WWDC Steve Jobs announced iPhone 3G. Very cool. I think the iPhone is a game changer. Enough people have dissected the iPhone 3G that I'll skip re-stating what everyone knows already.

One of the more interesting announcements Jobs made at the WWDC Keynote was the iPhone Push Notification Service. In short, it's a single channel from the cloud to each iPhone, and can be used by software publishers (in addition to Apple) to send signals to apps on the iPhone without having to worry about creating their own custom channel to the cloud or using polling schemes. This sounds like a win-win for both publishers of iPhone apps and for Apple.

Given that I work in a similar space, this was interesting to me. We had been thinking along similar lines and have in some ways even taken the concept even beyond what Apple announced. I'll save the details/designs of what I'm working on for another post.

The technology Apple touted sounds a lot like Exchange Direct Push/Always-Up-To-Date, except that it opens up the channel from cloud->phone to third parties instead of the exchange model where the only publisher is Exchange and the only consumer is the Outlook Mobile client.

The design challenges of opening up a channel of this sort to third parties are:
1) Delegated authentication to allow third parties to use their notification channel
2) Routing notifications to the correct iPhone
3) Introduction of a single point of failure for most apps on all iPhones (kinda similar to AT&T going down - if Apple's service goes down all cloud-dependent apps are 'bricked' unless they have some form of background polling, which would defeat the purpose of the single notification channel since Apple touted battery life as their primary motivation. BTW, I don’t believe that is their primary motivation – more below).

One interesting feature they did not talk about, and I believe that they won’t add anytime soon, is a 2-way communication channel to allow for messages from the phone to the publisher. The notification channel is likely 2 way inherently, but communication from the phone is only ever seen by Apple.

Here are my guesses on how they deal with the above three:

There is only one way to get apps on the iPhone (assume non jail-broken iPhones) – the Apple App Store. To publish to the store, publishers share revenue with Apple. I’m certain there is some kind of certification that happens at this stage to ensure that apps are well behaved. Once certified, the publisher probably gets a ‘security token’ to communicate with Apple’s Notification Service if they want to use it. Further, my guess is that each app published by each publisher might have a unique security token. I presume that the content of Notification that publishers push through the channel would be encrypted and opaque to Apple – it would be very bad if that’s not the case. However, at least 2 pieces of information must be known to Apple – who is publishing and whom is the Notification going to.

My guess is that Apple is told what phone to send a notification to by publishers, versus figuring out itself where to route the Notification. In other words, the subscription is held by the publisher and not by Apple. The reasons I think this is how it must be is:
- Apple would not like to be responsible for tracking subscriptions of each app on each iPhone. It would mean they have a ton of subscriptions to manage, plus they need to perform lookups in their cloud for routing notifications to the right phone. By letting publishers deal with this, they are no longer responsible for the costs incurred of maintaining these subscriptions. Apps that create several hundred subscriptions cost the publisher, and the cost of performing lookups are also incurred by the publisher. This makes Apple's SLA much simpler.
- Publishers (I hope) would not want Apple knowing data about their customers.

#3 is interesting – the service needs to be robust again badly behaved publishers. Their first line of defense here is probably their certification program. Apps must not do wild-card broadcasting, must not poll, must have an upper limit on Notification payload sizes, etc. Note that the announcement yesterday was only to allow 3rd parties to support 3 types of Notifications – ‘badges’, ‘audio alerts’ and ‘text alerts’. By nature, the first two should be tiny in size, the third probably has an upper limit on size of text. Their second line of defense is probably real time metering and throttling. Apps must be self metered or will be throttled by Apple. Publishers are motivated to adhere by these guidelines because Apple controls publishing their app and could impose restrictions on downloads of the app in the App Store.

Regarding Apple’s stated motivation for the Notification Service – I suspect they have more interests than just “preserving battery life”. By controlling the App Store and this Notification channel, Apple now has direct insight into a ton of data that can be mined – what apps are most popular, what apps are most chatty, what app is the ‘flavor of the month’ by usage and not just by download metrics, most active users, etc. They can use this data both ways – to make special licensing deals with specific app makers they detect are 'hot' and create popular apps (popular download is different from popular usage) and also to directly target ads/other apps to consumers.

Other's have posted on how Apple might be building something similar for the Mac. They probably are, but the motivation for publishers to use such a channel is greatly lesser in case of Macs. There is no single channel of publishing apps for the Mac, although they do make it easier. As a publisher, the primary attraction of using something like this would be to not have to build something yourself, but I think the need to share revenue with Apple, get certified and distributed via official Apple channels only and use Apple as the middle-man for what essentially shouldn't be any of their business might act as deterrents.

Why am I blogging?

It's kinda funny how I feel the need to justify why I'm blogging, as if every blogger must blog to serve some purpose. I think such justification is warranted, but doesn't really need to be expressed. As long as you know why you're blogging, you're good.

I am a voracious reader of blogs, but never really got into blogging myself. I've tried this a couple of times before, but those were more academic exercises than real attempts to start blogging.

As I read blogs, observe people and their behaviors and basically live each day I form opinions, like most other human beings, that I keep to myself and sometimes (very rarely) express them to people I interact with personally. However, I think it's time to unleash my opinions to the Intertubes - everyone else is doing it, so why shouldn't I? ;)

Seriously though, there are a couple of reasons why I feel the need to blog -

As an engineer, I've found myself making observations and critiquing things that others benefit from. I've been told that my opinions are often 'interesting' (whatever that means), and while I may not always be right, I seem to have built a decent track record that gives me the confidence to risk embarrassing myself in public. I'm hoping that my blog posts about Technology will be even mildly interesting to others out there. There's the personal growth angle here too - in many ways, articulating thoughts into words takes some effort and makes you reason with your opinions. Blogging seems to be a great way to cultivate this skill.

The other big reason to blog is to be a participant in this new world of open communication, instead of being just a spectator. Reading interesting blogs but not blogging myself made me feel like I'm cheating, in some ways. I know I'm late to the party, but better late than never! I hope to use this platform to comment on society, trends, human behaviors and anything else that I wish to express.

Lastly - and I'm ambivalent about this one - I believe blogging will somehow help my professional career. It's almost as if nowadays, the fact that you have something to say is as important (if not more) than what you have to say. I don't want this to be an explicit goal of blogging (which is why I intend to blog about more than just Technology) but as the saying goes "If you built it, they will come". Notice how nondescript 'it' and 'they' are - by design!

Oh, as far as the title of my blog goes - I was looking for something witty (I envy all the bloggers-with-cool-blog-names out there) but I ended up with something more aligned with the reason I'm blogging - "Mulligan!", my chance to re-do.

Argh - who am I kidding - the truth is, I just played a crappy round of golf today (shot 118, lost 4 balls and broke a club) and I couldn't come up with anything better.