Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There is simple way to speed this up. All Google Search links point to redirection service: www.google.gr/url?example.com. It is trivial to write script which makes those links direct.


They use that to improve search quality by seeing which links people actually click on – a key signal they're not going to give up – but the good news is that there's a better way to do that and they're already using it. HTML5 added a ping attribute to the <a> tag which tells the browser to make an untracked asynchronous request to a different URL to record the click: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#...

According to the same author, that was deployed over a year ago but only to browsers which support it:

https://plus.google.com/+IlyaGrigorik/posts/fPJNzUf76Nx

Unfortunately, this was implemented in Firefox years ago but disabled due to a fear-mongering campaign by some self-styled privacy advocates who were quite vocal in sharing their misunderstanding of web privacy:

https://web.archive.org/web/20060126211610/http://weblogs.mo...

EDIT: I forgot to mention the new Beacon API, which is getting more traction because it's more powerful and is fully supported as of Firefox 31:

https://developer.mozilla.org/en-US/docs/Web/API/navigator.s...


> Unfortunately, this was implemented in Firefox years ago but disabled due to a fear-mongering campaign by some self-styled privacy advocates who were quite vocal in sharing their misunderstanding of web privacy

What 'misunderstanding'? I don't want people knowing what third party links I'm clicking on. There's no misunderstanding. I understand it perfectly. I just don't want it. I disable 3rd party HTTP referers as well (using the RefControl extension). Sure it's not the only way sites can implement this behaviour, and I'm glad an official way exists... but only so Google will use it and then I can disable it. The argument against having an off switch is basically 'well, they're going to fuck you anyway, so bend over and here's some lube'.

You say 'some self-styled privacy advocates' are fear-mongering, well its because webheads keep implementing insanely harmful features and aren't actively making the web better for the privacy concious. They (we, I guess) are grossly under-served.

The response to link tracking should be "Hmm, how can we have websites ask for this permission, and shut down all these nasty means of doing it?" not "oh boy, these people are tracking people in an ugly way, how can we make this fast?". But guess which one is actually a hard problem.

Do you suppose that most everyday users know (not suspect, but know) that Google are watching every link they click on? A technologically illiterate user base cannot consent.


> What 'misunderstanding'? I don't want people knowing what third party links I'm clicking on. There's no misunderstanding. I understand it perfectly. I just don't want it.

This is exactly what I was talking about: the misunderstanding is thinking that your outrage changes the privacy situation in any way. The options on offer are “Stop using Google” or “Let Google collect data about the search results you click on”; redirect scripts, <a ping> and Beacon are all simply implementation details for the latter option.

If you feel strongly about this contact your politicians and lobby for privacy laws restricting the data companies are allowed to collect. There's approximately zero chance that everyone will voluntarily stop measuring how well their search ranking algorithms work.


Disabling all the JS crap that modern sites layer on top of content - reduces memory and CPU usage. I paid for the memory and CPU, and I don't want several hundreds of MBs spent caching JS interpreter/optimizer data structures and analytics scripts wasting my CPU compute power - decreasing the battery life of my device.

While you may be right that the privacy angle is something that few users care about, there are real tangible benefits to disabling some of this stuff.


a) <a ping> doesn't involve JavaScript and actually saves battery power by reducing the amount of time where the network is active without being fully loaded

b) It's true that you paid for the device but Google pays for the service – the deal is that they pay for everything by showing you ads. If you disagree with that you're welcome to use or start a competitor but it's absurdly entitled to think that you have any grounds to demand that they change their business model.


a) Its true that it doesn't involve JS but not doing the ping itself would save the battery life even further.

b) Don't put words in other peoples mouths. How incredibly rude of you. I have not demanded that they change anything. My post makes no mention of any "business model".

My computer as of today allows me some control over the code that runs on the CPU and the data that gets transferred over the network. I'd like to exercise that option if and when I wish to. You're free to do whatever you want.


That's fine but not especially relevant to the GP's point. The Google redirect and <a ping> don't require JavaScript.


Ah okay, I didn't know that. I thought that Google returned direct links when you disabled JS.


Yeah, it appears that they both add and remove the direct links in JS, so with JS disabled you never see the direct link (at least, that's what I get when I disable javascript).


I think the point is that tracking already is possible, but the proposed solution was technically cleaner. So there are not new privacy problems.


There are. It means there are now N+1 instead of N things to worry about for those of us that actually do care. It signals an acceptance that this is something to be encouraged and welcomed. All behind users backs.


I think your logic is flawed - a ping would/is extremely easy to disable via a brower extension- a redirect url is not


In theory, centralizing such requests with a ping should make it much easier for a browser to disable the pings, so if anything this improves security. Of course, if Google wanted to detect the lack of clicks from a given user and fall back to redirection, they could, in which case the net benefit and harm for security would be zero.

As others have said, there is no way to prevent Google from gathering this information, so adding the capability to a browser doesn't change the situation.


I am all for privacy and am a daily user of encrypted email and encrypted chat. However, I think there are some activities that the very privacy minded need to accept that they simply cannot participate in and maintain complete privacy.

Search is one of these. In order for search to work, the user has to send a query to a third party. The third party has to be able to read the query to do the search. If that's not an acceptable loss of privacy, then don't use search.


the argument here is that the search engine should not be privy to which result you selected.


Then use a search engine which offers that functionality. You'll probably find the results are worse than Google.


so how are they supposed to improve/tune search results? that's the first metric i'd like to know.


why don't you download the internet and run grep, then you don't have to leak your search terms. Seriously - why would you want Google to know what search terms you're using? Why would anyone want to pass this information to an untrusted third party?

As for me, I think once a site has seen my exact search term, knowing which of the results I'm clicking on is a small leak and quite useful so that the popular results can be put at the top.


Coincidentally that's what I do (to some extent). I use the following offline resources:

* Wikipedia (smartphone, PC): Aard Dict[1]

* Translation apps (smartphone)

* OpenStreetMap (smartphone): OsmAnd[2]

[1]: http://aarddict.org [2]: http://osmand.net


wow, so, this is what in my mind I was caricaturing. Offline living is basically incompatible with the knowledge available on the Internet, and what you mention are super unreasonable steps for normal users to take.


super unreasonable steps for normal users to take.

Only because people have "forgotten" how to build offline apps.


no, it really is super unreasonable.


I disagree. I'm not a luddite. First, I didn't say that I use that exclusively. And furthermore:

* it's nice to have knowledge at hand when offline (commuting via train, abroad w/o a local data plan, no gsm coverage, edge connection instead of 4G)

* saves bandwidth for my 1GB/month data plan when appropriate

* Aard dict can be used to evade filtering (not my primary concern, but there are people in other countries who might benefit)


Travelers with intermittent connectivty are best served by offline databases with async/push updates.


So when I google 'suicide' it's OK for Google to know whether I'm clicking on the Samaritans or the Wikipedia article? And when I Google 'rape' it's OK for Google to know whether I click on a news article about a string of recent rapes or click through to rape fetish erotica website?

Not everything is black or white.


The main argument here is, they already know which you click on. They use referral links. So that's not a sensible reason to prohibit the "ping" attribute.

Given two solutions with equal potential for abuse, why not pick the technically superior solution?


> Given two solutions with equal potential for abuse, why not pick the technically superior solution?

Straw man. You're presupposing the existence of 'ping'. The argument is why, given an observation that web features X and Y are being used to implement contentious function Z, would you want to implement a brand new, even more insidious, web feature, designed solely for doing Z, in the first place? Technical superiority of the new implementation of Z is not in dispute.

> they already know which you click on.

I'm pretty confident that they don't in my case.


> I'm pretty confident that they don't in my case.

Would you mind sharing the details of how you achieve this?


Monitor the HTTP activity with FF developer tools while using Google. It's plain to see that no new traffic flows to Google occurs when I click a link.


AFAIK they track links only for a subset of users and not every time.


There are extensions that will rewrite the referral links back to the original link, or prevent the link from being swapped in the moment of onmousedown or whatever they use.


To your first question: YES, it's 100% okay for them to receive this query (a distinct issue from 'Google knowing').

I think in this case it's pretty black or white, because people would ordinarily take the time to add to their search queries. If people want to see results on (whatever fetish), do you think they would just Google the word 'sex' and then go from there, under cover that they might have just been looking up the Latin word for 6 they saw in some inscription? (Whoops, also better load the first 9,700,000 results pages in javascript, which is what I estimate you have to read through to get to something that mentions this without adding the word 'latin'). Wouldn't want to give away which page of results the user stopped on.

I mean if they want 'suicide help in Detroit' would they just Google the word suicide?

Not everything is black or white, but for Google to know what the BEST result is for 'suicide help in Detroit' is pretty black and white: they already have the query, and yes, they should know which link is clicked on the most. If it was originally on the second page through their algorithm but gets 90% of the clicks when they put it on the first page, yes, they should absolutely know and use this information. In fact (because it had been on the second page in this example) it might save lives!

there really is no trade-off or drawback. it's like the server in a restaurant asking you if you enjoyed your meal, and using this as part of recommendations the next someone someone asks what's popular.

"Well, you know what I ordered, but damned if I'll let you know what part of it I liked. That's just too personal."

reads to me that way anyway.


it's like the server in a restaurant asking you if you enjoyed your meal...

...and then being able to get you fired, steal your identity, or otherwise affect your life without your knowledge because you happen to enjoy a certain kind of food your boss doesn't like.


Yes, exactly. And not even 'a certain kind of food' but rather which food that you had already ordered.

The metaphor is spot-on. "Did you enjoy your meal"? "Oh so you can get me fired, steal my identity, or otherwise affect my life without my knowledge because I happen to enjoy a certain kind of food my boss doesn't like? No comment."

The reason it's a good analogy is because you already 'ordered' (the search terms are the meaningful data) and a statistical sampling of which of the top 10 results for "octopus hentai videos" a random sampling of users who entered that search term clicked on, is not in practice used for anything other than improving ranking quality.

it's exactly the same as "did you enjoy your meal" or what you liked about it - you've already given up most of the info by ordering in the first place.

so your analogy is a good one. it's just completely innocent.


...How many people out there are worried that Google might know they're into rape fetish erotica website, but don't mind Google knowing that they're searching for "rape"?


Wow. I'd love to see these treacherous "onmousedown" handlers that substitute the link on Google site gone! Especially on the RIGHT click.

Actually, I could never understand, why Google substitutes the link with the redirect on the RIGHT click. It is necessary when you LEFT click, the page looses control and it doesn't matter much for users anyway. But WHY do it on the right click? When the user RIGHT clicks the link, the user needs the ORIGINAL link! And the user IS NOT leaving the page. Google is free to record a right click. And yet, instead of just recording the right click Google mangles the link instead. WHY? Just evil/stupid? or I'm not understanding some hidden wisdom here?


Seconding this, it drives me up the wall. Little frustrations, that mount and mount when you just want to do basic things..


There was a time, a long time ago, where we don't have google link redirects in search results... drive me crazy too, specially some time it's laggy.


I've always figured that one is just an oversight. Implementing the behavior you want is an extra feature requiring extra code. The current behavior is the ordinary one, that you see in nearly every web page out there.


So, they don't care, that right-clicks vs left-clicks is actually different data? And that tracking a bit more intelligently can reduce user frustration? So basically it is not stupid/evil, it is just lazy/evil?

(And BTW, this is a compliment to Google, as I'm asking the question. Not assuming that by default, as any other big co they've just filled with bozos.)


It could be for a lot of reasons. Busy with other things, lazy- or even about things like performance. Once upon a time I remember when their home page was heavily stripped and used unterminated HTML (e.g. no </body> tag) as part of an effort to minimize bandwidth and improve latency.

I don't know why, but especially when something is following the default behavior I do not assume malice.


Unlikely performance. Google search results page is relatively heavy, with Google+/etc. And this one, is a simple change of a few lines of code. Yes, sure, it is a default behavior and I also don't assume malice (evil = lazy / stupid / don't care about users, not malice). I'm just surprised about the oversight, that they apparently don't care about having slightly better click types data and also making the user experience slightly better.

(And BTW, this is again compliment to Google, as I'm surprised. Not assuming that by default, as any other big co they've just filled with bozos.)


What about Right Click > Open in new tab?


Works, but it's annoying for the use-case of copying the URL. If they didn't do this, you could right-click "Copy Location". Now you have to open it in a new tab, select the address and copy it there, wasting bandwidth and time.


Actually, this is already handled with <a ping>, see earlier post: https://plus.google.com/+IlyaGrigorik/posts/fPJNzUf76Nx - you're right it's a big latency improvement!


I don't work at Google, but I think they do that to gather click through data for links and positions on the results page. Simply linking to the destination would prevent them from learning valuable information about the quality of their search engine and what users think is valuable.


I'm sure they do. They could probably get that data from the vast majority of users using Javascript. I assume a concurrent onclick request wouldn't slow things down noticeably.


An onclick request wouldn't be concurrent with the loading of the new page.


How about a right click? Google substitutes the link on the right-click as well. Which creates loads of frustration for users wanting to copy say a link to a research paper to an e-mail.


they do click traking on any Google product.. Just try to click in a gmail attachment.. Seriously, Why on earth do the need to track those as well?


A couple open source add-ons to do this:

Chrome: https://chrome.google.com/webstore/detail/undirect/dohbiijnj... (source: https://code.google.com/p/undirect/ )

Firefox: https://addons.mozilla.org/en-US/firefox/addon/google-no-tra... (source: http://matagus.github.io/remove-google-redirects-addon/ )

They sometimes run into issues as Google tweaks the search results page.


If you do that, and block ads, and block trackers with Ghostery, you'll get a substantial improvement in performance.


// Google Tracking-B-Gone

// version 2.2.1

// Release Date: 2014-02-28

// http://userscripts.org/scripts/upload/47300

of course userscripts.org is gone now(why?), but you can find this script on other places.


There is a Firefox plugin that does that: Clean Links.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: