Gervase Markham wrote: > The Camino team would like to change their user agent string to add the > Firefox version number of the closest Firefox release. > https://bugzilla.mozilla.org/show_bug.cgi?id=384721 > They want to do this because a number of sites sniff for "Firefox".
s/would like to/is going to (see below) > This is somewhat controversial, because historically the Mozilla > project's line on browser sniffing has been: > > 1) Don't sniff at all > 2) If you must sniff, use object sniffing > 3) In the rare cases that doesn't work, use the Gecko version Camino's not changing the Mozilla project's view of browser sniffing. Not in any way should this be misinterpreted to mean that any Camino team member believes those ideals aren't true. > Changing Camino would be construed as giving up on that line. So it was > requested in the bug that a discussion be started. Camino is a mozilla.org project, yes, but it's also it's own project with it's own rules and it's own UA that can be changed at will (see my comments on the spec below) by the Camino team. > Some questions it might help to consider when assessing the scale of the > problem: > > - Is it OK if a site warns you that your browser has not been tested, > but allows you to continue anyway? My answer would be "hell no". There is no way it's OK. Maybe it is for you, but for end-users, this experience sucks. I think (hope) we can all agree with that. > - What about sites (e.g. banks) for which lack of support for Camino is > a deliberate policy? Until we try it, as the bug mentions, we have no way of knowing what portion of the web legitimately blocks Camino. That's what this change is: a trial. If it's a failure then we can back out the change. But my suspicion is that it won't be. > - Does it matter how serious the problem is? I.e. total site blockage > vs. lack of flyout submenus on msnbc.com? To you, maybe it matters. To a user? Definitely not. Do we care about users here or developers? If a user were to download Camino, go to msnbc.com, and see that it didn't perform as well as Firefox or Safari, they'd switch back and give up on Camino, especially if they use msnbc.com five hours a day (or some other large number). > Tracking bug for sites which sniff for "Firefox": > https://bugzilla.mozilla.org/show_bug.cgi?id=334967 > (Note: not all bugs in this list are relevant here - e.g. some correctly > exclude Camino, like rollyo.com, bug 337056) Not all of these are about Camino, no. But I think they show the greater issue... more comments below. > We have a specification for user agent strings: > http://www.mozilla.org/build/revised-user-agent-strings.html The proposal that currently exists follows the spec and I doubt any Camino team member wants to violate that spec. The proposal adds a "vendor comment" to Camino's UA. The Camino project is the vendor here, led by the module owners of Camino. (Note that other browsers *have* violated the spec. See comment 22 of bug 384721.) > Various Mozilla pages on the topic: > http://developer.mozilla.org/en/docs/Browser_Detection_and_Cross_Browser_Support > > > http://wiki.mozilla.org/User:Sardisson/Gecko_is_Gecko > > Advocacy site on the topic: > http://geckoisgecko.org/ > > Gerv The true issue above is that web developers aren't looking for Gecko. The real world isn't inline with our ideal world. It's no one person or organization's fault, but it *is* the reality we live in today. The web today looks for Internet Explorer and Firefox, with a few websites still checking for Netscape and some even being kind enough to look for other specific user-agent strings. Sure, there are many, many web developers who specifically check for a Gecko rv or even do a check for specific features that a browser supports. It's clear that a good portion of sites don't do that, however. It's easier for them to check for specific browsers they want to support. (And, I'll concede that maybe it's not easier -- I honestly don't know -- but that appears to be the perception of a majority of web developers.) Camino here has decided that in more cases than not, we're exactly the same as Firefox and should be treated as such. We won't know until we ship some builds (nightly, not releases) with our vendor comment added and see what breaks. I'm guessing that the reported bugs for this will be far less than the reported bugs for sites "not support Camino" when in reality they could. We all know this sucks. Gerv, you know it sucks. I know it sucks. David knows it sucks. The entire Camino team dislikes it. But our users are crying for it, whether they realize it or not. Is there another short-term solution? Point me to one. In the long-term, what can we do? How do we make web developers more responsible? One idea is to rethink the idea of a user-agent string. What information in a UA is actually important? If we want web developers to check based on the Gecko rv in the UA instead of the product name, why do we ship the product name in the UA at all? I can see marketing reasons (market share, etc), but are there technical ones? What if we shipped a release with only "Gecko/20070515 rv:1.8.1.4" as it's user-agent? How much of the web would break? We've seen time and time again that web developers even check what operating system you're running. Now, we all know that Firefox is (mostly) the same on all platform, but apparently they don't. (Note that the idea above would require us to either break or modify the user-agent string specification, which I fully understand.) Another idea (credit to timeless) is to ship an extension (on by default) with Firefox that changes the product name in the UA randomly. We could, for fun, change other parts of the UA, thus requiring web developers to check specifically for the part that doesn't change: the Gecko rev and information. I bet, in the above scenario, the web would break in some pretty serious ways. Would developers respond? How fast? How long did it take for them to start supporting Firefox in the first place? I can imagine the lag wouldn't be as long as previously, but I bet it'd be significant. In comment 25 of bug 384721, David says the following: > Firefox owners don't make arbitrary changes to Gecko over the > objections of Gecko module owners; I don't see why Camino should > be different. To that, I'd assert that if either of the ideas I mentioned above (or something similar) were proposed by Gecko module owners, neither would get implemented. Either one could (would?) help improve the overall web, but could also potentially hurt Firefox (again, from a marketing standpoint). If my assertion is incorrect, I'd like to be proven wrong. The reason I believe this is true is because the user-agent string is partially up to the product and not entirely up to Core. The change proposed in bug 384721 is a win for Camino's users and a loss for the web overall. It's sad, but I believe it needs to be done to improve overall user experience. -- Samuel Sidler The Camino Project _______________________________________________ dev-tech-layout mailing list [email protected] https://lists.mozilla.org/listinfo/dev-tech-layout

