On Sun, Jun 25, 2006 at 06:28:18PM -0400, Simetrical wrote:
On 6/25/06, Chad Perrin perrin@apotheon.com wrote:
Unnecessary repetition leads to unmaintainability, because when you need to change one thing you often end up having to run around changing it in numerous places, and sometimes people miss things.
But in this case, <poem> adds a class that styles the enclosed text as a poem. Among other things, this class includes stuff that would be useful for cooking recipes as well, but that's not all it includes. What if it turns out people decide, six months down the road, that poems should all be blockquoted? Then you could just add "left-margin: 2em;" or whatever to the CSS definition for .class, and voila, all poems are instantly blockquoted. If people have used it for hundreds of cooking recipes in the meantime, all of them are going to be screwed up, unless coincidentally people also want the cooking recipes to be indented. Users can also provide custom stylesheets, to which similar reasoning applies. And non-visual Web readers will also be screwed over.
I'm running out of steam on this discussion, so I'll probably yield the field after this, but I will say before I go:
I've already pointed out that a "does exactly what we want for thirty things, but is named for only one, necessitating the creation of twenty-nine more duplicates on the off-chance we'll change it later" approach can be avoided for ease of differentiation later by separating semantics from presentation, and merely linking the two together. Brion commented with an explanation of what's going on that sounds like it might actually be taking the approach I favored, and only the initial statements' description of what the <poem> tags do created a contrary impression. You seem to think that the behavior assumed in that contrary impression is a better way to do things, however, and somehow have chosen to avoid addressing my statements about the manner in which the same positive effects can be had without the weighty negatives.
Guh. I need a nap.