W3C home > Mailing lists > Public > public-webapps@w3.org > October to December 2012

Re: Two years on and still no sensible web storage solutions exist

From: Charles McCathie Nevile <chaals@yandex-team.ru>
Date: Mon, 12 Nov 2012 13:12:59 +0100
To: Florian Bösch <pyalot@gmail.com>, "Andrew Wilson" <atwilson@google.com>
Cc: "Todd Blanchard" <toddvblanchard@gmail.com>, "Webapps WG" <public-webapps@w3.org>
Message-ID: <op.wnntjxmxy3oazb@chaals.local>
On Mon, 12 Nov 2012 10:14:47 +0100, Andrew Wilson <atwilson@google.com>  
wrote:

> My recollection is that some vendors refused to ever support SQLite,  
> making a SQL-based standard not really feasible. You can undoubtedly  
> review >the w3c archives to find out more details if you want to know  
> the rationale they expressed at the time.

Right. You'll find a lot of the discussion took place at the TPAC meeting  
in November 2008 and again in 2010.

Note that when implementors say "never", you can be pretty sure it means  
"at least not for a while, then we might re-evaluate".

> It's unfortunate that IndexedDB is still not widely supported by  
> browsers - I share your frustration.

Likewise. It is unfortunate that the industry has not managed to agree on  
any widely-supported standard for offline data storage beyond key-value  
pairs.

> However, as you say, you can write to the IndexedDB APIs, and use a shim  
> to get support on platforms that do not support it yet.
>
> -atw
>
>
> On Mon, Nov 12, 2012 at 9:50 AM, Florian Bösch <pyalot@gmail.com> wrote:
>> I'd like to propose as a constructive strategy not to flame/offend  
>> everybody right off the bat.

As co-chair of the working group I'd like to point out that flaming is  
generally considered an unacceptable way to communicate in this group, and  
request a more civil tone in future messages.

>>
>> On Fri, Nov 9, 2012 at 7:24 PM, Todd Blanchard  
>> <toddvblanchard@gmail.com> wrote:
>>> It has been two years since the following little note was attached to  
>>> the Web SQL Spec
>>>
>>> This document was on the W3C Recommendation track but specification  
>>> work has stopped. The specification reached >>>an impasse: all  
>>> interested implementors have used the same SQL backend (Sqlite), but  
>>> we need multiple independent >>>implementations to proceed along a  
>>> standardisation path.
>>>
>>>>>> This move has left the web browser world in disarray and has been  
>>>>>> widely misconstrued by readers to mean "Web SQL is deprecated and  
>>>>>> will not >>>be supported in the future - better port to IndexedDB".

I don't think that is misconstruing what the general sense of the gathered  
implementors was. As you note elsewhere, in your own case you are no more  
forced to agree with a standard than any other implementor. We're just  
documenting a view of reality here.

>>> Today, TWO YEARS LATER, we have SQLite on iOS, Android, Chrome, and  
>>> Safari but no IndexedDB.  On Firefox we have IndexedDB with >>>SQLite  
>>> available only via a browser extension  
>>> https://addons.mozilla.org/en-US/firefox/addon/html5-websql-for-firefox/  
>>> (annoying but liveable), and >>>on IE[89] only DOM storage with  
>>> IndexedDB expected on IE 10.
>>> Sources: http://caniuse.com/indexeddb http://caniuse.com/sql-storage
>>>
>>> As someone who is trying to build an offline web app the works both on  
>>> browsers and smart phones and needs to store a lot of client side  
>>> >>>complex data that will require lots of joins - let me just say WTF?

I understand your frustration. I will point out that many people volunteer  
their own time, on top of time that many companies pay for, in order to  
help provide standards that make it easier for you to make a living or  
just do something useful. But this is not a guarantee that other people  
are required to solve your problems.

>>> Why do we have standards again?  You're not helping.
To be clear, standards are documents that describe what the industry has  
agreed on. There is no formal power of enforcement beyond market adoption.  
If your preferred tool developer doesn't support your preferred standard,  
then you as a customer probably have a lot more power than we as a forum  
where they can listen to what others are doing and make their own  
proposals.

If you are providing solutions to their customers, then your ability to con

>>>
>>> I look around at information on the state of storage options and I  
>>> read stuff like this:
>>> "Since November 18, 2010, the W3C announced that Web SQL database is a  
>>> deprecated specification. This is a recommendation for >>>web  
>>> developers to no longer use the technology as effectively, the spec  
>>> will receive no new updates and browser vendors aren't >>>encouraged  
>>> to support this technology. The new alternative is IndexedDB which is  
>>> already available on Chrome 12+ and Firefox 5+, >>>and, soon, in IE 10  
>>> as well.
>>> "
>>> Was it really the intent to abandon SQL as a concept because everybody  
>>> is using the same well tested and portable library?

No. It was the intent to abandon SQL because significant parts (that is of  
course a udegement call, and you're entitled to judge it differently) of  
the industry were not using it and not interested in using it - and  
because most of those who *did* implement it agreed that it was a bad idea.
Incidentally, a half-proposal was recently floated by Ashok Malhotra, to  
introduce another SQL specification which as well as using SQL for local  
storage is intended to simplify the problem of synchronising data between  
online and offline applications. I don't know what the follow-up for that  
is.

The Webapps group will continue to try and reach industry agreement on  
ways to handle data storage for offline applications. Help is appreciated.  
Trying to help is generally appreciated too.

cheers

Chaals

-- 
Charles McCathie Nevile - Consultant (web standards) CTO Office, Yandex
chaals@yandex-team.ru Find more at http://yandex.com
Received on Monday, 12 November 2012 12:13:44 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 18:49:56 GMT