I've been using Ubuntu for years with both Chrome and Firefox and I've never seen issues like Firefox getting higher connection resets. I'm happy to ask people at Google to dig into this report, but I have to say this sounds completely off base to me. Google wants Google.com to work well with with Firefox.
Right, it would make absolutely no sense for Google to try to make its services work less well on Firefox. Everybody using Google on Firefox is just as much a win for Google as everybody using Google on Chrome, the only thing that they get from their own web browser is not having to pay Mozilla to make Google the default search engine.
A long time ago, I went through a period where I was getting a lot of resets. But now, I'm just fine.
Perhaps it's just a problem with the particular machines he's connecting to? I use Firefox almost exclusively and I haven't seen any resets for ages now.
AFAIK, the chrome user agent switcher extension only changes the agent on a JS level. You can't change what is being sent to the server due to limitations in the extension API.
This explains the Adsense warning because the server-side part of the framework used (gwt) is seeing a different user agent than what the client part is seeing.
Granted, UA sniffing is bad practice on either client or server side, but if you do it and send content tailored for browser A and then see that, strangely, the client is actually browser B, then you are probably allowed to be confused and complain (better than failing in strange ways).
Also knowing that, it's unlikely that something on the server side is causing these connection reset issues because, as I just said: the server still sees a chrome user agent and producing a connection reset error (RST packet) requires connection level involvement (server or somewhere in between, but never the client browser, minus bugs).
In general: be very careful what error messages you see: the Adsense error is different from the gmail error which in turn is (likely) different from the connection reset issue.
Overall there is too much conflicting information to attribute malice or even just intent to Google here.
If I were in that users position, I'd check my firewall and/or proxy configuration (and try disabling HTTP pipelining if it's active in Firefox - it's disabled by default for a reason) as the problem is much more likely somewhere over there.
Note, however, that client-side UA sniffing could result in different requests getting sent to the server, from which subsequent wackiness might ensue...
Having used GWT in the past, the GWT error makes sense. When loading a GWT application, GWT first sniffs the user agent and locale. It then downloads a different javascript file, optimized for the given user agent and locale.
For example, the javascript file served to a French user using Firefox will contain only French labels, and won't contain any code to deal with IE, Chrome...
User agent sniffing is not always good practice, but, in this case, it results in a nice performance improvement :) You can even use it to have a "production" and a "debug" version of your app. By adding "?debug=true" to your URL, GWT would load the "debug" version, which could for example contain code to log information.
Could it be that this is an innocent mistake or a bug in the way that Google servers are sending HTTP. Chrome wouldn't be affected as it will be using SPDY for all Google services. As soon as Chrome switched back to the Firefox user agent it started using HTTP again and the same bug was found.
Besides, this just doesn't make sense. If this was an attempt to make Firefox look bad then it's a dreadful one. This just serves to make Google services look faulty as Firefox will still work for everything else. Because of this I doubt there is any malice behind this and it is just a bug.
I've been pretty consistent in my Firefox use the past few years (probably >80% of my browsing is in Firefox), and I've never encountered this. Ever. I'm doing nearly all of this from OSX, with occasional browsing from FF and IE in a Windows VM or FF in a Linux VM.
Perhaps this is more to do with a Linux string being picked up vs the Firefox aspect?
I've almost exclusively been using Linux on Firefox as my main browser for the last 5 years. I also use pretty much every Google service under the sun, and I've never seen any of these problems.
Ubuntu Firefox is Mozilla's Firefox coupled with arbitrary modifications by the Ubuntu developers. In principle I respect Ubuntu's position and desire to make things right by their users.
But in practice, having been in the same relationship as an author of Chrome for Linux I can tell you that it's always dangerous to have people who aren't browser developers make modifications to a browser. More than once the Ubuntu Chromium packager made changes to Chrome that were harmful for users because they didn't understand the consequences of their changes.
I would also suspect there could be something amiss in his ISP or network path to affected sites.
Perhaps changing the User-Agent is making a difference, but not in the way he expects. For example, his 'Firefox' User-Agent is 77 characters long, while his 'Chrome' User-Agent is 106. That might be the difference between some packets more often being a size that triggers a problem somewhere on the path. (Or, the string or size might be triggering different handling in some transparent proxy.)
It could just be connection problems/wifi playing up/whatever, badly timed to coincide with the tests. I'm not sure this is much evidence really... Google previously have been all for an open and competitive browser market (part of the reason they started Chrome), they're not Microsoft in that regard, and I doubt they have some code somewhere along the lines of "if (!chrome) redirect_to_the_pentium_ii_in_the_basement();"
Even without this bug it's a stretch to think that Google would want to bury Firefox. Google has a vested interest in Firefox's success. That's why they pay Mozilla 300 million a year.
I'm not on the side of thinking Google are doing anything malicious here, but worth pointing out that their paying Firefox money doesn't mean they wouldn't neccesarily want to see Firefox die.
They pay that money not as a charitable donation but because the deal makes them more in advertising than it costs. From a monetary point of view, of course it would be better for them if all that advertising came from Chrome, so they still make the money but they don't have to pay $300m because they already own the browser.
I never get any errors with Firefox on Windows, so this was a interesting article. I will have to try it out some more on my Linux.
However, I got loads of "Connection was reset" when trying to use the powerbase site where this article was. Server seems very very slow or something is wrong with it.
I can't even get to it. Interested to know what this is about - for the past week I haven't been able to get to pages via my ipsd2 safari search - it goes straight back to the original search listing. I switch to "classic" mode and it's all OK.
(OK, that's the cranky developer-speak for "If you can reproduce the problem while taking a packet capture I'd be glad to help troubleshoot".)
I don't work at Google or on Chromium but I can take a look at it and pass it along if it looks like something out of the ordinary. My email is in my profile.
I ran into similar problems at work where I am behind a proxy, where my connection would time out to sites like gmail, etc. I think it had something to do with cookies. When I revisited a site that timed out, but I went in incognito-mode, I was able to instantly see it.
I see similar errors very often. I use Google Chrome on OS X.
I also have a mobile broadband dongle (UK - T Mobile) which does weird and unpleasant things to the connection. (All images are proxied with poor quality versions, javascript is inserted into the page asking for key combos to improve image quality; all alt tags are re-worded, etc.)
I blame any sub-optimality on the shitty broadband from T Mobile and the weird proxies; then on overload from HN, then on errors I've made.
For the record, the article poses a simple question and makes light of the fact that the results are inconclusive. It should be taken with a grain of salt, as the author intended.
Mozilla turn a significant profit through Google referrals, last time I looked. The 'splintered' browser market masks a fairly comfortable arrangement for both companies, as well as Opera. Don't assume a conspiracy where incompetence or poor fortune provides a better explanation - chances are the Gecko-optimised version you were loading had a minor bug, or there's a problem with your system. Perhaps you encountered some A/B testing gone wrong?
[+] [-] Matt_Cutts|14 years ago|reply
[+] [-] Symmetry|14 years ago|reply
[+] [-] Natsu|14 years ago|reply
Perhaps it's just a problem with the particular machines he's connecting to? I use Firefox almost exclusively and I haven't seen any resets for ages now.
[+] [-] pilif|14 years ago|reply
This explains the Adsense warning because the server-side part of the framework used (gwt) is seeing a different user agent than what the client part is seeing.
Granted, UA sniffing is bad practice on either client or server side, but if you do it and send content tailored for browser A and then see that, strangely, the client is actually browser B, then you are probably allowed to be confused and complain (better than failing in strange ways).
Also knowing that, it's unlikely that something on the server side is causing these connection reset issues because, as I just said: the server still sees a chrome user agent and producing a connection reset error (RST packet) requires connection level involvement (server or somewhere in between, but never the client browser, minus bugs).
In general: be very careful what error messages you see: the Adsense error is different from the gmail error which in turn is (likely) different from the connection reset issue.
Overall there is too much conflicting information to attribute malice or even just intent to Google here.
If I were in that users position, I'd check my firewall and/or proxy configuration (and try disabling HTTP pipelining if it's active in Firefox - it's disabled by default for a reason) as the problem is much more likely somewhere over there.
[+] [-] simonbrown|14 years ago|reply
http://code.google.com/chrome/extensions/webRequest.html
[+] [-] rst|14 years ago|reply
[+] [-] eneveu|14 years ago|reply
For example, the javascript file served to a French user using Firefox will contain only French labels, and won't contain any code to deal with IE, Chrome...
User agent sniffing is not always good practice, but, in this case, it results in a nice performance improvement :) You can even use it to have a "production" and a "debug" version of your app. By adding "?debug=true" to your URL, GWT would load the "debug" version, which could for example contain code to log information.
https://developers.google.com/web-toolkit/doc/latest/FAQ_Deb...
[+] [-] Dylan16807|14 years ago|reply
[+] [-] unknown|14 years ago|reply
[deleted]
[+] [-] xoebus|14 years ago|reply
Besides, this just doesn't make sense. If this was an attempt to make Firefox look bad then it's a dreadful one. This just serves to make Google services look faulty as Firefox will still work for everything else. Because of this I doubt there is any malice behind this and it is just a bug.
[+] [-] padraigm|14 years ago|reply
[+] [-] mgkimsal|14 years ago|reply
Perhaps this is more to do with a Linux string being picked up vs the Firefox aspect?
[+] [-] w1ntermute|14 years ago|reply
[+] [-] icebraining|14 years ago|reply
[+] [-] udp|14 years ago|reply
[+] [-] sixothree|14 years ago|reply
[+] [-] evmar|14 years ago|reply
Ubuntu Firefox is Mozilla's Firefox coupled with arbitrary modifications by the Ubuntu developers. In principle I respect Ubuntu's position and desire to make things right by their users.
But in practice, having been in the same relationship as an author of Chrome for Linux I can tell you that it's always dangerous to have people who aren't browser developers make modifications to a browser. More than once the Ubuntu Chromium packager made changes to Chrome that were harmful for users because they didn't understand the consequences of their changes.
[+] [-] el_presidente|14 years ago|reply
[+] [-] unknown|14 years ago|reply
[deleted]
[+] [-] wasd|14 years ago|reply
[+] [-] gojomo|14 years ago|reply
Perhaps changing the User-Agent is making a difference, but not in the way he expects. For example, his 'Firefox' User-Agent is 77 characters long, while his 'Chrome' User-Agent is 106. That might be the difference between some packets more often being a size that triggers a problem somewhere on the path. (Or, the string or size might be triggering different handling in some transparent proxy.)
[+] [-] AshleysBrain|14 years ago|reply
[+] [-] derefr|14 years ago|reply
I believe that code might go something more like
> if (!SPDY-capable) redirect_to_regular_somewhat_overloaded_http_load_balancers_without_resetting_client_ttl_value();
[+] [-] deniz|14 years ago|reply
http://www.zdnet.com/blog/btl/google-paying-mozilla-300-mill...
[+] [-] corin_|14 years ago|reply
They pay that money not as a charitable donation but because the deal makes them more in advertising than it costs. From a monetary point of view, of course it would be better for them if all that advertising came from Chrome, so they still make the money but they don't have to pay $300m because they already own the browser.
[+] [-] cnbeuiwx|14 years ago|reply
However, I got loads of "Connection was reset" when trying to use the powerbase site where this article was. Server seems very very slow or something is wrong with it.
[+] [-] angry-hacker|14 years ago|reply
Off topic: the pagination with blogs/news sites articles is total nonsense...
[+] [-] chris_wot|14 years ago|reply
[+] [-] noibl|14 years ago|reply
[+] [-] gildas|14 years ago|reply
You should use UA sniffing to fix this bug.
[+] [-] driverdan|14 years ago|reply
if (document.querySelector('.title a').innerHTML.match(/^Is .*\?$/)) { console.log('Probably not.') }
(HN's markup is terrible, it doesn't use headers)
[+] [-] Aeons|14 years ago|reply
[deleted]
[+] [-] marshray|14 years ago|reply
(OK, that's the cranky developer-speak for "If you can reproduce the problem while taking a packet capture I'd be glad to help troubleshoot".)
I don't work at Google or on Chromium but I can take a look at it and pass it along if it looks like something out of the ordinary. My email is in my profile.
[+] [-] steve8918|14 years ago|reply
[+] [-] DanBC|14 years ago|reply
I also have a mobile broadband dongle (UK - T Mobile) which does weird and unpleasant things to the connection. (All images are proxied with poor quality versions, javascript is inserted into the page asking for key combos to improve image quality; all alt tags are re-worded, etc.)
I blame any sub-optimality on the shitty broadband from T Mobile and the weird proxies; then on overload from HN, then on errors I've made.
[+] [-] lordpenguin|14 years ago|reply
[+] [-] shelf|14 years ago|reply
[+] [-] mjcohenw|14 years ago|reply
[+] [-] shocks|14 years ago|reply
Works fine for me, Chrome & FF on Windows.
[+] [-] za|14 years ago|reply
[+] [-] unknown|14 years ago|reply
[deleted]
[+] [-] zobzu|14 years ago|reply
What does that mean? Well, depending on your region, ISP, and a bit of luck, you'll hit different Google servers, at different places, etc.
Some of them have different things, some of them have new updates others don't, etc.
Which may be an explanation for the author having issues (then again it's just ONE possibility).
Specially it could be that regular HTTP was failing and not SPDY for example.
Personally I haven't had that either.