As a thought experiment I figured if I worked at Google how would I quantify the expense of a query parameter. Users don't really know or care what URLs look like anymore as long as the page is fast, so apart from measuring the gallons of tears generated on Hacker News, I guess resource usage would be the first logical thing to look at right?
Assuming every search is exactly like the one provided in the linked article, and using some public numbers from 2011 on searches/day, these are the top 5 parameters in terms of bandwidth used just transmitting the key and value to the server.
gs_l 42.3 Mbps
bav 11.7 Mbps
bvm 9.1 Mbps
fp 8.7 Mbps
sclient 6.1 Mbps
A general rule of thumb would be for every 20 bytes you add to URLs by way of keys or values, you've increased the overhead of almost every part of the Google infrastructure by 1 MB per second. (Note I did switch from bits to bytes in the final conversion, and this number is sourced from shaky data to start with)
Google is also responsible for all the utm_source spam in Feedburner and other tracked URLs. And they are the ones behind the #! / _escaped_fragment_ nonsense. Google's first search product worked so well mostly because it relied on standard URLs as unique pointers to web pages. It's a shame they're breaking URLs in so many ways now.
If a human ever sees an _escaped_fragment_ page...something terribly wrong has happened.
1. There isn't a redirect from that huge link.
2. The post replying to just explained a theory that doesn't involve tracking: the URL needs to be that long to be unique enough to specify a page with the exact same search results.
1. Visit https://www.google.com/search?q=hackernews
2. Mouse over first result, note the url news.ycombinator.com shown in your browser's status bar.
3. Right-click the first result and 'copy link location'
4. Check what's on your clipboard. For me it's www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&ved=0CDIQFjAA&url=http%3A%2F%2Fnews.ycombinator.com%2F&ei=fRb5UNSeD-am0AW88YGQBg&usg=AFQjCNGKJHXhsq1s0-gYR96B--m47G9oRw&bvm=bv.41248874,d.d2k
5. Visit said URL in your browser and note you get redirected to news.ycombinator.com
As you can see, you are redirected via a huge link.
1. Visit https://www.google.com/
2. type "hackernews" into the search box and hit enter.
3. look at the long url in your address bar.
The solutions that could be applied on Google side for this:
1. Perhaps they could add some button like on YouTube and other pages to share the search (be it web search, image search etc.). Of course it will clutter the UI but it's already cluttered and non-intuitive, especially given their experiments (AB testing?). Each few weeks I see something moved, changed, colors tweaked. Think what if Microsoft were doing sth like this with Windows or Office... :)
2. Use the History API to decrappify the URL after the load (it's a kind of cheat, but I would like it).
In some cases people don't need the URL in the browser, and don't need to open the actual page (or pdf document). Sometimes one need the URL itself - to send it via e-mail, copy into a command line, or anywhere else.
And in all of these cases it is a pure time waste - going to website (or starting PDF download), or cleaning up the URL, because google deceptively substituted it on a right-click. Or monkeying around with scripts that would prevent Google search from tracking clicks all-together.
And one more thing. Just like the original poster says: people hate not being able to just copy the URL. And every time somebody have to waste time cleaning it up, a little bit of hate towards Google sneaks in.
Firefox addon (useful many places):
Edit: This comment is relevant to search results, not the address bar, my bad!
Edit: See http://bartkowalski.com/2012/02/google-urls-in-safari-browse... for an example.
This seems like a bug in Safari though and not an issue with Google's URLs although I admit they are not too pretty.
An alternative to trying every link would be to try a different browser.
But since Google doesn't care, the Detox extension works nicely. Though it's always somewhat sad when you have to resort to browser extensions to work around web programmers' stupidity.
EDIT: Also, I just tried your suggestion of a different browser, and tried Google's own browser. The stupid titleless redirection URLs are still there, cluttering up your history. So that doesn't really fix it.
Get to Google via Duck Duck Go as your intermediary. Either from your search bar (if DDG is your default search engine), or directly from the DDG search page, search for
!g tells DDG to send the query to google, and you land on the google results page (not DDG), at the following URL:
Even if you prefer google to DDG, you should make DDG your default search, and get to google via !g.
!gi searches google images.
!am searches amazon.
!imdb searches imdb, etc.
It's certainly nice that DDG knows the minimum required to do a google search, and 'ddg.gg !g testing' saves ~5 keystrokes on 'googl.com/#q=testing', though you do have to wait for the redirects/form submissions.
So if I had a form on "example.com" which had an action of "/do-search", and finally, a text input with a name of "query", then the URL it will add is:
Saves you having to inspect the URL yourself to figure out the parameters.
Then you can go to the settings page nivla mentioned and make it the default search engine, so that any non-url's you enter into the omnibox are redirected to the %s in the URL above.
Scroll to the bottom and add "DDGooG" as Name, duckduckgo.com as the keyword and https://duckduckgo.com/?q=!g%20%s as the URL.
Hover over the URL and select "Make Default".
You are all set :)
You can just use https://encrypted.google.com/search?hl=en&q=%s directly :)
(pws - no personalization, hl = language)
sadly custom search engines aren't synced in chrome, so every time you set up a new browser, you need to add your custom search setting again...
Click the bookmarklet before copying the link to get the actual URL.
-The home page, after rendering the search box and all that, asynchronously downloads the css, images and html needed to display the chrome around the results listing.
-That way it is cached on the client, and when they perform a query, less data has to be downloaded from Google's servers (just the actual results & ads), making the result page render faster.
-It knows not to download all the chrome due to the presence of the 'fp' GET parameter, the absence of that parameter will cause the entire results page, including chrome, to be downloaded.
I presume the rest of the parameters are useful for similar reasons.
I couldn't get through to the main site. Fortunately someone had fetched the page over coralcdn at some earlier point. I wonder if someone wrote a proactive coralcdn bot for HN links.
Since we're on the topic of Google searches, have other people noticed that advanced searches have become quite a bit worse over the last couple of years? The basic search is often quite astounding in how it gets what you want at the top of the results, but using advanced operators often produces quite strange results.
This is even more obvious in the non-web searches, such as Google News, Google Groups, patents, and Google Books. There you can see a result, but then if you add a restriction to the search, such as date range, or "group:" or "ininventor:", it won't find any results--even the ones you just saw which match new criteria.
All the more reason to stick with DDG.