W3C home > Mailing lists > Public > public-webapps@w3.org > January to March 2014

Re: [File System APIs] If one is good, then two must be better?

From: Ian Clelland <iclelland@google.com>
Date: Wed, 5 Feb 2014 11:12:17 -0500
Message-ID: <CAK_TSX+NxxUFk38AnywUx9nxTDXKw-Cf_WqPP0aCWqqx-om1ww@mail.gmail.com>
To: Charles McCathie Nevile <chaals@yandex-team.ru>
Cc: Arun Ranganathan <arun@mozilla.com>, Arthur Barstow <art.barstow@nokia.com>, public-webapps <public-webapps@w3.org>, Eric Uhrhane <ericu@google.com>, Jonas Sicking <jonas@sicking.cc>
The great thing about Cordova is that it doesn't have to be a single
platform -- every developer has the power to choose the APIs that they want
to use, and every published app is essentially running on its own custom
web platform.

I wasn't presenting the Cordova data point as "we're doing this already,
and it's going to be too much work to change now". Far from it; Cordova is
a flexible platform, and someone could write a plugin providing the
Mozilla-backed Filesystem API tomorrow, and it wouldn't cause any hardship
to developers who didn't choose to adopt it.

The point is exactly as Chaals has represented -- this just means that the
API is available in the wild, and being used by working Javascript
developers to access files right now. It's showing developer mindshare
momentum, rather than browser implementation inertia :)

Ian


On Wed, Feb 5, 2014 at 7:03 AM, Charles McCathie Nevile <
chaals@yandex-team.ru> wrote:

> On Tue, 04 Feb 2014 20:48:30 +0400, Arun Ranganathan <arun@mozilla.com>
> wrote:
>
>
>  On Feb 4, 2014, at 6:15 AM, Charles McCathie Nevile wrote:
>>
>>  On Mon, 03 Feb 2014 19:09:53 +0400, Arthur Barstow <
>>> art.barstow@nokia.com> wrote:
>>>
>>>  On 1/31/14 10:44 AM, ext Ian Clelland wrote:
>>>>
>>>>> Hi Art,
>>>>>
>>>>> For what it's worth, theFile API: Directories and System is also
>>>>> implemented (and supported) by Apache Cordova[1]. The implementation is
>>>>> essentially complete for mobile applications on Android, iOS and FireOS,
>>>>> with nearly-complete support on Blackberry and Windows Phone.
>>>>>
>>>>> While our plugin registry was counting downloads, it was the
>>>>> most-downloaded plugin for the platform by a wide margin, so I believe it
>>>>> is being used actively.
>>>>>
>>>>
>>>> Thanks for this information Ian!
>>>>
>>>>  I don't know if Cordova should count as a browser implementation for
>>>>> the purposes of this WG, but we are implementing the APIs and making them
>>>>> available to (hybrid) web application developers.
>>>>>
>>>>
>>>> The group has some flexibility regarding the specifics of the
>>>> interoperability criteria used to advance a spec along the Recommendation
>>>> track, but we haven't talked about the criteria for these specs since they
>>>> are still working drafts.
>>>>
>>>
>>> And the particular question here isn't about CR criteria, but about
>>> whether one or other approach is more likely to achieve the consensus of
>>> interoperable implementation.
>>>
>>> Which essentially means whether implementations are likely to switch, or
>>> credible future implementors have a strong preference for one over the
>>> other.
>>>
>>> In which case, what Cordova does (and more to the point what developers
>>> do with it) seems relevant information to consider as we try to find a
>>> consensus.
>>>
>>
>> Two interoperable implementations of a specification should determine the
>> way forward.
>>
>
> In this case we have multiple ways forward, and the fact that any of them
> have two implementations is an important but not sufficient indicator that
> they therefore have industry consensus as "the" way forward.
>
> For historical comparison, there were three at least reasonably
> interoperable independent browser implementations of WebSQL, when there
> were no real implementations of IndexedDB.
>
> There was one browser objecting to dropping WebSQL for IDB, 2 who said
> they would not implement it, and 4 (including 2 of the 3 webSQL
> implementors) saying they *would* implement IDB. We thus made the decision
> to focus on IDB. For any faults that it may have, it appears to have
> become the standard, which makes me suspect that focusing on it was the
> correct decision at the time.
>
> Similarly the issue here is not whether we can make a specification for
> one or the other approach that *could* be a standard, since it seems we
> can, but whether one or the other is a clear candidate to be a real
> standard - i.e. what people *will* actually do...
>
> I think one of the mistakes with IndexedDB (and appcache for that matter)
> was that the participants in the discussion were too heavily biased toward
> browser implementors, without enough input or involvement from "working
> developers". Which meant that we standardised something that didn't meet
> people's expectations as well as we and they hoped.
>
> I hope that when we make a choice it's one that not only matches the
> reality of what gets implemented, but helps us provide what the market
> really wants. I presume everyone here hopes for that. I think a key part
> of how to get there is to listen carefully to the feedback we get, and
> look around at what people are doing, rather than just relying on
> formulaic rules of thumb or bureaucratic tallying of test results.
>
> cheers
>
> Chaals
>
>
>  While I think distributions like PhoneGap are extremely useful as
>> "web-like abstractions" on top of disparate mobile platforms, it is not
>> straightforward to make a clear "apples to apples" comparision for API
>> interoperability between PhoneGap and a web browser, or conduct common test
>> cases. Naturally, the distinctions blur, but I still think they exist.
>>
>> A web page using the FileSystem API in JavaScript and working in two
>> separate browser implementations seems like a good measure of
>> interoperability, and I think this should be what helps us make a
>> determination.
>>
>> -- A*
>>
>
>
> --
> Charles McCathie Nevile - Consultant (web standards) CTO Office, Yandex
>         chaals@yandex-team.ru         Find more at http://yandex.com
>
Received on Wednesday, 5 February 2014 16:13:04 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 18:14:21 UTC