Facebook Graph Search: What It Means for Developers

This week, Facebook rolled out Graph Search, a new feature within the social networking site that will enable users to make new kinds of content connections based on information they’ve already input into the site as a whole.  Graph Search is not only going to change how end users utilize Facebook, but it’s also potentially a game changer for developers and the process of app development.

What is Facebook Search Graph?

Facebook is basically a massive blob of tagged entries; tagged photos of your cat, a tag designating the pizza place you checked into last weekend, tags for the roller derby you participated in with your friends from work, etc. Everything is part of a large taxonomy, a giant whirl of content. Facebook Graph Search gives users the ability to cut into that content and take out a meaningful slice.

Graph Search indexes four main types of content: people, places, photos, and interests. Users can search across these categories using verbs that also work as search modifiers: lives, likes, works; nouns, such as friends, restaurants, New York, pizza; prepositions such as before, with, or in; pronouns, such as who, him, or her. Using these modifiers, you could come up with searches like “friends who like dogs who live in Seattle”, or “photos of pizza restaurants in Cannon Beach”. Only content that is publicly viewable is available in Facebook’s Search Graph; in other words, if a user has set their settings to be private, than their information will not show up and their content will not be indexed in the internal search.

Can you share these search results? Not quite yet; we don’t do this with our regular search engine queries simply because for the most part this data doesn’t lend itself to a sharing action. But with Facebook’s Search Graph, you get results that are their own concrete, completed entity. Users are going to want to share these with friends, post them on their blogs, and other social networking sites, such as Pinterest or Tumblr. The potential for social cross- pollination is huge. However, there are potential privacy implications with sharing this content outside of Facebook; we’ll have to wait to hear more on that as the service evolves.

This huge database of likes, opinions, photos, and more is going to be used to power what is essentially a social search engine. It will give you the emotional side of search, and be better able to intuit intent than when we look up basic facts. It could eventually challenge LinkedIn for a better job search (“find friends of friends who are project managers with five years’ experience”), Yelp (“friends who like sushi restaurant in Seattle”), even Google as they move to “open graph”, i.e., the traditional Web (and that time is eventually coming, it’s inevitable).

However, Facebook Search Graph is a very different experience than the traditional Web search, which is open-ended and not based on a finite set of data points. The new search, based on what we like, only returns search results that are within the parameters that the searcher specifies, along with what’s going on in their particular node.

So how does this affect developers?

Facebook’s Search Graph can (somewhat) see the intent behind the search query, and as it matures, this will only get more sophisticated. More people than ever before in history are using the Internet, and also using mobile phones, tablets, and other multi-purpose devices, like an Ultrabook convertible, to access the Web. These device offer new avenues that open up new Web search experiences, as well as how we view the Web as a whole. It’s important to understand how these new developments will affect how we create software.

In order to dig in to how Search Graph affects developers, let’s look at the machinery. There are two parts to the Facebook search: natural language processing, which is basically an interpretation of user questions using the verbiage discussed above, and an index of all user content that comes back with an actual answer. The internal retrieval processing tool is called Unicorn, and is basically a system that is programmed to find meaningful connections between queries and content.

Again, this is not a traditional Web search; this is a whole new kind of search based on data that search engines just don’t have access to. We’re not searching for Web pages; we’re searching for tangible connections as represented by tags, likes, and other Facebook connection points.

In order for developers to make the most of Facebook’s Search Graph, they need to make sure that their apps are well optimized. When people look for apps on Facebook, they’re going to see content and pages and apps that are related to their searches – and the more optimized they are for search and connections, the better.

How does this change a developer’s strategy? Graph Search is all about who you know, and who knows you. Fans of your apps on Facebook are not just fans anymore; they are your very own personal branding and marketing engine. Just by liking your app on Facebook, they are automatically referring you in Graph Search to their friends who search for something that fits those parameters.

Since Facebook’s Search Graph results are ranked in order of engagement – you’ll see results from people you interact with the most – it’s important to engage in a meaningful way. That means you can’t just throw up a page for your app and forget it; it’s imperative to keep the signals going. Graph search is going to help get your apps found even easier, but discoverability is definitely not a passive exercise.

Here’s what the official Facebook Developer blog has to say about it:

“Apps are now more discoverable on Facebook with graph search. In addition to showing up in search results based on your app’s name, they can show up in search results based on criteria like “strategy games my friends play,” or, “apps my friends who live in San Francisco use.” To optimize your app for graph search, please make sure your app details are up to date and your app is properly categorized.”

Graph Search is great for the average user in order to find more connections, but developers will benefit as well, greatly increasing app discoverability. App developers will have to go the extra mile to make sure that the natural language processing verbiage is included in their app descriptions. Each additional like and share will also add to overall page engagement, improving the app’s visibility in graph search.

Building apps that take advantage of Facebook Search Graph

The Facebook Search Graph API has not yet been released, but according to the official Facebook documentation, it looks like that time is coming soon. This API will enable developers to tap into a whole new "pillar" of Facebook, giving another layer to the connections that are already utilized within many apps. 

Facebook Search Graph: a new opportunity for developers

The possibilities that Facebook Search Graph offers are intriguing, to say the least. The ability to access data that we have already created in intuitive ways is powerful, and app developers can take advantage of this by making their app pages more appealing to Facebook’s unique search features. In addition, developers have a golden opportunity to integrate Facebook’s new Graph Search API into their apps, creating new avenues that customers can not only interact with the app, but also with other people.

What do you think of Facebook’s search announcement? Is it a game changer? Or were you hoping for something else from the social networking giant? If you’re a developer, do you plan on using the Search Graph API in an app when it eventually comes out? Why or why not? Share with us in the comments section below.