Re: Design Principles, Section 1.6.1 relationship to HTML 4.01

On May 31, 2009, at 1:11 PM, Laura Carlson wrote:

> David wrote:
>
>>> Our WG's mail archives reveal numerous examples of historic  
>>> instances where
>>> reinventing the wheel proved to be good technology policy
>
> Maciej replied:
>
>> this principle states a design preference
>
> That is one of the problems with the document. Ambiguous preferences
> masquerade as principles.
>
> The "Do not Reinvent the Wheel" principle in Maciej and Anne’s
> editor's draft currently says, “If there is already a widely used and
> implemented technology covering particular use cases, consider
> specifying that technology in preference to inventing something new
> for the same purpose. Sometimes, though, new use cases may call for a
> new approach instead of more extensions on an old approach.”
>
> Such language in principles nullifies. It is meaningless. It is not
> measurable. Does the principle ban reinventing the wheel or not? If
> yes, say so and leave it at that; if no, forget the rule.
>
> Principles that use wishy-washy rhetoric are not principles at all.
> They are judgment calls, completely subjective to the personal opinion
> of the person invoking the principle or authoring the spec.

I guess we disagree on the basics of proper principles for language  
design.

If I understand your position correctly, you're saying any rule that  
can't be stated and obeyed in 100% absolute terms is not worth writing  
down.

I disagree. Software engineering design is a world of tradeoffs. Often  
design problems involve balancing multiple competing factors. But that  
makes it important to be clear about your design goals, and then apply  
appropriate judgment. It does not mean throw out your design goals.  
And it does not mean make them absolute rules so the process can work  
without human judgment.

Regards,
Maciej

Received on Sunday, 31 May 2009 22:43:57 UTC