Mezzoblue
13th Nov 2007, 06:43 am
http://www.mezzoblue.com/i/articles/2007/nov12-browser.jpg
Reason #429 why your browser detection script needs to be trashed.
On Greg's (http://airbagindustries.com/) say-so, I thought I'd check out the Starbucks card designer (http://www.starbucks.com/mycard/). Mixing up my morning coffee with creative UI design seemed like a winning combo.
After waiting a couple of seconds through an unskippable Flash intro (who still does this?!), I found the button to "Get Started".
Except rather than actually doing that, I was stopped dead in my tracks by an error message that my "Browser version does not meet minimum requirements".
I'm using Camino, which is of course functionally similar to Firefox. If they were testing for features (http://developer.apple.com/internet/webcontent/objectdetection.html) rather than parsing browser strings, I wouldn't have received this message. So even though it's entirely likely my browser of choice is capable of treating the site the same as Firefox, they've locked me out. No "I know I'm living on the edge, let me continue anyway" link in sight.
http://www.mezzoblue.com/i/articles/2007/nov12-browser-cam.jpg (http://www.mezzoblue.com/i/articles/2007/nov12-browser-cam-large.jpg)
Normally when sites do this to me, I can happily live without their service and just go somewhere else. Today I happened to have Safari loaded at the time and I was still curious, so I dumped the URL into the address bar. Another browser, another error message.
http://www.mezzoblue.com/i/articles/2007/nov12-browser-saf.jpg (http://www.mezzoblue.com/i/articles/2007/nov12-browser-saf-large.jpg)
Keep in mind that Safari was listed as a supported browser. This error message tells me I don't have cookies enabled. Except, I do. Suspecting a frame, I viewed source which revealed that the white area is pulling a page from an extrenal site into a frame that presumably runs the card creation app. (Who still does this?!)
The actual issue stems from the fact that Safari allows me to specify if I want to accept cookies with the options "Always", "Never", and "Only from sites I navigate to". The latter is clearly the only sane choice for users who stop to think about it (and for all I know, it could be Safari's default behaviour). So the framed third-party application was denied cookie access, and clearly they have no fallback position for cookies being disabled. And I was shut out once again.
Okay, so what can we learn from all this? Your browser detection script better not be testing for specific versions of specific browsers, because there are too many out there, and they'll all (finally) updating rapidly enough that your script will be out of date in months.
If you absolutely 100% cannot launch without some sort of message to users who choose a different browser than you've tested in, do not lock them out. Throw up a warning message to cover your bases. I, the crazy non-standard browser user, can take it. But let me proceed anyway. This is literally 5 seconds worth of work, what justification is there for not including a link that will let me do it?
The cookie problem is a bit more complicated to tackle, especially for a third party service provider, but we do know about server-side sessions and APIs now. There are ways around it.
Otherwise, you're just foiling your copywriter:
http://www.mezzoblue.com/i/articles/2007/nov12-supersimple.jpg
More... (http://mezzoblue.com/archives/2007/11/12/detect_this/)
Reason #429 why your browser detection script needs to be trashed.
On Greg's (http://airbagindustries.com/) say-so, I thought I'd check out the Starbucks card designer (http://www.starbucks.com/mycard/). Mixing up my morning coffee with creative UI design seemed like a winning combo.
After waiting a couple of seconds through an unskippable Flash intro (who still does this?!), I found the button to "Get Started".
Except rather than actually doing that, I was stopped dead in my tracks by an error message that my "Browser version does not meet minimum requirements".
I'm using Camino, which is of course functionally similar to Firefox. If they were testing for features (http://developer.apple.com/internet/webcontent/objectdetection.html) rather than parsing browser strings, I wouldn't have received this message. So even though it's entirely likely my browser of choice is capable of treating the site the same as Firefox, they've locked me out. No "I know I'm living on the edge, let me continue anyway" link in sight.
http://www.mezzoblue.com/i/articles/2007/nov12-browser-cam.jpg (http://www.mezzoblue.com/i/articles/2007/nov12-browser-cam-large.jpg)
Normally when sites do this to me, I can happily live without their service and just go somewhere else. Today I happened to have Safari loaded at the time and I was still curious, so I dumped the URL into the address bar. Another browser, another error message.
http://www.mezzoblue.com/i/articles/2007/nov12-browser-saf.jpg (http://www.mezzoblue.com/i/articles/2007/nov12-browser-saf-large.jpg)
Keep in mind that Safari was listed as a supported browser. This error message tells me I don't have cookies enabled. Except, I do. Suspecting a frame, I viewed source which revealed that the white area is pulling a page from an extrenal site into a frame that presumably runs the card creation app. (Who still does this?!)
The actual issue stems from the fact that Safari allows me to specify if I want to accept cookies with the options "Always", "Never", and "Only from sites I navigate to". The latter is clearly the only sane choice for users who stop to think about it (and for all I know, it could be Safari's default behaviour). So the framed third-party application was denied cookie access, and clearly they have no fallback position for cookies being disabled. And I was shut out once again.
Okay, so what can we learn from all this? Your browser detection script better not be testing for specific versions of specific browsers, because there are too many out there, and they'll all (finally) updating rapidly enough that your script will be out of date in months.
If you absolutely 100% cannot launch without some sort of message to users who choose a different browser than you've tested in, do not lock them out. Throw up a warning message to cover your bases. I, the crazy non-standard browser user, can take it. But let me proceed anyway. This is literally 5 seconds worth of work, what justification is there for not including a link that will let me do it?
The cookie problem is a bit more complicated to tackle, especially for a third party service provider, but we do know about server-side sessions and APIs now. There are ways around it.
Otherwise, you're just foiling your copywriter:
http://www.mezzoblue.com/i/articles/2007/nov12-supersimple.jpg
More... (http://mezzoblue.com/archives/2007/11/12/detect_this/)