It feels like the tech industry is still trying to work out what the optimal mobile user experience should be. And it also feels like we have been down this road before. Like when we went from a comfortable desktop (client server) design/development paradigm to a browser-based one it took a while to figure out that they weren’t the same and how to exploit the differences.
Think about it. At the time of the browser shift the desktop development mentality was around using Visual Basic and a huge palette of visual components (most of which were just fluffy eye candy). So the first impulse of the industry was to try to replicate that (admittedly hideous) component heavy user experience/development model inside of the relatively austere HTML model. This gave birth to the loathsome Java Applet and the even more vile ActiveX control. The industry had completely missed the boat by treating the browser as a heavy desktop application delivery mechanism rather than exploiting the lightweight, largely device independent model that HTTP/HTML provided.
It took about ten years time before HTML/CSS/Javascript and related standards support in browsers made it possible to have truly rich interactions within the browser without having to assume a pretty heavyweight underlying infrastructure for most in the industry. It is worth noting that both Microsoft (.net) and Adobe (AIR) continue to flog this decade-old failed development/delivery model. Any technology that assumes that there is several gigabytes of code on the (lightweight) client is not a proper technology for developing browser-based applications (nor mobile ones for that matter).
Now it feels like we are in the same place with mobile development and user experience — far too many people look at mobile devices as if they are just a desktop browser/computer with a smaller monitor attached to it. But for the mobile experience to be successful, applications need to be designed to address the constrains that are on most mobile devices not try to force them to be mini-desktops. This includes not forcing mobile users to endure your useless Flash-only sites, popups, gratuitous CSS layers, plugins, requiring too much typing and browser specific markup.
To some extent, Apple is leading the way with changing ideas about mobile development with the iPhone SDK (and all of its constraints and limitations). The difficultly with this is that what Apple defines is okay for Apple, not necessarily for the rest of the mobile industry. This can lead to something else we have seen in the past — a ghettoization of the mobile experience between sites ‘optimized for iPhone’ (eg IE) and what everyone else gets.
I am no expert, but it feels like we have the basis for a successful, flexible implementation on mobile devices in the guise of XHTML/CSS/Javascript. Flash and other desktop legacy apps just won’t cut it. Combine that with microformats to facilitate data sharing (and potentially reduce keying) and ‘designed for mobile’ interfaces and we have a fighting chance.
Note: I subsequently found this posting on The Web Beyond The Desktop that does and excellent job of both reinforcing and expanding some of the points that I was making.
Technorati Tags:
adobe, browser, design, development, flash, innovation, iphone, javascript, microformats, mobile, technology, ubiquitousdata, webdev