Gareth Hay wrote:
> Browser vendors? - hardly, stopping rendering on error can't be that
> difficult to add to their code, can it?
Actually... it might be, in some cases. If the rules governing what's
conforming content are complicated enough, detecting a non-conforming document
during parsing might actually be much more difficult than simply parsing all
input streams in some sane way.
Hard to say where HTML falls here.
But the real harm to UAs is not due to implementation difficulty. See below.
> If I wrote a C program, it works for me, I send it to you, you run it
> and you get "Segmentation Fault", who do you blame?
This is a false analogy. A somewhat more correct analogy would be that someone
sends you a C program. Someone else sends you a C compiler. You compile the
program with the compiler you already had. It compiles and runs fine. You then
compile it with the compiler you were sent, run it, and get a segmentation fault.
Whom do you blame? The program author, or the compiler author? Does your
answer change if the second compiler gives a compile error instead of producing
an executable that crashes?
> Why is it "end user" punishment. It's the /authors/ fault.
Punishment is rarely applied to the person whose fault things really are, in
general. This case is hardly an exception. Maybe the author is the one who
_should_ be punished, but in practice the user is.
> So who are you going to blame? the browser vendor? I don't think so.
Most users would do exactly that. I know Maciej already said this, but I want
to reiterate it, because it's such a fundamental part of the way the
user-UA-author interaction works. If a site works fine in browser A and doesn't
in browser B they blame browser B. It takes a very well-informed and somewhat
technical user to realize the problem might be with the site.
Of course the site works in browser A because the site author happened to test
in that browser.
> What would happen, no-one would be able to read digg and they lose all
> their 'custom'.
Or they would all use a different browser, which could render digg.... I think
Maciej's description of the situation as unstable equilibrium is a good one.
-Boris