I like to observe how in technology (and often in life) things are repeated. Sometimes they are just the same thing again and again, other times they are slightly different. Especially in technology, some ideas fail because they are missing some pieces or because their timing was not perfect, this of course allows for refinement and repetition.
Some of the terms in this blog post’s title are buzzwords these days, so let me first clarify what I mean here.
WML: YES, I really mean the WML that was part of WAP 1.
Why WML, Widgets and HTML Web apps are the same thing
Forget for a moment the technical details or the SDK that you use to create one of these applications. Let’s start from this sentence:
My service is developed using the latest Web technologies, it contains mark-up and scripts, you can download it with a single request and while you use it you will see different content without actually making new requests to the network
It might sound crazy, but the above sentence applies to WML, Widgets and HTML web apps. Why? Let me explain.
WML is a highly underestimated mark-up that died a cruel and early death because the rest of the technology was not good enough yet (and possibly because it was a bit too strict). On the other hand it had some interesting ideas that have been disregarded for years or we have forgotten too soon. A WML page was called “a deck”, a deck was one file with a header and then one or more “cards”. Each card was rendered as a page on your mobile device and you could use anchors to jump from a page to another. The main reason for this was to save network requests, i.e. download everything you need in one go and then browse within that content until you need more.
So what’s the story?
The two ideas might have started from different assumptions, for WML it was a matter of saving network requests, for Widgets was the idea of creating an application that looked native, but was as simple as a Web page and for HTML5 it was a bit of both, look like a native application and optimise network requests. The end result seems to be the same.
If you are like me and thought that Widgets were not interesting, what is your thinking with HTML5? Why is an HTML5 Web app any better than a widget?
A Web app is downloaded from a URI and is always up-to-date, but updating a Widget is almost as easy. A widget can be installed in your device and appear as an icon like a native application, but you can also save a bookmark of a Web app and some devices let you add shortcuts to bookmarks in your mobile device’s menus.
So can we call Widgets useless and love Web apps? Can we call WML a complete failure?
Are these just names created by marketing and sales teams for the same thing?
2 thoughts on “WML, Widgets and HTML5 web apps, they are all the same thing”
I embrace all three technologies for their capabilities (but at the same time am probably equally quick to poopoo them for their shortcomings).
In fact, if we really had it figured out we’d use all three in harmony to create Semantic Mobile Agents… but we’re not quite there yet.
Think about it, WML defines a strict Deck -> Card -> Data (content) relationship. If every widget were to use WML (probably a more powerful version, call it RDF/WML) as the data markup, then we could have URI-indexed data Card Decks all over the web with interesting, well-defined data presentations (by then it would probably be serialized in JSON as W3C finalizes it, unless a new markup preference emerges in the ADD-like trends of the web community).
Mashups could then finally become significantly easier (to the point that basic data integrations could eventually be automated by code), and widgets could be built/customized using progressively enhanced HTML5 building blocks.
It sounds like a pipedream, but I see the effective combination of WML “philosophy” (well-defined user interactions that minimize network requests by containing multi-tiered data), Widgets (write once, run-anywhere [that can access the web] client-side code), and HTML5 (interactive, self-contained, visually appealing web application presentation layer) as being the key towards getting to a place where the Mobile space is no longer a nightmare and monopolized profit-center that changes every other year, but a clear success case for ubiquitous information access and harmonized development environment for humanity to move forward into the 21st century of consciousness and awareness.
(Ok, the automated part is still probably a pipedream… but hey if we can access the web in space we’re making some progress into inter-galaxy communication at least! Can user-controlled agent automation really be that far off?)