How to Kill Your Website Development Project With Just Five Words

As a Developer, when I am working on a website development project, I always dread seeing a line in a requirement covering browser compatibility, especially if it is the universally popular “must work across all browsers”. You have to bite back the classic sarcastic response “So does that include Mosiac?” because the answer will be yes.  Otherwise rational people who don’t want a buggy whip holder in their Mercedes think nothing of including this line in a web requirement.  Why is it so bad?  Let’s look at some basic cause and effect:

If an agency signs off on this requirement, they are contractually obliged to do it, even if they have no earthly idea what “it” really is.  Some people pass it off with an old saw “Oh, it’s just the boilerplate, doesn’t really mean anything”.  It will mean something when somebody gets mad and reads the contract.  Those of you dear readers who are on the client side of this debate might think that this creates a beautiful opportunity to hold the agency’s feet to the fire indefinitely, and for you I have some advice from a wise old negotiator “never leave them with no way out, because you have no idea what they will do next”.  To this I add that whatever they do next, it probably won’t be polite.

It’s not technically impossible, but it’s really close.  You will certainly need a separate mobile site, forget about responsive design because those legacy browsers don’t understand the cornerstone of responsive design, the media query.  Game over.  Forget about all of the advances made in HTML5 too.  I could go on forever here, especially if we start bringing in lesser known browsers and their quirks.  Supporting all browsers is hard, and might really be impossible, I don’t know.

It’s too subjective for a specification.  Let’s just take a cursory look at the language “must work across all browsers”.  What does “work” mean in this context?  All features present and all functionality available, or can you just see the text on legacy browsers?   Everyone thinks they know what “works” means here, and no one agrees.  And what about “all” browsers?  Ever heard of Konquerer?  No? Don’t care? Actually, if you are the one who wrote “all browsers” in the requirement, apparently you do.

You can’t prove they did it.  A web company could take this requirement secure in the knowledge that you won’t obtain the services of an independent validation group, provide them with a comprehensive test plan, and then browsers or browser emulators for “all” browsers they can test with.  Which is what you’d have to do to prove the web company complied.

You don’t really have the money to do this.  No matter how much you budgeted, either you back down on your requirement, or your site never launches, or you spend scads of money doing something you might not be able to do for the reasons I detailed above.

What to do? Work with a qualified expert to define your compatibility requirements.  Make sure the major features of your new site are supported by the browsers you are requiring.  Your requirement should be a short list of the browsers you are requiring and the version you require (Example Internet Explorer Version 8 and up).  While you are at it, look at the rest of your requirements to ensure that you actually need them, and they don’t have similar cause/effect issues.  Write your requirements, don’t photocopy them from someone else’s.  The extra work is worth it.