App Engine, Facebook Platform, OpenSocial, and the Future of the Web

I was lucky enough to get an invite to Google’s Campfire One event where the company announced App Engine. App Engine basically allows web developers to take advantage of Google’s infrastructure to scale if they’re willing to build their app using Google’s tools. While drinking hot apple cider, Brady wrote a great post digging into a bunch of the different aspects of App Engine.


During the presentation, I tweeted, “Thinking App Engine with Google Accounts integration is a threat to both Facebook Platform and OpenSocial. Metaphor shift.” I thought a decent amount, well at least a few seconds, before I SMS’d that, since I knew it would be lacking quite a bit of context. I completely agree with Kevin Marks that App Engine looks like a great platform to host Facebook and OpenSocial apps, but that wasn’t actually my point.

Early mashups on the web took data from somewhere and combined it with an API from somewhere else in order to create new value. The resulting mashup was the same for every viewer, but that didn’t last long. Quickly came the era of mashups allowing customization of data inputs. Today tools like Yahoo! Pipes, Dapper, and Microsoft Popfly bring the ability to “mashup” to a wider audience. Want to know the largest “mashup” (in the most loving sense of the word)? Facebook Platform. Call me crazy, but hear me out.

If you discard useless sheep-throwing applications, you’re left with apps that at their core either bring data into Facebook or take data within Facebook and interact with services outside the Facebook garden. Take iLike, for example. With it you can build a rich music library, add music you like to your profile and then share that with your friends. iLike builds Facebook apps (and Hi5 apps, and OpenSocial gadgets, etc.) because iLike knows that its users have friends who don’t already use iLike. Causes is another amazing Facebook Platform application, one that makes charity giving social and integrates a payment API. At the end of the day, iLike and Causes take data from multiple places and combine it using the platforms provided by Facebook (and Hi5 in the case of iLike).

At this point you might be saying, “well, OpenSocial solves that” which it does (sort of), but I see an internet where applications are directly creating “mashups” with each other. If the evolution of a mashup went from making it easier with Popfly to making it viral with the Facebook Platform, the next evolution is removing the large social network as the container all together. One of the key components of App Engine is the ability for a site to take advantage of Google Accounts for login. Today that means that every App Engine site could have a shared sense of a user; the ability to understand who someone is across different App Engine sites and Google services. (Obviously I’d love to see Google move toward supporting OpenID for this sort of thing, but small bits piece by piece work for me.)

Imagine if Google Accounts added support for the (upcoming) OpenSocial REST APIs. All of a sudden, each of these App Engine sites could start injecting activity and querying for activity across each other. Maybe you’ll argue that this just means that Google Accounts could become the next big social network, but isn’t it a bit different when this functionality is just a part of your hosting infrastructure? What if Google Accounts ignored the notion of friends and instead left that to actual social networks? If done right, this really could be the first shipping glimpse of the distributed social web that there is to come.

I’ll be speaking more about this sort of stuff at Web 2.0 Expo on Thursday, May 24th in SF.