Collaborator8.2-Blog-CTA-Demo

How to Take Advantage of Semantic Search: A Guide for Developers

semantic-search-developer-guide

Semantic search is the most disruptive trend we have seen across the Web since the Web itself. But for developers it represents a unique opportunity to increase the visibility of their projects and to make significant wins for their clients.

The essence of semantic search is a transition from statistical probability matching in results on Google search to concept- or entity-matching. The semantic search approach also increases the level of accuracy in the search engine results pages (SERPs). The greatest impact, however, lies in its potential for increasing visibility of a website, game, or Web application.

Before semantic search came along, the results that appeared on Google search were determined by how closely they matched the search query that the searcher placed into search. That created two distinct limitations: First, the searcher’s skill level in using search to look for information; and second, the ability of developers to second-guess possible search terms and include them in the description of their projects.

This created a poorly matched guessing game, with searchers trying to be creative in the terms they used in the search query and developers trying to be as inclusive as possible. The end result was fewer search matches and more misses and near-misses in the connections that should have been made.

Semantic search changes all this through two concepts that are as radical as they are ambitious.

  • Language recognition. Rather than look at a search query and break it down into a search string, semantic search uses machine learning technology to learn and understand natural language the way you and I do.
  • Entity construction. An entity is a concept like, for instance, a car. A car is associated with a number of characteristics, it has specific attributes (i.e. it’s made of metal, and it has an engine, four wheels, and a steering wheel) and qualities (it can be used for transportation, comes in different sizes, can go fast, has societal value through different makes). The sum total of the attributes and qualities that describe a car also define its existence as a concept (which is what an entity is).

Using entities in search Google decouples the result quality from the skill level of the person carrying out the search. Someone looking for a car, for instance, could type into a search field the word car but also might input: auto, automobile, convertible, jeep, limousine, or van and a car page would come up. This, of course, isn’t that much of a stretch. After all search technology has been looking at synonyms and Latent Semantic Indexing since 2005. But if you type in “four-wheeled horseless carriage” you get cars in the search results, even if the search terms used appear nowhere on the pages that surface in search, as a response.

More Relevant Results

The important item here is the ability of search to surface relevant results by reading the intent behind the search query. Now, the visibility that is given to a particular page, application or game on the Web is both wider and more relevant to the end user. That’s great news for both those searching and those who need their projects to be found.

Clever as it is, however, search is not yet clever enough to do everything itself (though it actually does try).

As a developer there are some steps you can take to win on two fronts: First, help the projects you work on get the exposure they deserve; and second, raise the visibility of your own online profile ensuring that future employers can find you. Paradoxically, in a semantic web the latter helps the former. Strong personal profiles linked to a particular project help it surface more often in search so this is that rare win-win situation.

To help you do just that here’s a list,  far from exhaustive but a pretty good start:

Use Structured Data

Most of the information on the web is unstructured. This makes it difficult for Google and other search engines to index it properly, classify it and understand it. To help with this process consider applying structured data markup (such as microformats, microdata, and RFDa) on your project. Schema.org lists all the schemas you can apply that help clarify the content during the indexing process. This leads to greater visibility in search through the surfacing of a project’s content in response to more, relevant search queries. One easy example is the application of schema markup for organisation logos.

Choose the Right Language for your Projects

For most Web developers, JavaScript alongside CSS and HTML is the language of choice. However, Android apps can also be developed using Python, which Google finds easier to index. And websites and Web applications can be written using HTML5, which significantly reduces indexing barriers for information contained in multimedia format. Applications that are search-engine-friendly rank easier. Python is particularly suited to creating taxonomies in content. Taxonomies are of real use to semantic search.

Use App Indexing

Information contained in an app was, traditionally, locked away from search. This is no longer true. Google launched an app indexing service that allows data and links within an app to surface in search. This bridges two very distinct worlds: that of desktop computing with mobile devices. App indexing allows you to leverage Google search to find a new audience in a new way. Use the Google app indexing guidelines to determine how you can help your app’s content be crawled deeper.

Create a Social Footprint

Social signals matter. In a semantic Web, social media is used by semantic search to verify content and its importance and then to categorize it properly so that it can show up in search. If you have no means of sharing your project across the social web you’re missing out on a critical element of visibility. Facebook and Twitter are the absolutely minimum here, but you should also factor in Google+ and even LinkedIn. You should be on GitHub and active in Stack Overflow. Recently, Amazon, Facebook, and SalesForce admitted to using social sites to find suitable programmers.

Have a Google+ Presence

This one’s a no-brainer. Everything you do in Google+ is immediately indexed by Google search and it can help your search rankings. In addition, Google+ has a high degree of interactivity; fully integrated video apps (the Google+ Hangout feature) and full integration with YouTube to allow you to leverage your efforts across the platform in a multimedia way. Make sure you have your Google+ profile completely filled out with links leading to your business site and details.

Depending on how you want your content to appear, you may want to take advantage of Google Authorship and claim it so that the thumbnail image of you can appear in Google search (note, this feature works only with people photographs, not logos). This allows you to leverage Google search to market your services and create a recognisable personal brand. Be active in Google+ communities that cover the skills or subjects in which you’re an expert. They become the hunting ground of recruiters as well as employers looking for skilled developers for solo project deals.

This is on top of blogging. A blog is not just for businesses looking to promote their products. It is also a place where you can showcase your knowledge and expertise. Blogs let you find your voice, meet other developers, and promote your personal brand. Depending on how good you get you could even end up making money just from your blogging about code.

Generate Engagement

This is probably the largest stumbling block in semantic search marketing. Engagement requires audience participation and interaction. It means user-generated content and social buzz. All of these necessitate a clear understanding of your audience, its likes and dislikes. You need to be able to speak their language in a voice that resonates with it. Engagement is key to your content being assessed and your brand gaining authority.

To make it happen participate at LinkedIn and its developer engagement program or at Google Developers Groups where the conversation is about programming but it has a direct impact on your personal brand.

Use the Knowledge Graph

Google’s Knowledge Graph (KG) is what powers its semantic search engine and helps it provide intelligent answers. The Knowledge Graph draws information from credible, verified sources like Stack Overflow (which gets indexed by Google an incredible 10 times per second) and Wikipedia. Developers who lack a presence in one or the other are facing a harder battle to take advantage of the Knowledge Graph than those who don’t. As a developer you should look to contribute to Freebase, an authoritative source of information and an easy way to develop some clout for your digital profile.

The days when developers could work on their own, in isolation, have come to an end. Social contacts help amplify your social signal, they drive connectivity through social networks and they become an integral part of serendipitous discovery of your content in search, i.e. when it surfaces for people who may be interested in it but are not actively looking for it.

Semantic search is a break from traditional “dumb” search. It is multi-faceted, intelligent and ever scalable. It puts pressure on value in content and depth in social sharing behaviour, both of which are labour intensive and never easy to do. Work to get it right, however, and you will find that the effort required to surface your content across the right target audience and take advantage of the popularity of Google’s search actually diminishes. And that just has to be a win.

See also:

subscribe-1

About the Author:

David Amerland is the author of the best-selling Google Semantic Search. He was the keynote speaker at SMX East on Entities and semantic search and he writes for Forbes, Social Media Today, and Imassera, amongst others. He consults on social media and search strategy for large multi-nationals. He has ran workshops on social media crisis management for executives from Prague to Singapore and Shanghai. You can follow him on Twitter at @davidamerland or Google+. He can be reached through his own blog: http://davidamerland.com.

  • David Newton

    Great article. Love the bit about structured data; I completely agree.