In the world of web development, the “IE6 Question” is a constant debate: How much effort should be invested in supporting a decade-old browser?

Jeremy Keith tackled this dilemma in his excellent 24ways article, The IE6 Equation. Different projects have different demographics. If only a tiny fraction of your audience uses Internet Explorer 6, does it justify the significant development hours required to support it? Conversely, if a pixel-perfect rendering in IE6 reveals a minor bug, is it worth fixing?

The Support Spectrum

Jeremy analyzes several strategic approaches, ranging from extreme dismissal to obsessive perfectionism:

  1. The Nuclear Option: Detect IE6 and block the user entirely.
  2. The Standards Purist: Build strictly to W3C standards; if it looks broken in IE6, so be it.
  3. The Polyfill Approach: Use JavaScript libraries (like Dean Edwards’ IE9.js) to force modern behavior into the legacy engine.
  4. The Pragmatist: Write specific CSS hacks or separate stylesheets to fix major layout breakages in IE6.
  5. The Perfectionist: Dedicate whatever time is necessary to ensure the site looks pixel-identical in IE6 compared to modern browsers.

The Formula

Working with Cennydd Bowles, Keith derived a mathematical formula to determine the return on investment (ROI) for IE6 support.

\[P = 50 \left[ \log \left( \frac{a \cdot t_6}{t \cdot a_6} \right) + 1 \right]\]

Where:

  • $t$ = Total development time
  • $t_6$ = Time spent fixing IE6 issues
  • $a$ = Total audience size
  • $a_6$ = Audience size using IE6
  • $P$ = The probability/score indicating which strategy to use.

A high $P$ value suggests you should lean towards robust support (Strategies 4 or 5), while a lower score suggests relying on automated polyfills or dropping support (Strategies 2 or 3).

The Corporate Exception

There are, of course, edge cases where math doesn’t apply. For internal enterprise applications (Intranets), the “market” might be dictated by IT policy. If the company mandates IE6 for all employees, then $a_6$ effectively equals $a$, and the developer has no choice but to ensure 100% functionality.

Industry Standards

For a broader perspective on browser support, Yahoo’s YUI team published the definitive guide on “Graded Browser Support.” It introduces the concept of “Grade A” browsers (full support) vs. “Grade C” (core content only). Every professional developer should understand this framework to manage client expectations effectively.

Moving Beyond 1997

Equations and frameworks help us justify our decisions, but they don’t solve the root problem. The software industry needs to be more aggressive in encouraging upgrades. We are nearing the end of 2008; modern implementations of AJAX and rich media simply cannot survive on browser technology from 1997.

Leave a comment