[whatwg] Joe Clark's Criticisms of the WHATWG and HTML 5

Robert Brodrecht whatwg at robertdot.org
Fri Mar 23 11:26:30 PDT 2007

Nicholas Shanks said:

> Mostly unused, not even deprecated, these elements bloat the spec,
> confuse lay authors (i.e. those not of a computer science background)
> and I feel would be better represented by a custom XML vocabulary.

Your method might introduce a lot of stuff a lot of people need, but it
would remove a lot of stuff a smaller group needs.  A properly sectioned
specification could group, e.g., computer related elements together and
put them on another page, much like W3C did with "phrase elements" [1]. 
Likewise, "legal" or "newspaper" based tags could be placed in their own
section, as well.

Most lay authors don't read the specs.  It doesn't help my case, but I
read a blog once that gave spotlight to tags that most people didn't use. 
Many comments were along the lines of, "I didn't know that existed."  If
the lay authors don't know about it, it won't confuse them.

As far as bloat, I wouldn't call these tags bloat.  Something is bloat if
it is there for no reason or because it really is useless.  I strongly
believe that more tags to define more semantics would be a good thing. 
I'd love to stop misappropriating the <q> tag when I really want something
like <soCalled>. [2]

[1] http://www.w3.org/TR/html401/struct/text.html#h-9.2.1
[2] http://etext.virginia.edu/cgi-local/tei/tei.cgi?div=div3&id=COHQQ

> You completely misunderstood. I was arguing against the need for
> <var>, <samp> et al.

My apologies.

> I.E. Markup *within* code/computer terminal representation, not
> against <code> itself.
> I welcome <code> to mark up blocks of code, but I don't think HTML
> should go further than that, if you want to mark up computer code   that
> badly, use XHTML + some CodeML equivalent to MathML.

I'd love to, but one of the major browsers doesn't support XHTML. :(

> But how can you justify the presence of <kbd> when so few people   write
> content where keyboard input has to be represented?

   Enter your e-mail address (example: <kbd>joe at gmail.com</kbd>
   <input type="text" name="email">

> Why isn't <tv-show> an  element?

I just use <cite> when I reference a TV show.  Cite is another element
that I wish had more power...

> One only has to look at the examples given in the HTML5 spec to see
> how esoteric <samp> is:
> http://www.whatwg.org/specs/web-apps/current-work/#the-samp

It's used to mark computer output.  That isn't esoteric.  <samp> might not
be the best name for the tag, but it does have a specific meaning.

> I strongly agree. It's domain is also not clear enough either. Does
> morse code count? What about encoded strings?  <code
> type="rot13">uryyb eboreg</code>
> People who aren't programmers have a different understanding of the
> meaning of the word than we do. Confusing elements leads to both
> decreased and incorrect usage.

It says "computer code."  That would rule out Morse code.  I've always
looked at "computer code" to be lay-speak  for "programming languages and
the like."  It may, again, come down to the description of the tag, not
the tag itself.

> No, you missed the point again. <samp> is short for sample. Misguided
> hair care people of the future will think their product sample counts
> as a sample and use it for that.

My point was: I can sell you a hunting rifle for hunting, but I can't stop
you from using it as a walking stick.  All I can do is say, "this is
intended to be used to kill animals."  It's not the hunting rifle's fault.
 It's not my fault.  You're the one using it the wrong way.  People
misused <blockquote> to indent text, for example.

> Quite frankly most real-world/normal
> people (e.g. your greengrocer) don't care whether something is
> computer output or not, but they could very well benefit from
> <product> labelling up SKUs on their supplier's website, for example.
> We can't add elements willy-nilly without creating bloat though, and
> the dead wood has to be cropped to keep the tree healthy.

But some people (e.g. your programmer) do care if it is computer output. 
You are telling one group to go to hell while embracing another.  I don't
know why grocers are more important than programmers (and I'm certainly
not suggesting the other way around).  The problem with your
interpretation of the word "bloat" is that it is a see-saw.  We can either
1) serve one group better and another worse or 2) serve two groups poorly.
 Rather, we could serve all groups well by adding tags in a calculated
manner (not willy-nilly) so as to avoid cruft while still providing a rich
set of semantically useful elements.  Just because I like my programming
tags doesn't mean I don't like your retail tags.  We can coexist.

That said, <var> may be cruft.  I would just use <code>.  But, I think
computer input (<kbd>), computer output (<samp>), and the stuff that
processes it (<code>) are important to people who program for a living,
just as <product> would be important to someone who sells stuff for a
living.  Adding useful elements wouldn't hurt.  Removing perceived useless
elements may.

Robert <http://robertdot.org>

More information about the whatwg mailing list