# Scott Wilson, Offline Web Apps Workshop Position Paper

### Author: Scott Wilson

SUMMARY: We've got some great specs addressing a real market fragmentation issue, and they are being adopted, but more effort is needed to create an open web widget/app/gadget ecosystem

There is a lot of confusion in the market and among users about the things variously called "Widgets", "Apps", and "Gadgets" (WAGs[4]). In general the distinction between web applications delivered on a mobile device, on a desktop, on a smart TV, or in a web page does not and should not matter to end users, however the industry has generated a considerable number of formats, APIs, SDKs and packaging formats.

As often happens in these situations, middleware evolves to try to cover the interoperability gaps, for example:

- Phonegap[1] (aka Apache Callback) provides a solution for delivering web apps to the multitude of mobile platforms, and is using the W3C Widgets Packaging & Configuration specification
- Apache Rave[2] provides a web platform for creating portals, dashboards and social software consisting of WAGs: both W3C Widgets and OpenSocial Gadgets

However, there is something of an arms race going on as more "app formats" are created such as Mozilla Open Web Applications, Chrome Installed Applications, Samsung Smart TV Widgets and so on.

Much conversation has been had on subjects like "can we think of a better name for it than 'widget'?" and "I prefer JSON to XML for the config" but these are sideshows; there is a significant opportunity to build an open ecosystem for Widgets-Or-Whatever-They-Are-Called, and we need to start putting some serious effort behind:

1. Getting these specifications adopted, and,
2. Raising awareness of the many cases where they *are* adopted but for one reason or another are not particularly visible.

On the first point, there are rarely significant objections to adoption - developers are often unaware of the spec, or have been so involved in solving their local problem to consider standards. We've been offering the Apache Wookie parser library[3] as a way to make it easier developers to adopt the spec, but we could do with more (e.g. porting to PHP, Ruby, Python…).

(That said there is still a lot of NIH around.)

There are also some specific issues to be tackled around some of the different classes of device and platform that widgets may target (e.g. as Toshiba have raised in their paper for TV/home network widgets, and as the Webinos project have identified for in-vehicle widgets)

Overall however I think we have reasons to be optimistic.

- There have been several cases over the past year where I have started working with a company or project and found out that what appeared on the surface to be a proprietary widgets/extensions solution turned out to be W3C Widgets! While this may make some sense in marketing terms, it doesn't exactly help interoperability or in building the ecosystem if only those "in the know" know that you can actually exchange widgets between the platforms.
- Over the past year I have been working with three different European project consortia targeting different markets, and they have all chosen W3C Widgets (with DAP) as their core app platform (*before* I got involved!)
- There is serious momentum building around "web apps" generally

[1] http://wiki.phonegap.com/w/page/46311152/apache-callback-proposal

[2] http://incubator.apache.org/rave/

[3] http://incubator.apache.org/wookie/docs/developer/parser.html

* I'm from Manchester, and this is something of a regional joke acronym [4], so please don't use this as an official acronym for anything!

[4] http://en.wikipedia.org/wiki/WAGs

/-/-/-/-/-/ Scott Wilson

Apache Wookie: http://incubator.apache.org/wookie

Apache Rave: http://incubator.apache.org/rave

OMELETTE: http://www.ict-omelette.eu

ITEC: http://itec.eun.org

More: https://github.com/scottbw