I’m not sure how long they’ve been doing it but I just noticed google using # in their search url instead of search?.
New way
http://www.google.com/#q=stackoverflow
Old way
http://www.google.com/search?q=stackoverflow
The pound/hash sign is generally used as an anchor to a section of a page.
Besides a shorter url what could be the benefits to Google? It seems to go against search engine convention, but then again Google sets convention. Are there any problems you can see to this approach?
UPDATE
To test for yourself use the general search box on http://www.google.com. You’ll get some other junk in the url but the portion before the q= is what I’m referencing for this question.
UPDATE 2
Looks like this may be an experimental feature they’re testing with random users as some people are being rerouted to the search? results when trying to go to the # results.
UPDATE 3
From the conversation here it appears this has been rolled out to all firefox users using the main google.com site for searching.
excerpts
4/27/09
The # in query parameters is a
separate experiment that the search
team was doing (AJAX based search
results pages) that started some time
back. It was discussed quite fervently
in the Yahoo Web Analytics discussion
group a few months ago. Random groups
of people were/are assigned to be a
part of the experiment, and that
caused all the keyword data for that
user to dissapear from every Analytics
tool. It looks like the experiment is
still going on.4/28/09 The # in query parameters
appears to have been rolled out to all
Firefox users on http://www.google.com
SERP`s, so this must have passed the
testing stage. I am speculating that
FireFox is able to handle AJAX better
that IE, thus it has not been rolled
out to IE users.5/1/09 When I dug into the SERP’s
pages it looks like Google initially
puts the websites “true” URL in the
link, but once the link is clicked the
URL is replaced with a Google redirect
URL of the form
http://www.google.com/url?q=flowers&blahblahblah.
That redirect URL is what shows up in
the HTTP referrer field and what gets
reported by the web browser (and
therefore the Analytics tools).
My google still uses the
search?prefix, however the benefit of using the hash (#) is that it does not require reloading the page. Adding a query string (?) forces the page to reload in all browsers.By using the hash they can keep an item in ‘memory’ by allowing it to persist in the browser element. Adding the hash also creates a history object for the page. This maintains forward and back functionality, while allowing them to process your search using AJAX. Basically this means they can process your search quicker by only having to fetch a subset of the HTTP headers required to load an entire page without losing functionality of a full load.