Re: Rewording the Design Principles: Pave the Cowpaths and Don't Reinvent the Wheel

Hi, Lachy-

Having not been a fan of the vagueness of the original design 
principles, I think your wording is more clear.  Any time spent arguing 
over the meaning of the design principles is time that could have been 
better spent fulfilling them.

A couple of comments inline....

Lachlan Hunt wrote (on 8/13/2007 2:26 PM):
> 
> These are my proposed revisions to those two principles:
> 
> Don't Reinvent the Wheel
> 
>   Evaluate the success and failure of existing solutions. For those
>   that have proven reasonably successful in terms of benefits, usage
>   and implementation, consider adopting, retaining and/or improving
>   upon them in preference to dismissing and inventing new features.

"in preference to dismissing *them*"


> Pave the Cowpaths
> 
>   Investigate existing practices and design or adopt features that
>   meet the desires of authors.  Where possible, solutions should
>   leverage the existing techniques and skill sets of authors which
>   will help promote the adoption of new features.


I'd actually add a contrapunctual Design Principle to the list, to 
complement these two:

Don't Worship the Past / Hold Nothing Sacred

    Do not sacrifice desired functionality because of past solutions.
    Fairly evaluate if the solution met the needs it was designed for,
    and examine possible solutions that better meet those needs,
    especially if they also solve a larger class of problems, or are
    substantially easier to author.

And another, to address an issue that arises as a consequence of that one:

Embrace Redundancy
 
    Don't reject functionality just because it overlaps with existing
    functionality.  Doing so runs the risk of limiting extensibility
    and progress.  Let authors and users decide which of multiple
    approaches to similar functionality works best for them.


I feel the need for a measured blend of conservative and progressive 
approaches in designing the language, and the current Design Principles 
seem to concentrate on the conservative.

Regards-
-Doug Schepers
W3C Staff Contact, SVG, CDF, and WebAPI

Received on Monday, 13 August 2007 22:38:42 UTC