July 15, 2010
@ 02:20 PM

I was reading Pandas and Lobsters: Why Google Cannot Build Social Applications... and came across the following statements

Now, consider the Four Horsemen of Hotness in 2010: Facebook, Quora, Foursquare, and Twitter. Think deeply about why none of these four could have been developed inside Google.
Quora is restaurant that serves huge quantities of
bacn and toast. Quora is a dozen people running dozens of experiments in how to optimally use bacn to get people to return to Quora, and how to use toast to keep them there. Bacn is email you want but not right now, and Quora has 40 flavors of it that you can order. Quora's main use of Bacn is to sizzle with something delicious (a new answer to a question you follow, a new Facebook friend has been caught in the Quora lobster trap, etc.) to entice you to come back to Quora. Then, once you're there, the toast starts popping. Quora shifts the content to things you care about and hides things you don't care about in real-time, and subtly pops up notifications while you're playing, to entice you to keep sticking around and clicking around.

Although I’m a regular user of Foursquare, Twitter and Facebook and consider myself to be fairly up on what’s going on in the social media space, I’d never used Quora when I read the article. Given that I’ve seen hype about it in various corners I decided to create an account and give the service a try. Below are some of my impressions

What is Quora?

The easiest way to think about Quora is that Quora is to Yahoo! Answers as Facebook is to MySpace. It is a Q&A site where users utilize their real names often linked to Facebook profiles as opposed to pseudonyms. It avoids game mechanics such as high score leaderboards and user badges that services like Stackoverflow and Windows Live QnA instead relying on people getting kudos from their peers in the form of endorsements and votes on their answers to motivate users to answer questions.

Why is Quora is so Hot

Quora seems to have started off as an invitation-only service which allowed them to cherry pick the original users to meet a particular demographic (i.e. Silicon Valley geek) and also carefully manage the initial culture of the site. What they’ve created is a place where members of the Silicon Valley technorati and wannabes can post questions and expect them to be answered by members of the tech elite including insiders at various tech companies. Quora is the kind of place where questions like What are the scaling issues to keep in mind while developing a social network feed? is answered by one of the people who built the original Facebook news feed and a random opinion like Should Mark Zuckerberg step down as CEO of Facebook and find a more seasoned replacement? gets a response from Blake Ross. There aren’t many places online where a question like What were the 4 or 5 key decisions that Larry Page and Sergey Brin made in the early days of Google? can get a serious answer let alone a well researched history lesson as well as some actual insights.

This site is pure gold for technology bloggers, journalists and Web startup geeks. It is unsurprising that these sorts of people would consider Quora to be the greatest thing since sliced bread.

Quora is a Community Site not a Communications Tool

One of the things I find weird about lumping Quora into the same grouping as Facebook, Foursquare and Twitter is that unlike those sites it is not a communication tool. Facebook created a new communication channel between friends, acquaintances and family members that sits somewhere between brings together the functionality of email and IM along with the feed. Twitter created a lighter weight way to consume and create content for brands and people you find interesting as compared to blogging. Foursquare is about broadcasting your location to interested parties.

Quora on the other hand seems to have more in common with mail lists and discussion forums. Specifically, it is more like Metafilter, Digg and Reddit than it is like the aforementioned sites. This is a service that will live and die based on the culture of its community and is very dependent on "power users” who altruistically provide lots of value to the site in exchange for respect from their peers. The challenge for Quora is that it will be difficult to keep its current culture as it grows bigger. Will Facebook and Google insiders still be showing up in various question threads if the site grows to be as big as Yahoo! Answers with the same breadth of audience and volume of content? I can’t imagine that happening.

I also can’t imagine being able to segregate audiences like you can on communications services. Twitter has communities of mommy bloggers, tech bloggers, fans of various celebrities, sports fans, etc which operate independently of each other and really only are noticed by others every once in a while due to the trending topics feature. The same goes for Facebook and Foursquare. Quora will not be able isolate the various demographics from each other without changing the nature of the site. However they will have to figure that out once the current crop of users start logging in and seeing "how is babby formed" style questions because the site has taken off.

Then again, we might get lucky and the site never take off with the masses which may not be good for the VCs that have invested in it but would be for the community that has formed there.

Note Now Playing: Young Buck - Welcome to the South (featuring Lil Flip & David Banner) Note


Many moons ago when we were planning the set of social features we would build into the next version of Windows Live, we were very mindful of the fact that our customers are inundated with lots of social networking sites and what people need are tools to manage their relationships across many services not yet another social networking site. As some of those features have now rolled out to the general public in the form of betas, I’ve been keeping an eye on social media sites like Facebook and Twitter to see what regular people and techies think about what we’ve shipped.

What the Techies are Saying

Yesterday, Omar wrote a post on the Engineering Windows Live blog titled All Your Contacts in One Place where he talked about the work we’ve done in creating a single place where users can view and communicate with not only their Windows Live friends but also their contacts across multiple services including Facebook, MySpace and soon LinkedIn. Chris Messina posted the following in response to the story

I’ve talked about the work we’ve done around bringing customer value with the news feed that is integrated into the new Hotmail experience including how we’ve blended email into the news feed experience in recent posts. So I was pleased to see the following tweet from Jesse Stay

Thanks Jesse

Facebook Users on Windows Live

I regularly perform Facebook searches to see what people who are using the Windows Live Essentials beta think about the investments we’ve made in bringing social networking to the desktop in a big way. Here’s a sampling of some of the feedback I’ve found

You get the idea. Smile

Twitter Users on Windows Live

I performed the same sorts of searches on Twitter and found similar feedback. Here are a few of my favorites

It’s really exciting to see so many people validating the design choices we made and enjoying the product that we’ve spent the last couple of months building. The outpouring of positive feedback has been really humbling and has me jazzed up to build even more things that make people happier as they connect with the people they care about using our products.

Thank you to everyone who has tried out the various betas.

Note Now Playing: Eminem - Love The Way You Lie (featuring Rihanna) Note


Categories: Social Software | Windows Live

One of the things I’ve noticed while working on Windows Live is that it helps to think about communications tools such as email, IM and social media sites as being parts of a continuum as opposed to being rigidly defined product categories. They are all ways we share our thoughts, ideas and interesting things we’ve online with others where the main difference is really how public or private the communication channel is and how synchronous we want the conversation to be. Once you start looking at communications tools this way it starts opening the door to asking how we can bring some of these experiences closer together.

Over on the Windows Live blog there have been a number of good blog posts on this topic. Piero Sierra wrote in the blog post Sharing 2.0

Our data is everywhere

People store their stuff across the web, their PCs and their mobile phones, leading to fragmented access and fragmented sharing. Take the example of photo-sharing. A study we ran in September 2009 showed that people stored their photos across up to 15 different types of technologies. Here are the major ones:

Graph illustrating where we store our photos

It would be nice, not only to have everything in one location, but also to be able to access all this stuff and share from wherever you may be, especially from mobile phones and PCs that you may not own.

We're putting it all out there

It seems like our appetite for using technology to connect with each other is bottomless, whether it be directed communications with the people we love (email, IM), sharing with groups of friends (email, social networking), or full-on public broadcasting (blogs, micro-blogs, photo & video dedicated sites, etc.)

Whenever a new medium emerges, it doesn’t replace the previous ones – it adds to it. That is, people today are sending email and IM and updating their status on social networks and uploading photos everywhere. They're sharing their thoughts and their memories to stay in touch with each other. Sharing and consuming shared data has become the primary internet activity for many of our customers, right up there with shopping and reading news.

With regards to email and sharing specifically, there’s another good blog post on this topic by Dick Craddock titled Email in a World of Social Networking where he wrote

Recently, we surveyed 2,000 people in the US, where nearly 10 million additional people have started to use Hotmail actively over the last year. Our goal was to refresh our understanding of how people use their personal email accounts, particularly in this day of heavy usage of social networks for communications. We surveyed people who use AOL, Gmail, Hotmail, and Yahoo! Mail – 500 people for each service. Here’s a bit of what they shared with us.

Graphic comparing communication choices

  • You’re still very attached to your personal email accounts. We asked the survey group which communication method they would choose if they were allowed to keep only one to communicate with friends and family. Of the choices – email, texting, IM, or the ability to post to their favorite social network – most people told us they’d choose email over all of the other communication methods and tools.     
  • Email is today’s tool of choice for managing and sharing documents, interacting with businesses, tracking online activities, receiving and responding to social networking alerts, communicating with friends and family, dating, and so on. Your inbox is your job search strategy room, your filing cabinet, your to-do list, and your social center
  • Email is your online photo album, too. People send and receive over 1.5 billion photos each month on Hotmail alone, and email is still the most popular way to share photos.

One of the things that became clear from us from this data is that there’s a good overlap in the kinds of activities that go on in email and what we see in social networks. Some of your friends share photos with you by posting them to Flickr while others send emails with photos as attachments. Sometimes you find out about new comments on photos you posted to Facebook by going to http://www.facebook.com and other times you discover this because you got a notification email. Either way, there’s a lot of overlap in the actual problem being solved although the technology may differ.

So what are we doing to simplify things in Windows Live’s Wave 4 release? Glad you asked. Smile 

Emails with Photo Attachments and Messenger Social

One of the goals we set out with for Wave 4 was to ensure that people should be able to keep up with what their friends are sharing with them no matter where their friends are. This is the motivation behind the integrations we’ve done with popular social networks like MySpace and Facebook. However as you can tell from the blog posts mentioned above, email is also an important way for your friends to share updates and media with you. What we’ve done in this release is to bring in emails that are used for sharing photos from your contacts into the Messenger Social feed across all experiences where it is displayed.

On the web:

On the desktop:


Emails from your Social Networks and Messenger Social

The goal of the Messenger Social feed is to keep you up to date on what your friends are doing. One of the things your friends do is comment on the stuff you post on various social networks. Invariably you get a mail about these comments and we thought to ourselves that these email updates are just as valid to show in your feed as the comments attached to people’s updates that are typically in the feed. Thanks to diligent work of the Hotmail folks who built a bunch of excellent technology around recognizing and categorizing emails from social networks, you now get updates such as

in the Messenger Social feed.

What Do Customers Think of the Blending of Email Content in a Social News Feed?

Since Messenger is still in beta and Hotmail has just begun to roll out not a lot of people (relatively given over 350 million users) have seen this feature yet. Anecdotally, I’ve heard lots of positive feedback about this feature from a bunch of beta users but my favorite is the following comment taken from the reviews of the Windows Live Messenger iPhone app from the Apple App Store(comment #33).

Note Now Playing: Waka Flocka Flame - Oh Lets Do It (remix) (feat. Gucci Mane, P. Diddy & Rick Ross) Note


Categories: Social Software | Windows Live

One of my favorite things we built in Wave 4 of Windows Live is now available. You can now download Windows Live for the iPhone, iPod Touch and iPad from the US app store. You can also get it from the France, UK and Canadian app stores. The app kicks serious butt and I use it every day.

The official spiel is as follows

Windows Live Messenger for iPhone and iPod Touch is the best way to connect with the people that matter most and keep up with the things they are doing across the web. Use your iPhone to instant message your friends list, view and comment on your friends’ photos and status updates from Windows Live, Facebook, and MySpace, and at a glance, see what your Messenger friends are sharing from Flickr, YouTube, and many other social and photo sharing sites. Make sure to visit http://profile.live.com/Services today and setup Windows Live to bring in your social networks. Messenger is simply the best way to connect with your closest friends.

Instant message with your Windows Live Messenger and Y! Messenger contacts on the go so you’re always connected to the people that matter most. You can even receive IM notifications when your app is closed so you never miss a message.

Windows Live Messenger gives you one place to view the updates your Messenger friends are sharing from social networks like Facebook, Flickr, MySpace and more, helping you cut through the clutter on the go.

Upload photos right from your phone to share your favorite moments with the people that matter most. Create albums, add captions, and let your friends and family comment on your photos.

Access your Hotmail account without leaving the app to read, reply to, and compose emails. Get email notifications within the application so you know when you have new messages.

For me, push notifications when I get new IMs is the killer feature. I used to think IM was dead on smartphones until I used this app and realized that the problem was really lack of an IM client with push notifications. If you use Windows Live Messenger, you need to cop this app today. If you need further convincing here are some pretty pictures

Note Now Playing: Snap - The Power Note


Categories: Windows Live

Over the past year or so, I’ve been part of the team working on building the next version of the social news feed on Windows Live. Yesterday, the next iteration of this feature was made broadly available on http://home.live.com and http://profile.live.com. As I look back at the work we’ve done there are a number of things I love about the philosophy behind what we’ve built and the actual features we’ve implemented.

The above screenshot shows the header for Messenger Social feed on the Windows Live home page and captures a number of it’s key concepts.

Highlights from your Favorite People

One of the key problems we want to address with this release is the conflicting feelings of information overload from getting a flood of minutiae on a daily basis from people you’d barely consider acquaintances and the feeling of not seeing enough stuff from the people you actually care about because they are being drowned out by other less important people. The way we’ve approached this problem is described on the Messenger Preview site and excerpted below

Because most people today use a variety of social networks and content sharing sites, with different sets of friends and acquaintances dispersed throughout these disparate networks, it can be challenging — and exhausting — to visit different websites and create different accounts just to keep abreast of your friends’ updates. But it isn’t just about bringing all that data together. What’s really valuable is helping you filter through the clutter and get to those updates you really care about — the ones from those people who you communicate with most frequently. There are a lot of intelligent algorithms and machine learning that can help in this, but we’ve found one of the best ways is to simply ask people. So, Windows Live Messenger will come right to the source — YOU — and ask you to specify your favorites:

The Highlights filter shows the most interesting recent content from your social network and strives to ensure you are kept up to date with updates from your favorites even if they aren’t posting a mile a minute like some of your more active social networking friends.


The screenshot above captures what this means in practice. Since Omar is one of my favorites, his updates show up ahead of updates from Mint.com even though his are several hours older than those from the Mint fan page. We learned from experience that although a number of people find the Highlights filter to be a valuable way to cut through the clutter and view the most interesting updates from their social network, there are also times when we have time to kill and don’t mind swimming in the full stream. For those times, we also have a Recent filter which provides the classic reverse chronological view of a stream of updates from your social network.

People-centric not Service-centric

The fundamental idea behind social software is that it enables people to connect with other people. When we first shipped the feed in Wave 3, it was a key part of our design philosophy that we would bring together updates from multiple services into a single experience that emphasized your friends not the services where the data was coming from. One consequence of this is that updates from multiple services are shown in a single stream as shown in the screenshot from the previous section. We don’t provide tabs for multiple services because at the end of the day, what’s important to me is seeing what my friends said today not what my Windows Live friends said versus what my Facebook friends said. Instead our filters enable users to decide how they want to see updates from all of their friends as opposed to making service-centric distinctions.

Another nice touch is that once I’ve connected a service such as Facebook to Windows Live (more on that below) when I see an update from a friend in my feed, not only do I have the options of communicating with him or viewing his data on Windows Live but also communicating with him via that service as well. 

and when I click “Send a message (Facebook)” above, it actually takes me to Facebook to send Omar a message via their messaging feature.

Bi-Directional Connections to Where your Friends are

In our previous release, we had a feature called Web Activities which enabled users to share the activities they performed on other sites such as Facebook, Flickr, MySpace and others with their friends on Windows Live. A consistent bit of feedback we got was that people wanted our integration with other sites to be much deeper. They wanted to be able see what their friends where doing regardless of what network they were on and interact with their content. They also wanted to be able to share content with their friends regardless of what network they were on as well. In short, our customers wanted interoperability, not just data portability. With our current release we have obliged in spades…

When you first interact with the Messenger Social experience we ask you to connect your favorite services to Windows Live so you can see what your friends are up to all over the Web and share what you’re doing on other sites with your friends on Windows Live. If you got the prompt above when visiting http://home.live.com and clicked through to Facebook, you’d see the following options to create bidirectional data flows between Facebook and Windows Live.

As I mentioned before, this isn’t about “portability” and asking your friends to leave Facebook for Windows Live. Instead it is about allowing both sites to interoperate in a way that enables Windows Live users to stay in touch with their friends without either set of users having to switch services. Of course, Facebook isn’t the only social networking service we interoperate with in this manner as you can tell from the following screen shot


With these connections made, I not only get to see what my friends are doing across MySpace and Facebook from within Windows Live but can also broadcast my thoughts to them from within Windows Live as well.

Shortly after our features were made available yesterday I created the following status update

which caused that update to be shared to both my Messenger friends and my Facebook friends (see the handy iconography in the bottom right). You can see the results from both sites below

On Facebook On Windows Live

There’s more good stuff in the release as stuff rolls out across Windows Live and I’ll be writing more about what we’ve built in the coming weeks. Thanks for reading.

Note Now Playing: Usher - OMG (featuring Will.I.Am) Note


Categories: Social Software | Windows Live

April 29, 2010
@ 01:45 PM

Earlier this morning, Ori Amiga posted Messenger across the Web on the Inside Windows Live blog. Key excerpts from his blog post include

Earlier today, John Richards and Angus Logan took the stage at The Next Web Conference in Amsterdam where they announced Messenger Connect – a new way for partners and developers to connect with Messenger. Messenger Connect allows web, Windows and mobile app developers to create compelling social experiences on their websites and apps by providing them with social promotion and distribution via Messenger.

Messenger Connect

Messenger Connect brings the individual APIs we’ve had for a long time (Windows Live ID, Contacts API, Messenger Web Toolkit, etc.) together in a single API that's based on industry standards and specifications (OAuth WRAP, ActivityStrea.ms, PortableContacts) and adds a number of new scenarios.

The new Messenger Connect provides our developer partners with three big things:

  • Instantly create a user profile and social graph: Messenger user profile and social graph information allows our shared customers to easily sign-in and access their friends list and profile information. This allows our partners to more rapidly personalize their experiences, provides a ready-made social graph for customers to interact with, and provides a channel to easily invite additional friends to join in.
  • Drive engagement directly through chat indirectly through social distribution: By enabling both real-time instant messaging conversations (chat) and feed-based sharing options for customers on their site, developers can drive additional engagement and usage of their experiences by connecting to the over 320 million Messenger customers worldwide.
  • Designing for easy integration in your technical environment: We are delivering an API service that will expose a RESTful interface, and we’ll wrap those in a range of libraries (including JavaScript, .NET, and others). Websites and apps will be able to choose the right integration type for their specific scenario. Some websites prefer to keep everything at the presentation tier, and use JavaScript libraries when the user is present. Others may prefer to do server-side integration, so they can call the RESTful endpoints from back-end processes. We're aiming to provide the same set of capabilities across the API service and the libraries that we offer.

I’m really proud of the work that’s gone into building Messenger Connect. Although I was in some of the early discussions around it, I ducked out early to focus on the platform behind the new social view in Messenger and didn’t have much insight into the day to day of building the product. However I’ve got to say I love the way the project has turned out. I suspect a lot of web developers will as well.

Kudos to Ori and the rest of the team.

Note Now Playing: Ludacris - My Chick Bad (featuring Nicki Minaj) Note


Categories: Platforms | Windows Live

Over on the Inside Windows Live blog there’s a new post titled Preview of the new Windows Live Messenger which talks about a key part of what I’ve been working on over the past year or so. Interesting tidbits from the blog post include

Today in a speech at the Universidade de São Paulo in Brazil, Steve Ballmer is sharing a preview of the new Windows Live Messenger. In this post we want to talk more about our philosophy and approach for this new version.

Staying in touch with close friends

Most people today visit at least one social network and dozens of content sharing sites, get email with photos and social notifications, and of course, maintain accounts in numerous places with different sets of friends and content. So we focused on connecting Messenger to the social networks you already use, and prioritizing the most important updates so you can quickly see what your favorite people are doing, wherever they’re doing it.

We know your close friends share using email, IM, and social networks. So we brought all of those together into a single view. The status from your Facebook friends who don’t use Messenger? Check. The photos your mom sent you as plain old e-mail attachments? Check. The Office docs you’re collaborating on with friends in SkyDrive? Check. And the stuff your favorite Messenger friends are doing on hundreds of sites they choose to share from? Check.

And since simple “aggregation” can make things worse instead of better, we focused on prioritizing the people that matter most to you, so you don’t miss the handful of important updates from your closest friends and family just because your college and work “friends” are broadcasting their whole life every minute of the day. Just tag your favorite people, and we optimize your feed for the stuff those people are doing. Of course, it’s not 100% exclusive to your favorites – the most interesting things from your other friends like photos, videos, and links (especially the ones being commented on a lot) are there too. This makes us a great companion to the services you already love like Facebook, Flickr, MySpace, LinkedIn and more – and when you have time to go beyond those most important updates, diving deeper into those sites is just a click away.

Lastly, we recognized that we could connect your social updates to the power of the Windows PC and really bring it to life. So we took advantage of the latest advances in hardware and graphics to give you a modern social experience. This means that Messenger brings beautiful high-resolution views of the photos, videos, and links that your friends are sharing, right to your desktop. View their Facebook albums, gorgeously presented so that they're fun to browse through and easy to comment on. Messenger is also the simplest way to update your status and instantly post it to other sharing sites you use. You can even bring your photo albums right into high-definition video chats with your friends.

Here’s a picture of the new social view for Messenger:

Picture of the new social view of the main Messenger window

This is a pretty exciting day for the team and I’ll be scouring the web looking to read what people think about what we’re building. If you want to learn more about the new version of Messenger, you can visit messengerpreview.com 

Later in the year, I’ll see what I can do about writing a post on the Inside Windows Live blog about the philosophy and technology that underlies this experience. Let me know in the comments what you would like to learn more about in such a post. 

Note Now Playing: DJ Khalid - All I Do Is Win (featuring Ludacris, Snoop Dogg, Rick Ross, and T-Pain) Note


Categories: Social Software | Windows Live

David Recordon of Facebook has an interesting post titled Why f8 was good for the open web where he talks about how some of Facebook’s announcements at their recent F8 conference increase the openness of the Web. He calls out the following four items as the key benefits to the web as a whole from the F8 announcements

  1. No 24-hour caching limit
  2. An API that is realtime and isn’t just about content
  3. The Open Graph protocol
  4. OAuth 2.0

Of these, the third seems to me to be the most beneficial to the Web as a whole. The first, second and fourth items are really about benefits to Facebook developers. Although I guess you could argue that such a significant service adopting OAuth 2.0 is great for increasing adoption across the Web. However this pales in comparison to the fundamental shifts in thinking introduced by the Open Graph Protocol.

Evolving the Social Graph

The first question is what problem does the Open Graph Protocol solve for Facebook and why are they releasing it?

Figure 1: The Facebook Social Graph in 2006

The original Facebook social graph had a one type of node and edge. The nodes were users and the edges were friend relationships. The operations you could perform on the nodes are also straightforward. How many friends does Jane have? Is Kim a friend of Mary? And so on. As more features were added to the site, new nodes and edges were added to the social graph

Figure 2: The Facebook Social Graph in 2009

Each of these nodes supports similar operations. By counting the number of incoming connections you can tell how many fan's Justin Bieber has, how many people want to show the world their love for the Ramblin’ Wreck or how many people have added Mary as a friend. However as Facebook tries to model more of our offline world, it is clear that these aren’t the only types of relationships that users can have nor are these nodes the only entities users can have a relationship with. Which brings us to…

Figure 3: The Facebook Social Graph in 2011

The Open Graph Protocol is the first step in allowing Facebook users express relationships with arbitrary social objects. If you aren’t familiar with the concept of social objects, Hugh McLeod wrote a great introductory post on this concept entitled social objects for beginners which is excerpted below

The Social Object, in a nutshell, is the reason two people are talking to each other, as opposed to talking to somebody else. Human beings are social animals. We like to socialize. But if think about it, there needs to be a reason for it to happen in the first place. That reason, that “node” in the social network, is what we call the Social Object.

Example A. You and your friend, Joe like to go bowling every Tuesday. The bowling is the Social Object.

Example B. You and your friend, Lee are huge Star Wars fans. Even though you never plan to do so, you two tend to geek out about Darth Vader and X-Wing fighters every time you meet. Star Wars is the Social Object.

Example C. You’ve popped into your local bar for a drink after work. At the bar there’s some random dude, sending a text on this neat-looking cellphone you’ve never seen before. So you go up to him and ask him about the phone. The random dude just LOVES his new phone, so has no trouble with telling a stranger about his new phone for hours on end. Next thing you know, you two are hitting it off and you offer to buy him a beer. You spend the rest of the next hour geeking out about the new phone, till it’s time for you to leave and go dine with your wife. The cellphone was the social object.

Example D. You’re a horny young guy at a party, in search of a mate. You see a hot young woman across the room. You go up and introduce yourself. You do not start the conversation by saying, “Here’s a list of all the girls I’ve gone to bed with, and some recent bank statements showing you how much money I make. Would you like to go to bed with me?” No, something more subtle happens. Basically, like all single men with an agenda, you ramble on like a yutz for ten minutes, making small talk. Until she mentions the name of her favorite author, Saul Bellow. Halleluiah! As it turns out, Saul Bellow happens to be YOUR FAVORITE AUTHOR as well [No, seriously. He really is. You’re not making it up just to look good.]. Next thing you know, you two are totally enveloped in this deep and meaningful conversation about Saul Bellow. “Seize The Day”, “Herzog”, “Him With His Foot In His Mouth” and “Humbolt’s Gift”, eat your heart out. And as you two share a late-night cab back to her place, you’re thinking about how Saul Bellow is the Social Object here.

There are more examples in Hugh’s post but you get the idea. Social objects had been represented by “fan pages” in the Facebook world but with the Open Graph Protocol, it is now possible for any random website to become a part of Facebook’s social graph. This is a very powerful and liberating concept both from the perspective of what it enables Facebook’s platform to do but also because it gets rid of some ugly forms of lock-in. For example, Robert Scoble would no longer need to maintain a brand presence on Facebook at http://www.facebook.com/scobleizer that is different from his website at http://www.scobleizer.com to stay connected with fans of his blog who are Facebook users. 

Turning Web Pages into Social Objects

The process of turning a web page into a social object that Facebook can add to their social graph is very straightforward. From the Open Graph Protocol documentation we learn

To turn your web pages into graph objects, you need to add basic metadata to your page. We've based the initial version of the protocol on RDFa which means that you'll place additional <meta> tags in the <head> of your web page. The four required properties for every page are:

  • og:title - The title of your object as it should appear within the graph, e.g., "The Rock".
  • og:type - The type of your object, e.g., "movie". Depending on the type you specify, other properties may also be required.
  • og:image - An image URL which should represent your object within the graph.
  • og:url - The canonical URL of your object that will be used as its permanent ID in the graph, e.g., "http://www.imdb.com/title/tt0117500/".

As an example, the following is the Open Graph protocol markup for The Rock on IMDB:

<html xmlns:og="http://opengraphprotocol.org/schema/">
<title>The Rock (1996)</title>
<meta property="og:title" content="The Rock" />
<meta property="og:type" content="movie" />
<meta property="og:url" content="http://www.imdb.com/title/tt0117500/" />
<meta property="og:image" content="http://ia.media-imdb.com/images/rock.jpg" />

The following properties are optional for any object and are generally recommended:

  • og:description - A one to two sentence description of your object.
  • og:site_name - If your object is part of a larger web site, the name which should be displayed for the overall site. e.g., "IMDb".

For now Facebook supports a limited set of object types from the following categories; activities, businesses, groups, organizations, people, places, products & entertainment & websites. Once your page is marked up and categorized, the next step is to provide a way for users to add it to their social graph on Facebook. This is done by using adding the Facebook Like button to the page. From then onward, when a user clicks the Like button they become a fan of that page.

Not only is your page added to their profile but you can also send news feed updates to all the people who have liked your page (just like “Fan Pages” can) if you associate the Like button with your Facebook ID. Doing that provides you with an admin page where you can post news feed entries from.

The Return of the Semantic Web

One of the things I find most exciting about this development is that sites now have significant motivation to be marked up with extremely structured data which can then be consumed by other applications. Having such rich descriptive metadata will be a boon to search engines especially those from startups since some of the big guys consider their ability to extract semantics out of HTML tag soup a competitive advantage and have thus fought the semantic web for years.

In the social media space, a few people have focused on the fact that this data is put in place to enable sites to be added to Facebook’s social graph. However there is little reason why other social networking services couldn’t also read the same markup as a way to add those web sites to their social graph. For example, Yelp is one of the sites that now supports the Open Graph Protocol so when I click like the Pro Sports Club it is added to the list of “pages” I’m a fan of on Facebook. However I could just as easily see that being a [Twitter – Like] button which would add the Twitter account for the gym to my following list along with tweeting to my followers that I liked the gym. It would only take adding a markup element to what Yelp is outputting to indicate the Twitter account of the page being liked. With my Windows Live hat on, I can imagine going to Amazon or IMDB and clicking a [Windows Live – Like] button which would add the movie to my list of favorite things. There are a ton of possibilities this opens up in a totally decentralized way without forcing services or users to be locked into a particular social network.

This has been the dream Tim Berners-Lee has been pushing for years and I’m quite surprised to see Facebook being the service to take RDFa mainstream. One of the things I’m happiest about is that Facebook chose RDFa for their implementation instead of the much hyped yet weaker solution, microformats. As Evan Prodromou wrote a few years ago in his post RDFa vs. Microformats, RDFa encourages interoperable implementations between organizations and avoids naming collisions via namespacing as opposed to the microformats approach which requires a centralized committee process to add/remove elements from data formats. From my example above, adding support for indicating the Twitter account of a page that implemented the Open Graph Protocol would be as simple as adding an element namespaced to some Twitter URI. That is distributed extensibility in action.

Final Thoughts

This is a very exciting time for the Web. I suspect that this will be another Facebook platform hit that exceeds expectations. The same way no one could have predicted Zynga and Farmville when the Facebook platform first launched is the way I feel we’ll all be surprised at the sorts of things that will be powered by the Open Graph Protocol in the next year or two.

Note Now Playing: Timbaland - Say Something (featuring Drake) Note


April 19, 2010
@ 03:38 PM

There's an interesting post on ReadWriteWeb about a burgeoning technology effort supported by a number of web companies titled XAuth: The Open Web Fires a Shot Against Facebook Connect which states

A consortium of companies including Google, Yahoo, MySpace, Meebo and more announced tonight that it will launch a new system on Monday that will let website owners discover which social networks a site visitor uses and prompt them automatically to log-in and share with friends on those network. The system is called XAuth and serves to facilitate cross-site authentication (logging in) for sharing and potentially many other uses.

Facebook and Twitter, the dominant ways people share links with friends outside of email, are not participating

What XAuth Delivers

It's like Facebook Connect, but for every other social network.

The gist here is that XAuth will make it easier for sites around the web to find out what social networks you are using, let you log in to those easily, access your permitted information from those networks in order to better personalize your experience on their site and easily share their content back into your social network. It's like Facebook Connect, but for every other social network. Any website can register as an identity provider with XAuth, too.

What About OAuth?

If you're familiar with OAuth, you might be wondering what the difference is between that system of secure authentication and XAuth. Here's one way to explain it: XAuth tells a webpage "this is where the site visitor does social networking." Then, OAuth is the way the user logs in there, granting the site permission to access their info without seeing their password. In other words, XAuth tells you where to ask for OAuth from.

Google's Joseph Smarr, recently hired because of his high-profile work on distributed identity systems across the web, says that XAuth is a provisional solution to the limitations of the cookie system. If you visit ReadWriteWeb, for example, our servers aren't allowed to check the cookies left on your browser by the social networks you use because they are tied to URL domains other than ours.

The first thing that is worth pointing out is that XAuth is not like Facebook Connect. Facebook Connect enables a website to associate a user’s Facebook identity, social graph and activity stream with the site. XAuth enables a website to discover which services an end user is a member of that support associating a user’s identity, social graph and/or activity stream with third party websites.

A practical example of this is the various sharing options at the bottom of this blog post (if you’re viewing it in the browser on your desktop PC)

This is a fixed list of options that where I had to write special Javascript code to handle each service. There are a few issues with this approach. The first is that people end up seeing exhortations to share on services they don’t use which is just visual noise in that case. Another is that, each of those widgets involves a Javascript call to the domain of the service which impacts page load times. In fact, I used to have a Reddit widget but took it out because their server was too slow and noticeably impacted rendering of my blog. Finally, I tend to keep the list small because I don’t want my blog posts to suffer from the NASCAR problem so some services that may be popular with my audience audience are left out (e.g. I have no widgets for sharing on Google Buzz, Slashdot or Digg).

How the XAuth specification attempts to solve this problem is fairly straightforward. Services that want to participate include some Javascript from http://xauth.org which writes some data to the local storage (not cookie) for that domain when the user visits the social network. At that point there is now an indication on the user’s machine that they are a member of the aforementioned social network. Then when the user visits a site such as my blog, I also include the same Javascript from but this time I ask it if the user is a member of the social networks I’m interested in. Once the list of sites is returned, I then only have to render sharing widgets from the sites I support which the user is a member of.

In general, I think XAuth is a legitimate attempt to solve a valid problem. However it should be made clear what problems XAuth doesn’t solve. For one, people like me who have an account on Facebook, Twitter, Digg, Google, Windows Live, Reddit,  Delicious, etc will actually have a more cluttered experience than we do today. I know I’m always a little confused when I visit a site that uses Clickpass since I can never remember if I’ve associated that site with my Facebook, Windows Live, Yahoo! or Google account. Similarly XAuth will potentially exacerbate the problem for the subset of people who are members of lots of social media sites. Another thing to be made clear is that this isn’t a replacement for delegated authentication and authorization technologies like Facebook Connect, Twitter’s @Anywhere or OAuth WRAP. Sites will still need to support all of these technologies if they want to reach the widest audience. This is just about hiding options from users that do not matter to them.

The one thing I’d keep an eye on is that XAuth provides a token that uniquely identifies the user as part of the results returned to the requesting site instead of a simply stating the user is a member of a specified social media site. This enables the requesting site (e.g. my blog) to potentially make some API calls to the social network site for information specific to the user without asking for permission first. For example, pre-populating the user’s name and display picture in a comment box. Since Facebook has already announced such functionality I guess people don’t think it is overstepping the bounds of the user relationship to enable this feature on any website the user visits without the user explicitly granting the sites permission to their profile information. It will be interesting to see if implementations of this feature steer clear of some of the creepiness factor of Facebook’s Beacon program which led to massive outcry in its day.

Note Now Playing: Jamie Foxx - Winner (featuring Justin Timberlake & T.I.) Note


Regular readers of this blog may have noticed that accessing this blog has been flaky all weekend. I've gotten numerous reports via Twitter that my blog was displaying the following error message when being visited

Server Error in '/site1/weblog' Application.
Exception of type 'System.OutOfMemoryException' was thrown.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.]
Go1999(RegexRunner ) +0
System.Text.RegularExpressions.CompiledRegexRunner.Go() +14
System.Text.RegularExpressions.RegexRunner.Scan(Regex regex, String text, Int32 textbeg, Int32 textend, Int32 textstart, Int32 prevlen, Boolean quick) +144
System.Text.RegularExpressions.Regex.Run(Boolean quick, Int32 prevlen, String input, Int32 beginning, Int32 length, Int32 startat) +134
System.Text.RegularExpressions.Regex.Match(String input) +44
newtelligence.DasBlog.Web.Core.UrlMapperModule.HandleBeginRequest(Object sender, EventArgs evargs) +458
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +68
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75

This seems like a straightforward issue. The machine my blog is hosted on is running out of memory probably because the server is either overloaded from having too many sites hosted on it or one of the sites is badly written and is using up more than its fair share of memory. This has happened once or twice in the past and when it did I used the Live Chat feature of WebHost4Life, my hosting company, to contact a support rep who quickly moved my site to a different server. Thus when I got the first reports of this issue I thought this would be a routine support issue. I was sorely mistaken.

Earlier this year, WebHost4Life started migrating their customers to a new infrastructure with a different set of support staff. It seems this was a cost cutting measure because the new support staff seem to be a lot less technical than their previous counterparts and seem to have less access to their infrastructure. Over the weekend I chatted with about three or four different support folks over IM and opened a ticket that was closed multiple times. Here is a sampling of some of the messages that were written as part of closing the support ticket by WebHost4Life


Thank you for contacting Support.

We apologize for any inconvenience this has caused you. I have checked your website at the URL: http://www.25hoursaday.com/weblog/ and it is working fine. Could you please check it once again after clearing browser cache and cookies? If the issue persists, please get back to us with the exact error message, so that we will investigate on your issue.

Thank you!


Sharon <redacted>
Customer Support



Thank you for your reply.

I have checked your website URL: http://www.25hoursaday.com/weblog/ and I was able to duplicate the issue. I have received the error message. Hence, I have asked a member of our team who specializes in website management to review your issue. You should be hearing from this specialist within 24-48 hours. If you have any questions in the meantime, please let us know and be sure to refer to the link http://www.webhost4life.com/member/sconsole for the quickest service.

Thank you for choosing webhost4life, we appreciate your support.


Sharon <redacted>
Customer Support



I have checked the issue and and was not able to duplicate it. It seems to be issue with your ISP. Please check once again and if the issue still persists, please get back to us, tracert results of the website when you experience the issue and also the exact time and location so that we can investigate on it further.

If you have any further questions, please update the Support Console.


Aleta <redacted>
Technical Specialist



Thank you for getting back to us.

Currently, your website http://www.25hoursaday.com/weblog/ is loading without any slowness. I suggest you to check the website functionality again and get back to us, if the issue persists.

If you have any further questions, please update the Support Console.


Technical Specialist


I’m still getting reports that my blog is throwing out of memory exceptions infrequently and as you can see from the above there isn’t anything being done to fix this problem. At first I wondered if the poor support I was getting was because this happened on the weekend and perhaps the technical folks only work weekdays. Unfortunately my hopes were dashed when someone on Twitter pointed me to webhosting review site with dozens of complaints about WebHost4Life which echoed my experience. It seems the company is under new management and quality has suffered under some of their cost cutting moves.

Although I paid for a year’s worth of service, I’ve decided that I probably need to switch hosting companies. Thus I’m seeking recommendations for a web hosting company that supports ASP.NET and .NET 2.0 or higher from any of my readers. Also if anyone is familiar with the process of cancelling your service with a web host including getting refunded for services not provided, I’d love any experience or tips you have to share.


Categories: Rants