Some pending browser breakthroughs

Loads of stuff going on recently on the <video> tag land, Google has made a bold move to push openness into the web, though they added Adobe into the mix, which inspires mixed feelings on me. All in all good news, competition is back on track after 10 years of Microsoft stagnancy on this field. I wish there was more corporations whose business model wasn't based on restricting competition through twisted uses of Copyright, Intellectual Property and business practices.

However, I would like to enumerate a few things that should be exposed or improved in the major browsers soon if they want to accelerate the web application further.

Webcam Access

I think this is actually the last thing we need to get rid of flash at this point and it's relatively straightforward to implement. I don't even think that a standard should be proposed for this to implement it. There's a lot of engine specific stuff on CSS and is not a big pain, most people are relying on jQuery and other cross browser libraries. The only challenge here is the security model, but Flash solved that long ago.

RDF Storage

When I saw a proposal to use SQL as one of the storage models for the browser something died inside me. I understand where the proposal is coming from and why it seems to make sense. Most web developers are familiar with SQL.

I think SQL is sort of alright on the server side as you can always expose data any way you want, but client side, you'll end up with a bunch of data silos for every site and you'll lose a lot of data in the way. A RDF/SPARQL model is the natural storage model for the web, though in my opinion some specific purpose APIs should be added for contacts, location and multimedia storage.

Obviously I'm a bit biased here since Codethink is been the major pusher for an RDF datastore on GNOME through our involvement in the Tracker project.

Smart Card Certification

Smart Cards are becoming widely used, in some countries like Spain the official ID card is an actual Smart Card with a digital certificate that can be used to sign documents (no biometric crap or anything like the crappy Labour proposal in the UK).
However this can be sort of configured already in some browsers, the setup is rather hard. Some projects like could really use some improvements in the ease of use.

Contact Support

I believe the Mozilla guys are already working on this area, what I would actually love to see is a tag where you can specify a contact detail like this:

<contact href="phone://004400000"/>

Same for skype, Facebook, XMPP, etc. plus a javascript API to access the phone features such as phone call, add an entry to the addressbook, send sms… Maybe RDFa instead of a new tag would do it as well. The point is that there should be a common way to define a contact on the document so that the client can do smarter things with it.

These are the main things I would add, although I would like to see a more widespread support for location support and touch based events as wells, I think the three items listed about could actually bring a significant amount of useful and innovative apps both online and offline.