Re: Web Widgets, Where Art Thou?

On Mon, 22 Jul 2013 09:59:33 -0700, Daniel Buchner <daniel@mozilla.com>  
wrote:

> In my opinion, the current spec's complexity in relation to its feature
> goal, is high.

I think it is pretty important to this discussion to understand what parts  
of the widget framework you think bring complexity (or alternatively,  
bring little value).

Different people interpret complexity very differently. For example there  
are many developers today who find JSON extremely comfortable and  
flexible. But others find it extremely limited (no common  
internationalisation mechanism, the strictness of the syntax is almost  
invisible being expressed only in tiny punctuation marks, no clear comment  
mechanism, …)

Without a clear idea of what you mean by complexity (or clarity) it is  
very hard to understand what your statement means, and therefore what  
should be changed...

[...]
> I'd like to step back and formulate a strategy based on the progression  
> and growing prevalence of widgets on native mobile platforms,

Presumably unsurprisingly, this was part of the approach that led to the  
current family of Widget specs.

> as well as how we can align widgets with the packaging and distribution
> of web apps.

Yes, this is important.

> The paradigm of declaring/packaging widgets inside app packages is a  
> beneficial pairing that reduces the amount of code and management
> developers are forced to think about,

Yes...

> while taking advantage of natural synergies that result from reusing
> a common base.

I think I agree, but can we be explicit about the things we think we're  
getting?

For example, many browsers now use some form of JSON to write a manifest  
that (other than the syntax) is almost identical to the XML packaging used  
for widgets. And as JC noted there are actually numerous systems using the  
XML Packaging and Configuration.

> I see widgets as a web page (perhaps the same page as a "full" app,if  
> the dev chooses) with near-zero additional, cognitive overhead.

I'm afraid I have no idea what this means in practice.

> Declaration via the app manifest is a huge piece - I'd argue that
> this alone would realize a huge increase in developer utilization.

I suspect this is a very common perception.

> Let's look at current consumer perception of widgets, and how the space  
> is evolving:
>
>    - Widgets are commonplace on mobile platforms
>    - In the view of consumers, search, discovery, and purchase/
          installation of widgets is now distinguishable from apps

Do you mean "indistinguishable"?

>    - Widgets remain a feature used primarily by savvy users, but new
>        presentations will blur the lines between what a widget is -
>        let's get ahead of this!
>
> The last point here is important for the next generation of 'widgets'.
> Widgets in the "statically-present-on-a-home-screen" incarnation are
> currently the most recognizable form, but this is changing. Look at  
> Google Now - those cards, they're just widgets IMO.

Yes, and likewise Yandex Islands - and yandex Widgets. And Opera's "Speed  
Dial Extensions". In the early days of widgets there also a lot of things  
like Yandex widgets - ways to collect bits of web content onto a page that  
was put together server-side. That paradigm hasn't disappeared, although I  
think it is fair to say that widgets arenow more familiar to users as  
stand-alone apps.

> Conclusions:
>
>    - If users no longer distinguish between apps and widgets in  
>        practice, a common packaging vehicle makes sense.

Yes.

>    - We are seeing proactive, contextual presentation of data in
>        widget-esque forms on Android and iOS (Moto X looks like it
>        will introduce more of this). Under the proposed direction
>        of widgets, developers need only know what context their
>        widget is being evoked in, and how best to layout a UI for
>        the intended display. (media queries for something like
>        "blocks" - just an example, you get the idea)
>    - I believe we should retool efforts in this area to focus on sharing
>        the app packaging vehicle and reducing complexity to near-zero  
>        (besides things like widget-specific media queries)

This is where it is critical to know what you think is "near-zero  
complexity". Having seen a couple of systems deployed based on JSON  
packaging (Google and Mozilla), and a bunch of them based on the current  
XML Widget Packaging, I personally find the latter far less complex. But I  
realise not everyone thinks like I do.

>    - If we want to make a splash, actively encourage implementers to add
>        features based on widgets or widgets + apps (this is a feature
>        we've discussed for future enhancement of the Firefox desktop
>        experience)

This sounds a bit like partying like it is 2009. I'm sure with a marketing  
budget people can make a splash of that, but it seems more like catching  
up to me. Which means we should do it primarily to promote  
interoperability with the systems that are several years in front.

-- 
Charles McCathie Nevile - Consultant (web standards) CTO Office, Yandex
       chaals@yandex-team.ru         Find more at http://yandex.com

Received on Monday, 22 July 2013 21:55:51 UTC