On Mon, Jun 11, 2012 at 6:29 PM, Maciej Stachowiak <[email protected]> wrote:
> On Jun 7, 2012, at 1:10 PM, Adam Barth <[email protected]> wrote:
>> On Thu, Jun 7, 2012 at 1:00 PM, Ryosuke Niwa <[email protected]> wrote:
>>> On Wed, Jun 6, 2012 at 1:51 PM, Annie Sullivan <[email protected]>
>>> wrote:
>>>>
>>>> I wanted to let you know that I plan to add support for
>>>> navigator.buildType (e.g., "nightly", "beta", "final") to WebKit. This
>>>> feature isn't on the standards track (but neither are a bunch of other
>>>> similar properties on Navigator). This feature will be behind the
>>>> ENABLE(NAVIGATOR_BUILDTYPE) feature define. See:
>>>> https://bugs.webkit.org/show_bug.cgi?id=88358
>>>> http://html.spec.whatwg.org/#navigator
>>>
>>> What is the rationale for adding this property on the navigator object
>>> instead of the chrome object we also expose if your'e not expecting this
>>> property to be ever standarized?
>>
>> Generally, we avoid implementing web visible features via the "chrome"
>> object because that makes them Chrome-proprietary.  In this case, it
>> seems entirely reasonable for other browsers (e.g., Firefox) to want
>> to implement this feature.  By putting it on navigator, we invite them
>> to implement it as well.
>
> This thread seems mostly over, but taking the opportunity to make a broader 
> point:
>
> If we want to invite other browsers to implement a feature, then we should 
> propose it to the relevant standards group (and prefix it or just don't add 
> it if it seems likely to be rejected). Just implementing unprefixed, without 
> discussing with a relevant standards group first, is not the best approach. 
> It can needlessly damage our relations with other implementors and the 
> relevant standards groups themselves. While browser implementors in general, 
> and the WebKit project in particular, have not always done a great job of 
> this, this, we've been trying to do this more consistently since we adopted a 
> process for reviewing feature additions. [1]  We may even want to update that 
> policy page to mention that you'll very likely be asked, "is this on the 
> standards track?" and if the answer is "no" you need a particularly 
> compelling reason.

The approach we try to use in the Chromium project is somewhat
documented at 
<http://dev.chromium.org/developers/how-tos/make-a-web-standards-proposal>.
 That approach seems to work pretty well for moderate and large
features.  We've had some trouble with tiny features because the
overhead seems a bit too large.  (I'd classify navigator.buildType as
a "tiny" feature.)

There's somewhat of a chicken-and-egg problem between implementation
and standardization.  You don't really want either process to get too
far ahead of the other.  One intermediate step that I've found useful
(and I recommended in the how-to) is to write up a
"proto-specification" like
<http://wiki.whatwg.org/wiki/AllowSeamless>.  That gives folks
something concrete to read and think about without getting stalled on
the politics around a FPWD for a new working group.

Adam
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

Reply via email to