yes, that's how it works..and then they go on to check os; which is quite pointless as it doesn't really matter since all browsers will render the same regardless of os unless you use a platform-specific RTL font(arabic-windows or hebrew-windows etc then you will need to change to mac fonts-mac-arabic, machebrew for exmaple on osx/os9) but no body really does that anymore, certainly not on facebook..all RTL languages use unicode.
even if they are utilising browser detection for statistics, then that's still no excuse.. because then you wouldn't link page rendering/display to the browser/os name. you use universal engine/features detection for page display/functionability and then if you want, you can add the browser/os strings after for your statistics data but not for rendering.
check for engine(gecko,webkit,presto,trident)> render page according to engine type> detect browser type and os for stats and gather(not related to page display)
check for supported features-js, css version etc(lesser code since basically all modern engines will use the same code:webkit,gecko or presto except for trident 3.0and below(ie6,7)
if features not supported or old engine version(very old browsers), do not cripple or display get another browser loser, only morons do that like the fucktards so called webdevs who went on a witch-hunt to kill ie6 when it's still widely used, if those users can upgrade they would have and they don't really need your recommendation you idiot, they use old pcs or company computers and updating the browser isn't an option.. what you do then, is
1- redirect to another page with as much features as possible
2- inject different js or css supported by those browsers
this is bullet-proof detection because the page will be error free at rendering and it no longer matters what's the browser ua string which can be easily changed to trick the website and cause problems. the page will be communicating directly with the browser to check exactly what it supports and what it doesn't support..the ua string will be confined to statistics data and that's exactly its job and not for rendering.
the same applies to the morons at youtube, they claim they no longer support gecko 1.8, ironically they support the latest ie8..is that a joke? since gecko 1.8 is way advanced than trident 4; even gecko 1.7 is better than trident 4 when it comes to css rendering and standards
have we seen anything on youtube that really needs gecko 1.9.x? they didn't use advanced technologies like html5 or vorbis(of course not since that will block out ie8) and even if they do use html5, the proper webdeveloping is to use html5 where it's supported and still use flash for browsers where it isn't supported. what has youtube done is a mess, instead of testing their pages for css errors and properly defining propeties like size and placement; they decided to rely on the browsers to rectify their errors..new browsers do that, they are better in interpreting bad code..older engines aren't so flexible. that doesn't mean that youtube devs have updated their website for newer engines, it just means they have gone sloppy. the only thing they have used that requires modern engines is the css shadow propety..does that really require abandoning your browser for? to display shadow effects for text?? this is what happens when you hire web devs who are high on ecstasy
now compare those sniffers with the strict rules of the bbc, the company that only hires guru devs instead of college drop-outs who were still in diapers when the www was initiated and still have skid marks in their panties
bbc only sniffs for features for display, the browser ua is detected for statistics only and not to be used to tell you you shouldn't be using this or use that..it's for their own benefit to see if a legacy browser still has enough users meaning they must support it
2.1 Scripts MUST NOT cause errors or warnings in level 1 & 2 browsers (see Browser Support Standard).
checking for errors is the first step to make sure your website is supported by browsers, not relying on the browser to correct your sloppy mistakes..now that you have done that, you are half-way through
even with js disabled, the website must be fully accessible..not"enable js to use our website" messages..morons do that, not the bbc
1.2.3. There's nothing wrong with using all the latest bells and whistles to support funky features of newer browsers, but try to do it in a way that still allows users not supporting (or intentionally disabling) these features to access your basic content.
now that's something many idiots at google, ms, yahoo, okrut ,shitface can learn from
# Some licence fee payers do not have the choice of using a popular, modern web browser.
# Some people use accessibility tools - these people benefit greatly from web pages that are standards compliant.
meaning, do not force users to upgrade or display idiotic 'recommendation' messages.. some users simply do not have that luxury
However, on reviewing the major libraries we found that none met our standards and guidelines, with browser support in particular being a major issue.
Our support standards are based on many factors including usage stats and the upgrade paths available to users. For instance, when we had a significant number of users on Safari 1.3, we refrained from asking them to upgrade to Safari 2 as that would require them to buy a new operating system (OSX 10.4).
unlike junkies working for facebook, we do not just copy and paste existing scripts.. we must write our own that accommodates our users best. we will always provide support for very old browsers and the website will be fully accessible as long as there are enough users of that browser.
it's not just the bbc who are like that, many good websites(mostly news corporations) have same guidelines and rules..it's not simply move to the latest browser, stop supporting anything that's 6 months old.. that does not mean your website has to be outdated and lacks features, it can still be fully featured and interactive using all the latest technologies but if you don't do drugs, you can always come up with ways to make those features available to older browsers or at least provide certain degree of functionability to make their experience at par with the others.
now anyone who comes buggering kmeleon devs about shitface support can understand what pathetic idiots their web developers are.
report your problems to facebook not to kmeleon bugs