Google Instant - a developer's perspective

Yesterday Google released a major overhaul to their search engine interface. Google Instant, as it is called, brings a search-as-you-type realtime interface, delivering a page of results with each keystroke in the search box. Additionally, the auto-suggest feature has been improved to help users find what they want faster.

But this isn't just a major change to the interface billions of users know and use every day. Such a change required a major technical undertaking on Google's part, and they went into some detail during their presentation yesterday.

First of all, Ben Gomes of Google and his team illustrated how Google optimised the HTTP request flow in the AJAX search page to make the experience as smooth as possible for users. For example, Autocomplete results are the fastest operation that Google may return. Therefore, when a character is typed in the query, the Autocomplete results are returned first. Then, the Google servers take the first Autocomplete result returned and perform a search for it, later returning the results of this search to the client browser. This improves the experience by not forcing the user to wait for the search to be performed before they can get autocomplete available.

Additionally, Google's servers are capable of cancelling searches mid-query if another search request comes in while the previous one is being performed. This, coupled with numerous features that reduce the number of queries that need to be run (for example, you need not search again if the user stays within the autocomplete suggestion you are already displaying results for) have greatly reduced the search overhead that Google would have to support.

More technical information on Google's new feature is available on Matt Cutts' blog, with Don Dodge, and there is a fascinating post by Stephen Hood on how he built a feature almost identical to Google Instant at Yahoo - in 2005.

You might also like...



Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“A computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are, in short, a perfect match” - Bill Bryson