Develop for your stakeholders, not the world
When you’re designing and developing complex websites and web apps, there are a lot of decisions you must make, each one impacting your final product in some way. Not the least of these deals with the plethora of web clients currently in use today. There are significant populations of web users operating IE6 – IE10, Chrome 14 – 21, Safari 4 – 5, Opera 10 – 12, and Firefox 3.6 – 14. This still doesn’t take into account the growing use of mobile browsers on phone and tablet devices such as iOS 3 – 4, Android 1.5 – 4, or Windows Phone 7 ().
Given the growth of the different web user clients, it is increasingly difficult to decide which clients to design and build for. Three common solutions are:
- Do it all
- Thin the herd
- Loose the frills
Do it All
If your team is feeling particularly super-human, they may attempt to design a site or web application which properly handles any operating system, browser, and plugin combination thrown at it. However, this do it all approach is expensive, and I’ve yet to find organization that can maintain this strategy long-term. Anytime a new release is done, all browser / os / device combinations need to be validated. This requires extensive investments in design, development, and testing, which is not sustainable.
Thin the Herd
Instead, the next option is to thin the herd by tossing out less common configurations. This is easily done by reviewing historic visitor logs and selecting a minimum visitor threshold, say 5%, and only designing for browsers with that volume of use. This can still be a significant task for most organizations, when the scale of the site (or application ) grows. Typically, smaller sites have smaller web design and development teams. As the site grows, so too do the web design and development teams. Which means that a larger design team may not have it any easier when attempting to develop a product for every browser which meets their threshold.
Loose the Frills
Which leads us to the next step of loosing the frills and designing the site or application to the lowest design specification supported by all supported browsers. The designers would ask themselves which options are supported by all the browsers which meet their threshold. At this point the once glorious site or web application that would dazzle the masses has become a hollow shell of its imagined glory. The design is only viewable on a sub-set of browsers, due to thinning the herd, and only using the oldest and most out dated technologies, due to loosing the frills, which have yet to be phased out.
The final supported browser decisions are based on business needs which, as they should, will drive design. It may be nice to design a site or web app which works on every browser, but if your target audience is using IE exclusively then you want to design for them. These business technology trade offs need to be made in order to provide features and functionality to a target audience while keeping within cost and time constraints. Ultimately, the technology approach will be grounded in the business needs of the organization.