Re: Support Existing Content

Gareth Hay wrote:
> 
> On 5 May 2007, at 05:17, Jonas Sicking wrote:
> 
>> The idea is to make the error handling specified by the spec such that 
>> if you feed todays web content to a HTML5 parser, you'll get something 
>> that is close enough to what browsers to today that very few pages 
>> would break.
>>
>> One thing that I think is important to point out is this:
>>
>> I do agree that if we had draconian error handling that would 
>> eventually produce cleaner markup. Content written in languages that 
>> have draconian error handling, such as XML and C, have much fewer 
>> errors than content written in todays HTML and the HTML5 suggested by 
>> the current draft. And such content would probably work better across 
>> multiple browsers.
>>
>>
>> However, another effect of draconian error handling is that a lot 
>> fewer people are able to produce content in the language. There are 
>> much fewer people in the world that write XML and C than there are 
>> people that write HTML. One of the reasons for the success of the 
>> internet is the simplicity of producing HTML content.
>>
>> Javascript was designed with exactly this issue in mind, it should be 
>> easy to produce content for. You can also note that javascript has 
>> much less draconian error handling than C and that there are a lot 
>> more authors of javascript code than C code.
>>
> I don't think this is the case at all. As there would be fewer ways to 
> incorrectly do things, and a defined correct way, it will be /easier/ to 
> learn.

Why is it easier to learn a language that has draconian error handling 
rather than one that does not? It appears to be exactly the same to me. 
In both cases you just focus on making correct content. The only 
difference is what happens when you fail.

The one thing that I can see making a difference is that by default 
draconian error handling makes the browser tell you when you did 
something wrong. However even if we don't use draconian error handling 
it is trivial to develop an extension that gives you the exact same 
information. So authors that aren't, as you put it, lazy, would just 
install that extension and get the exact same information.

> No more learning conditional comments, no more having to remember how to 
> do things in 5 different browsers.

Again, you know we are just talking about the parsing, right? In most 
cases today where you need to do different things for different browsers 
it is because the DOM or the rendering is different. That is totally 
unaffected by how we define error handling for parsing.

> I can't agree with any statement that says Javascript is /easy/ to learn 
> and C is not. It's simply not the case, and the two are so similar that 
> the statement simply doesn't hold up.

I'm sorry, but have you actually used these two languages? They are 
vastly different. One enforces type safety, the other does not. One 
requires that you declare variables, the other does not. One does memory 
management for you, the other does not. One supports objects, the other 
does not.

The only thing that is similar between them is some of the statment 
syntax and the fact that they both use {} to declare blocks.

>> While some people would learn how to write proper HTML5 with draconian 
>> error handling, a lot of people would simply give up and we'd have 
>> much fewer people producing content for the web. And IMHO the strength 
>> of the web is not the fact that you can make flashy pages will nice 
>> CSS layout. It's that there's a lot of people producing a lot of 
>> content for it.
>>
> Although this is covering old ground /again/.
> 
> 1) New web author - well defined spec with /the/ correct way to do 
> things. Learns it as it doesn't work if s/he doesn't adhere to it.
> 2) Existing author - well defined spec available, learn it, produce good 
> pages, don't learn it, keep using html4.
> 3) Lazy author - keep using html4

I suspect the majority of web authors would fall into the third group. I 
don't want to waste my time either specifying or implementing a language 
that most people won't use.

> In any case, anyone is till free to use (and or learn) html4 and use 
> that. So in the library example, if someone writes a book in old 
> anglo-saxon english, we still accept it, and we'll loan it out if 
> someone wants it, but we prefer people to use modern day english.
> (Though I'm not a fan of this example)

But if we make modern english so hard to write that everyone chooses to 
write anglo-saxon english we haven't accomplished anything but wasted 
our own time.

> We /have/ to keep in mind the aim is communication, humans are very 
> adept at error recovery in communication, computers aren't, we can't 
> possibly program for every possible situation and how to handle errors 
> for it.

What you are suggestion is to make computers even worse at error 
recovery. How does that help communication?

/ Jonas

Received on Saturday, 5 May 2007 12:02:51 UTC