Keep browser lock-out a thing of the past

If you’ve been using the Web since last century you’ll remember that many, many sites back then had a nice and friendly disclaimer saying “You need [insert name of currently popular browser] to view this site. You can download it from [links to a specific browser]”. Even today some sites do this, though that behaviour is less common now than in 1999.

These days it’s much more fashionable to insult visitors by displaying messages such as “This site requires JavaScript. Please enable it in your browser.” or “You need Flash plugin version [X] to view this site.” Neither is really any better than the old-fashioned browser sniffing followed by lock-out that Dave Shea talks about in Detect This.

In The Veteran’s Charge from a couple of months ago Eric Meyer mentions that the “Best viewed in” trend seems to be regaining popularity with the release of the iPhone. Some sites are actively blocking people using other user agents from entering. I fully agree with Eric on this, but some people shrug it off and say “So what? It’s up to each site owner to decide if they want to lock people out.”

Legally that may or may not be the case, depending on where in the world you are. Regardless of what the law says, I have a problem with that attitude.

Locking out users, be it because they do not use a particular device or application to browse the Web or because they happen to have a disability, completely misses the point of the Web. The Web is meant to be universal, device-independent, inclusive, and accessible. What, exactly, is the point of deliberately preventing people from accessing your site with the user agent of their choice?

So please, even if your site uses technology that is not supported by all browsers, don’t actively prevent people using other browsers from entering. Build your website with web standards and progressive enhancement in mind instead.

This may not seem like a big deal to you if you didn’t work with the Web or use it a lot back in 1999. Likewise if you’re using Internet Explorer for Windows to browse the Web, you have probably never been the subject of browser discrimination. But for many of us who did use the Web last century, and especially for those of us who weren’t (and still aren’t) Internet Explorer or Windows users, it brings back bad memories.

Browser lock-out should be a thing of the past. Let’s keep it that way.

Posted on November 15, 2007 in Accessibility, Browsers

Comments

  1. I think even more important than these lofty ideals that you are going on about is a much more practical issue: every user you lock out is a potential customer that you’ve lost for no good reason.

  2. I’ve run across problems (primarily with IE6) that will prevent older browsers accessing certain functionality. This can be extremely frustrating when it seems you have to write a myriad of hacks just to get it working in one or two browsers.

    The best way to handle this that I’ve found is to simply supply a dumbed down version of the same functionality, whether it’s using AJAX to display content in a LightBox-type manner, or anything else.

    I suppose the best advice it to make sure everything you do degrades gracefully.

  3. I beg you differ. Today web is not only content hosting platform but also the webapps hosting platform too. And some applications do require JavaScript. It may be possible to make them function without it, but that would be as much pleasure as driving the car without tires. Will we read next, that the fact that application X does not run on OS X/Linux/Windows/Whatever is insult to the user too? I understand what you say, but I don’t agree that it is all black and white. Where is stupid browser sniffing that should not exist, and there are application requirements that may make sense.

  4. November 15, 2007 by Roger Johansson (Author comment)

    mgroves: Yes, that is another very good reason.

    Beau:

    I suppose the best advice it to make sure everything you do degrades gracefully.

    Either that or use progressive enhancement to provide the extras. The end result may be the same, but I think there is a slight difference in mindset between the two approaches. Graceful degradation is a lot better than nothing though :-).

    Rimantas:

    Today web is not only content hosting platform but also the webapps hosting platform too.

    Yes, but what I have in mind here is mainly content-driven websites, not advanced web applications trying to mimic desktop applications.

    I understand what you say, but I don’t agree that it is all black and white. Where is stupid browser sniffing that should not exist, and there are application requirements that may make sense.

    I don’t think it’s all black and white either. There are exceptions to most rules :-).

  5. Congratulations, Rimantas on using the number one lazy excuse: it’s an application.

    But if you’re serving it via HTTP, it’s also a website.

    If you want a internet-enabled app that doesn’t live in a browser, then use a frameworks like AIR. If you’re going to serve it to a browser, it’s a website (whether or not it does app-like stuff).

  6. Also, with web apps sometimes they do browser sniffing and lock out unknown user agents. There was a time there when gmail and the new version of windows live mail would repeatedly give my warnings that my browser (Opera) as not supported (Gasp) and the world would end if I attempted to access the site.

    Of course, everything worked fine; nobody had bothered to check obviously.

    In summary; browser sniffing = wrong.

  7. November 16, 2007 by Oliver

    The only browser I’ve ever considered locking out is IE[x].

    My problem is that I build rich apps. Not being evil or lazy I make sure that they’re progressively enhanced and/or gracefully degrade. I keep my eye on accessibility issues. I make sure that usability is prioritised above all else.I test rigorously in all the major browsers on all three platforms. I validate against W3C and s508…

    But I am sick to death of having to put the extra hours in to wipe IE’s *ss. All the QA above isn’t time consuming in the least if one builds according to the documented standards. No. What takes the most time is having to reverse engineer what part of HTML, CSS or JavaScript that IE can’t render adequately (especially since it throws an error on it’s own inspection toolbar) and then write a separate rule so that it can approximate some of the functionality every other browser accomplishes easily.

    Of course I never have blocked IE, but - and I’m being deadly serious here - wouldn’t we as a community be doing our users (per their experience and security) and ourselves (per our possibilities, sanity and livelihoods) a huge favour if we started?

    Just a thought.

  8. @Roger I am glad we seem to agree :)

    @John A car without tires is still a car, right? It has an engine, four wheels, etc. However, user experience is so different that I don’t want to drive one. I love Gmail, and I love it because of the user experience I get with it’s use of AJAX and JavaScript. It gives Gmail few features that make it better (for me) than desktop email applications. Without those it is just-another-webmail, and I wod’t use it.

    I don’t want “internet-enabled app” (whatever that is). I want an app, what is a) accessible from everywhere where internet connection is availabale, no matter what OS is used. If I am the one who owns and maintains that application I might like that nothing needs to be installed on client side, and that I can seamlessly upgrade the app for all at once, without any need for involvement from the users. I may also enjoy the ability to build interface using standards like HTML, CSS and JavaScript.

    The amount of JavaScript may vary from a little bit to spice things up – and everything should (or even must, if you like) degrade gracefully in case JS is not available, to the point, when JS is main ingredient, and without it UX degrades so much, that using the app does not make much sense.

    I don’t agree with the “if it uses HTTP for delivery then it is a website” at all. HTTP is a nice, proven technology that makes sense for other usage as well. Like using HTML, CSS and JS for desktop apps makes sense (Adium, OS X Dashboard widgets, even Firefox), using HTTP for delivery whatever you host on your server also makes sense be it AIR, XUL, OpenLaszlo, whatever.

    I am not OK with having .mobi TLD solely for web sites “optimized” for mobile devices, but I am OK with using web as a platform for the applications.

    IPhone brings a nice twist to the debate ;) Should http://static.popcap.com/iphone/ be considered website, because it is delivered over HTTP? It works in ordinary browser, so let’s forget it is meant for iPhone and just consider it as nice game you can play in your browser. It won’t work without JavaScript – is that because of the laziness of the developers, or because even if it possible to make a JS-free version it does not make sense?

    Youtube requires that you have not only JS support, but a Flash plugin too. Is that laziness too?

    Just like not every bug needs to be fixed not everything needs to degrade.

  9. I totally agree Roger: Browser Lock-Out is a huge ‘No’. There’s just no reasonable excuse for doing it. Yet more reason to build sites with Web Standards at the outset (as if there wasn’t enough good reasons already!)

    Oliver: Hey, plenty of designers/developers have shared that sentiment (block out IE)…but that is a bad idea while it’s still used by 75-80% of the site visitors on the Web (yeah, unfortunately!) IE is a big nuisance (I agree), but there are strong signs that it is getting better with each new version…so maybe the suffering won’t be forever.

  10. [I posted this on Dave’s site too, but I feel it works as a response here as well (edited slightly). Hopefully that’s okay with you, Roger]

    In the spirit of treating cool applications as progressive enhancements, I prefer to simply remove such content based on user abilities, instead of giving an error message (though it sounds like [Dave’s] experience and that of some of the others [his commenters] was the result of some flaw in the [Starbucks] scripting).

    It is very difficult, though, when trying to provide for all. Not everything is possible. And as Rick O. [on Dave’s blog] asked — “surely there must be a line in the sand somewhere, right?” — it is true, there has to be. It really boils down to how the application’s designer deals with these things that separates the men from the boys, so to speak.

    Locking out users is not a good method of dealing. A user shouldn’t be locked out, but rather they should just be given what they can use. I don’t like requirements up-front, nor do I like them as a result of failing at something I’m informed (or led to believe) I can do. Not to say I can’t be informed, it just needs to be done more informatively I guess. Such as seeing a subtle message on a site that I am fully enjoying with what I’m using informing me that other functionality — added cool stuff — does exists but I will need this-or-that.

  11. November 16, 2007 by mattur

    Don’t forget WaSP’s deranged Browser Upgrade Campaign, which encouraged developers to block older browsers, and serve them an instant redirect to the WaSP website instead.

  12. November 16, 2007 by Oliver

    @Matt Robin

    Yes IE has 75-80% market share. Why? Because

    1. it’s there

    2. no one encourages the adoption of another browser in that we commonly encourage the adoption of Flash by offering two versions of which the richer is flash.

    @Dave

    I’m with you in that progressive degradation is preferable to total lockout, but I’m suggesting we give notice to the visitor that certain functionality has been removed. IE’s user base don’t adopt other browsers because they don’t realise what they’re missing and don’t care for that very reason.

    We should all take steps to inform them because the bottom line is that everyone loses for as long as Microsoft don’t bring IE into line with W3C standards:

    • our users get less because we have to waste time on workarounds

    • our clients pay for work being done twice

    • the rate at which web technologies as a whole progress is slowed as we all have to figure out the workaround for basic bugs that still haven’t been fixed

  13. I completely agree. I am so sick of these “iPhone only” webpages popping up all over the web. That is not the point of the internet. Personally, I think these “iPhone” webpages are the worst thing to happen to the web since Internet Explorer.

  14. Oliver:

    “Yes IE has 75-80% market share. Why? Because

    1.it’s there”

    Yes…and? Hey, it’s not going to disappear either any time soon…so yes, you should continue coding for it.

    “2.no one encourages the adoption of another browser in that we commonly encourage the adoption of Flash by offering two versions of which the richer is flash.”

    Flash has absolutely nothing to do with IE market share.

    I agree that coding for IE is a time-consuming pain, and costly all-round…and yes, it drives every designer/developer nuts, but it just needs to be improved at Microsoft (which looks likely as based on the improvements made between IE6 and IE7, and that they are already developing IE8). I’m not defending IE, but I am advocating the use Web Standards to support the majority of Internet Users who are still using IE.

  15. Speaking of the upgrade your browswer campaign - I admit I’m a dinosaur and often just browse in IE (and why not if I only want to read a page and do little else? Whatever browser is closest to my mouse for that usually)…

    so in that I am a sinner on occasion…

    and still very occasionally I’ll run into aggressive web standards advocates who choose to lock out IE in this day and age. I find that kind of counter-intuitive. Wouldn’t the best effect (as I’ve never been there to know IF its worth upgrading to experience their content) be seen from letting me in, providing me the information and educating me on why I might do better than IE for browsing?

    Its unfortunate that this is a legacy of a bad judgement call from WaSP’s past. Maybe its the difference between standardista and fanaticista! A fanaticista is one who might not tolerate ‘lesser platforms’ regardless of market share - and often due to misguided loyalty to a cause.

    Whereas a standardista would be one who advocates best practice but accepts the universality of the web at the same time.

    just my 2 cents i guess.

  16. I use IE7, Opera9, Firefox2 and the Safari3 win beta to browse the web, mostly depending on which one I fancy using at the time, and partly as a habit to encourage me to stay up to date with these browsers, how they work and how they render stuff

    It’s not quite the same as locking me out, but I find the “your browser is rubbish, use a different one” type messages when using IE to be patronising and offensive - it assumes that “if only I knew better” I wouldn’t use IE at all.

    I know IE isn’t perfect, but it has some features which I like and sometimes I want to use it. So can all the browser fascists please cut it out…

    …rant over :-)

  17. I wish, I WISH I could give a big “FUCK YOU” to Internet Explorer users - the amount of company and personal time wasted making weird css workarounds to accomodate its completely ridiculous issues has probably got a value in the £1000s for me alone. Their ignorance costs everyone else money.

    But I don’t. Because I am better than them.

  18. The web was at least split into fewer “exclusion zones” back in 96-99, as there wasn’t that many players to “include” or “exclude”. Made life on the web easier in many ways.

    I belong to the “any browser” camp, and wouldn’t dream of knowingly or actively locking out anyone based on what type of browser they use.

    I don’t believe all that much in graceful degradation though. If a weak browser degrades the experience, than there’s a limit to how far I will go and how much time I will spend on improving it. The line has to be drawn somewhere, and I prefer to spend my energy on the stronger browsers.

    The Web is meant to be universal, device-independent, inclusive, and accessible.

    Pity so much “dependency” and “exclusiveness” are being built into the devices and UAs, and the range of incompatibilities seems to grow with every new one - adding unnecessary barriers that we either have to overcome and level somewhat, or ignore.

  19. I couldn’t agree more. No one should be locked out from browsing a website.

    If there’s something on a website that depends on one feature, then it should degrade gracefully.

    I, like many others, am constantly frustrated by having to create strange workarounds for IE6. It’s a huge drain on time when everything works perfectly well in all the other browsers out there.

    However, you have to consider those who aren’t computer savvy. They don’t really get that there is an alternative to IE and they shouldn’t be locked out for not knowing any better.

    On my personal site I decided to add a ribbon for IE users pointing them to the Firefox site. I think I might change this so that it points to a page explaining what I’m talking about.

    What do people think of using a tactic like this? Trying to show IE users that there are alternatives, and they should feel comfortable trying them out.

  20. November 16, 2007 by Stevie D

    I find it frustrating, but understandable, if a website uses a rich application that won’t work on my browser. It would be great if these apps could be tested on all platforms, but I understand why on some occasions this doesn’t happen, and I accept that running Opera I will occasionally find a website that I can’t use and have to fire up the ’Fox for.

    I find it disappointing when a website tells me that I’m using an unsupported browser, so things might not work properly - but as long as it tells me that only once and then lets me try to use the site, that’s fine.

    What is absolutely inexcusable is browser sniffing to only allow a named set of browsers. Almost invariably, these sites will work in Opera, if they can be persuaded that it isn’t Opera - the developer is just being downright lazy and arrogant in assuming that only IE and Fx matter.

    I would never deliberately make my website inaccessible to named or unnamed browsers, and I cannot for the life of me imagine why anyone would.

  21. A lot of web designers out there seem to be ignoring IE because its not their browser of choice.

    Complete madness, it might not be yours but if you are selling anything online it will be your clients.

  22. What always makes me chuckle (in a resigned, highly frustrated way), is when sites insist that I need to download the latest version of Netscape, as the latest version of Firefox or Camino just isn’t cutting edge enough.

  23. November 16, 2007 by Oliver

    @Matt Robin

    1. I know I should continue coding for IE. I do, hence my original comment. I’m putting the case that we should do something to encourage change.

    2. I know that Flash has nothing to do with IE usage. My point is that we don’t do anything do drive adoption of an uninstalled browser even though it’s standard practice to demand the uptake of an uninstalled plugin. Where’s the difference?

    @JackP

    The “your browser is rubbish” comments are neither fascism nor personal insults. Building websites is a beautiful thing made hideous by the fact that IE simply ignores or misapplies standards in a way that makes it, well… rubbish. Having to code for it costs wasted time and money. I can’t imagine what aspects of IE do it for you, but if you like it that’s great. It’s still rubbish though.

  24. @Oliver - What aspects of IE do it for me?

    Clear type in IE7.

    It’s a fantastic accessibility boon for people who might struggle to read pixellated type; I’m not aware of any other Win XP browser that offers it (but that’s not the same as saying there isn’t one); and it makes reading large batches of text more pleasant on the eye.

    But if it’s any consolation, I get frustrated with IE6’s quirky behaviour too - but IE7 is a lot better and deserves a bit more credit than it generally gets…

  25. November 19, 2007 by Stevie D

    @Oliver:

    I know that Flash has nothing to do with IE usage. My point is that we don’t do anything do drive adoption of an uninstalled browser even though it’s standard practice to demand the uptake of an uninstalled plugin. Where’s the difference?

    The difference is that it doesn’t really affect people whether they upgrade/install Flash or not.

    I browse with Opera. If a site doesn’t work with Opera and I’m really desperate to use it, I’ll Fire up the Fox. What I absolutely will not do is use IE. Telling me to install the latest version of IE (which won’t run on my Win2k machine anyway) isn’t going to make any difference - I’m not going to do it, because it is such an unpleasant experience.

    If a site requires a newer media plugin than I’ve got, I’ll probably install the plugin. It won’t affect anything else - the browser will still work just the same, I’m not being forced to do anything differently, which is why I’m usually happy to go along with it.

  26. In my personal experience it all comes down to what kind of site you are trying to build.
    For a blog, news site, or even a mail application it’s terribly wrong to lock users out of the system, but once you come down to more specific sites it generally comes to be that making javascript a must is not only reasonable, but also a wise decision to increase the user experience.

    Can you think of a Meebo without javascript? not even Youtube is fun anymore with js disabled.

  27. November 19, 2007 by c.lingo

    Political sites that lock out viewers are committing political suicide. Are they unable to understand that if they don’t want me to view them, then they don’t want my vote either.

  28. Ugh, I just found this on a BBC Food page:

    You are using an old browser version and we cannot effectively show you the Flash Movie. To play the game, please upgrade your Netscape browser here, or your Internet Explorer browser here

    I was using Safari 3.0.4 at the time. If that’s considered an old browser, then the Beeb’s web devs need a kick in the nads. I’m hoping that’s just a really old page.

  29. It’s amazing how many big companies still fail to cater for browsers other than IE, particularly considering how widespread the use of Firefox is. Their sites either don’t render/function properly or present you with ludicrous messages.

    Try accessing abbey.com with Firefox. The site is completely broken. If you want to pass view their site or use their online banking then you can only use IE6, IE7, or Netscape 7. Try logging in with Firefox and you are greeted with this message:

    Every time you log on to our online service, we check to ensure that your current browser and computer settings will give the required level of performance and security.

    The irony! It then claims that you can continue to log on with your “unsupported browser” but if you try to do this it isn’t actually possible. This is pretty disgraceful for such a major company, and they aren’t the only one.

  30. December 9, 2007 by Rick Walter

    I completely agree that building web pages targeted at a specific browser and locking out all others is a very bad thing.

    But …

    If I were an ISP and evil, I would use HTTP headers to block out old, decrepit and unwanted browsers. I would use a CGI script or ISAPI dll to check the browser string sent with the page request and send back the http status code “426 - Upgrade Required” to all old, decrepit browsers. Saves my bandwidth and cycles on my webserver. If you ain’t got IE6sp1, IE7, Firefox 2, Opera 9, or the latest versions of Safari, Jaws, WindowEyes, or whatever, you don’t see my web pages. At all.

    Told you I was evil …. ;-)

  31. 2008 and I still come across web sites with this issue. And people get PAID for half-ass work like this. Ugh

Comments are disabled for this post (read why), but if you have spotted an error or have additional info that you think should be in this post, feel free to contact me.