Articles

On web standards

The subject of web standards is confusing and obscure for both web professionals and industry outsiders. What does conforming to web standards means? How do web standards benefit users and developers?

Web standards are the technical and functional specifications of web related technologies. Those standards include the format of Internet addresses (URIs), protocol details (HTTP/MIME), as well as an assortment of client (ie, browser) related technologies.

This article focuses on the latter, as browser compatibility and standards-compliance of presentational markup are hotly debated and sometimes misunderstood subjects.

Conforming to standards

When developers claim their presentational markup (HTML / CSS) is standards compliant, they are referring to the standards published by the W3C.

The W3C (or World-Wide-Web Consortium), is an international community and the organizing body for web-related technology standards. Various parties, such as industry experts and browser vendors operate in groups responsible for drafting the various web standards.

Supposedly, conforming to the standards published by the W3C should result in a uniform appearance and interaction for websites across all browsers. In practice though, that is often not the case.

So what's the problem?

Most of the discussion and confusion revolves around the standards of presentational markup (the various revisions of HTML and CSS). The main problem lies in the differing implementations of markup standards by various browser vendors.

Microsoft is notoriously infamous in this respect, with its flagship browser, Internet Explorer, refusing to conform to the industry standards in many respects. Some progress has been made, with their latest offering, Internet Explorer 8, showing much improvement in this area.

Yet due the large user-base of the previous versions (which were shipped with fresh installations of Windows), developers have to account specifically to the caveats of Internet Explorer. This often requires additional markup specific to Internet Explorer only and forgoing advanced options introduced in recent versions of those markup technologies. The most grievous offender here is Internet Explorer 6, released almost 8 years ago, yet still accounts for over 10% of the browser market share (hopefully not for long, though).

It is not rare to still find websites that work correctly only in Internet Explorer. Some of those sites developed when the market share held by Internet Explorer was so large it didn't make sense supporting other browsers. Others were developed while being ignorant of web standards which were not always as prolific as today.

The importance of standards rose as the browser market shifted from a Microsoft dominated one to a more competitive environment, with offerings from Mozilla (Firefox), Apple (Safari) and Google (Chrome) gaining traction and popularity.

There are many advantages for a competitive browser market. Browser technology develops more rapidly, and standards adoption becomes more important, which are all good for the web, in theory. In practice, the differing implementation of standards between browsers results in increased development efforts (and costs) needed to provide multiple browser support making standards compliance and browser compatibility competing goals at times.

Where do we go from here?

The next big milestone for web browser technologies would be HTML5. HTML5 is the next major version of HTML, and aims to support the ongoing evolution of websites into highly interaction web-applications. Web applications have been gaining traction and popularity in recent years, with some becoming indispensable for many people (think Gmail, Facebook).

Web applications today push browser capabilities to the max (often using older technologies in unexpected ways), and HTML5 is planned to be the backbone for providing a better user experience while reducing developing efforts and improving performance.

HTML5 also converges two previously separate standards – HTML and XHTML, which is also a welcome development (thought some would disagree).

Many modern browsers already support many HTML5 features which show great promise. Not surprisingly though, Microsoft's latest offering has the least such support. Adoption of this standard and other evolving standards (such as CSS3) would depend greatly on the support it has by the major browser vendors.

As a client, should I care?

As a client, there are three major concerns in which web standards affect you:

  • Cross browser compatibility
  • Site development and maintenance costs
  • Support for advanced features

Standards compliant markup should increase cross browser compatibility (with caveats for older browsers) while decreasing development and maintenance costs as more browsers are supported out-of-the-box and newer browser versions do not break previously working functionality.

Using features that are part of the standards instead of proprietary technologies (such as flash, silverlight, applets) when possible also helps in those respects.

As in most industries, standards compliance is generally a good thing. Though web standards are not as standardized as most official standards, they still provide a strong guideline for development efforts and should be considered a must for any serious web project.