JEFF: When I talk to browser developers, they often ask, "Which is more
important: a perfect implementation of half the features or a quick
implementation of all the features?" How would you answer them, based on what
you've seen from the implementations to date?
ERIC: A perfect implementation of half the features - no question about it.
Of course, that answer shows how old I'm getting; instead of wanting as many
toys as possible, regardless of their incompleteness, I'm much more
interested in tools that work, even if that means having fewer tools at my
disposal.
For example, let's say I want to use "background-color" for a paragraph.
If I know that one browser supports it perfectly and another doesn't
support it at all, then I can gear my overall design to account for that
disparity. But since, in the current environment, I don't know that, I
always feel a certain trepidation when writing my stylesheets. I'm always
afraid that I'm going to trip a bug in somebody's half-baked
implementation.
Of course, this point of view completely ignores the reality of marketing
pressure, where a partial implementation of a property can be used for
bragging rights. A vendor can say, "We support 90 percent of the CSS1 spec," when
what they mean is, "Our browser will recognize calls to 90 percent of the
properties in CSS1." The fact that the browser only recognizes one or two of
the values for each of those properties, and there are bugs even in
those values, doesn't seem to matter.
And so designers get stuck with the wreckage that marketing pressure
generates. There's a Usenet group devoted to stylesheets, and it's overrun
with questions and complaints about inconsistent behavior. If vendors made
sure they got things right and followed the specification (thus creating a
certain consistency, as specifications are intended to do), then we wouldn't
have nearly so many problems. So yes, please give me fully working features,
even when that means that you have to leave some extra features until the
next version number.