to app or not to app, that is the smartphone question

______________________
cool code in the cold
At present, there seems to be a lot of dispute about the appropriate technology to implement smartphone oriented RIAs (rich internet applications). The debate is especially valid in terms of the 'me too' rush to develop iPhone and iPad apps instead of mobile device optimised websites. This picture is muddy indeed when we consider decisionmaking behind the tendency to favour the native app paradigm and especially the iOS platform. Lets look at a similar credibility dilemma in the recent past - the emphasis on deploying Flash websites, against the better judgement of many internet programmers.
In the days when the 'suits' had no idea of what internet technology objectives were and many felt quite proud of this since they had secretaries to type and print emails, decisions were all too often left to the young 'propeller heads' with little experience and even less expertise. The technologists aware of the big picture in terms of network applications or User Experience seemed just too hard to delegate, especially when requested to “show something by Friday”.
The cool “look and feel” designers stepped in without hesitation. Many had Macromedia Director skills and felt quite comfortable with applications that didn't print and broke the fundamental interactive UI event behaviours. And so, the user got the 'look' in the form of “Wait.. loading Flash” and 'feel' trying to work out how to scroll the information clipped in a tiny fixed size box.
Luckily, by the time the legacy Netscape was buried and the browsers imitating IE DOM provided a nearly uniform client-side scripting environment, the industry had begun to exploit the dynamic possibilities of HTML in combination with HttpRequest object. The 'suits' got a new phoney moniker to talk about; “Web2” and the web became a hub of Social Networks. The ECMA Script committee was shaken up by Microsoft, Google and Yahoo developers who intended to adhere to a deliverable standard, forcing the committee to abandon the ES4 utopia and accept a more realistic roadmap of critical revisions to ES3, which bore the ES5 release in 2009.
The final nail in the coffin for Flash is being hammered in by Steve Jobs. The 'special' relationship between Apple and Adobe (now the owner of Flash) reached a high point when Jobs expressed the commitment not to support Flash on iOS.
______________________
ecosystems deja vu
For a while it seemed that we had the future direction mapped out. But suddenly, the suits began to notice the outstanding growth figures as Apple introduced the new status symbol on the block. The techs lamented – a PDA with GSM not even 3G, UI designers cried – the icons all have the same shape, women frowned – the fingernails get in the way and the calls drop. And yet, the iPhone boosted street credibility in a prolific way and at the same time proved to be the most disruptive technology in a long time.
Tempted by Apple's market success (despite of or more likely due to the device's high cost) and the hefty 30% margin on third party app sales and subscription revenues, the manufacturers are busy clambering up the greasy pole building their own ecosystems. Quite apart from my semantic objections to using the term ecosystem (the original meaning is a topic more alive now than ever before), the concept of proprietary device or system oriented marketplaces for digital products bluntly contradicts the principles of User Centric Design. The notion that consumer choice and their needs are the primary objectives simply falls by the wayside when you lock them to a proprietary procurement and service channel.
The choice between native apps and cell phone optimised websites (web apps) should be based on technical requirements and user tasks, but in reality it is anything but. For one, when a company director or CEO asks for an iPhone app, very few employees have the guts to ask if the decision was purely influenced by the 12 years old technology guru at home. A truly 'smart' phone screen could be a combination of 'gadgets' for live data feeds and links to commonly used web URLs, not unlike a fusion of iGoogle and the Chrome opening page. However, since the phone manufacturers suffer from amnesia when it comes to failures of locked-in online environments e.g. Apple's eWorld or the Microsoft Network, we have to re-learn the lessons of 1995. Thank God that Steve Jobs is on-board this time, even if his health isn't quite what it was in 1996 when he returned to Apple and scrapped the Newton MessagePad.
I realise that statements like this are very controversial and deserve a lot more than an off-the-cuff post. However, in the interest of brevity I want to limit it to a just few key points. So beside the “customer is king” argument, what is the major ecosystem problem?
The business culture relating to Intellectual Property law. Just look at Apple; with 250,000 apps on offer it is apparent that some of them may violate registered patents and Apple is in no position to verify the legitimacy of every offering it sells. So far, when an app becomes a subject of an IP claim Apple pulls the app from the store and in many cases seeks to be admitted as intervenor in the legal case. There are countless reasons for Apple to be involved considering the business size and immaturity of many developers behind these apps. The question is, can and should Apple's (Google and Microsoft are in the same boat) IP people deal with the growth in patent assertions by licensing companies and patent trolls? My guess is obvious I hope.
______________________
the silver lining behind proprietary technology
The native app development environments aim to streamline the implementation and delivery, as well as enhance UI presentation on the respective platform. These intentions are very worthy, but are they effective considering the need to deploy three or more app versions and engage multiple vendors? Microsoft is the last to join the Apple, Google and Nokia ecosystems and back-end clouds. The Windows Phone could become more important now that Nokia adopted it for their products. Even if this choice was strongly influenced by monetary benefits of the partnership, its technical advantages, if any, will constitute the difference the user may experience. Perhaps sharing a few thoughts about WP7 technology will help to illustrate my point.
Personally, I don’t believe that the new focus on the phone as an entertainment device, in preference to the earlier emphases on business/enterprise communications, is anythig but an iPhone panic. The new architecture appears to be aimed at single user games and trivial commerce apps. The Windows Phone 7 platform is based on Silverlight and xna for applications requiring 3D support. These two development paths 2D or 3D are quite distinct and don't allow for mid-stream migration. The single-tasking runtime environment (tombstoned when user switches to another app) is also limited to self-contained executables sand-boxed (exclusive memory and local storage of persistent data) aiming to enhance security and stability, but as a result severely crippled in scope. In plain English, this paradigm hardly looks capable of enabling the next big thing beyond Web2.
Further, just like the Apple, Google and Nokia ecosystems, Windows Phone is totally reliant on the Microsoft controlled delivery channel via the Windows Azure back-end cloud. At large, I dismiss the commonly expressed 'big brother' fears regarding cloud services, however the platform locked user experience objections expressed above remain.
______________________
clouds on the horizon
The cloud paradigm will no doubt be the basis for the next generation of RIAs and provide ample opportunities for new innovative network applications beyond Social Networking and spanning across all forms of devices we happen to have on hand. I believe that in the near term future, HTML5 will become the favoured technology for mobile oriented RIAs over deployment of multiple native apps. For now, the wish list priority focuses on wider HTML5 and SVG support.
As far as the more mature cloud application candidates for the smartphone boom - Microsoft Windows Live or Gmail and Google Apps/Docs hold a lot of promise and yet in business settings I’m still a little dubious at best. As expected, Microsoft manages to meet some formidable design objectives, e.g. 'simplicity' - least effort in adoption since that is the scarcest resource and yes the 'price' is right. But Google services provide a better example for a number of reasons; the claimed high adoption rate, more complete functionality and above all, a business model that doesn't compete with a core legacy revenue source. However, the monetisation model based on advertising isn't free from hindrances when one considers the targeting mechanism. Using context derived from seemingly private content constitutes an obvious problem for anyone with Intellectual Property concerns (clients’ or one's own).
Commercial contract based cloud computing (SaS) is another story, especially for companies culturally struggling with IT departments presenting a mind-field of 'yes men' too afraid to raise an issue or too lazy to address problems.
The recently introduced (June 28 2011) replacement for Business Productivity Online Suite (communication and collaboration tools for MS Office) – the Office 365, which now includes Office Web Apps allowing for online document viewing (including smartphones) and editing (albeit limited), at a reasonable price. This package will be a more attractive option for business startups than companies with legacy in-house data stores, which will no doubt find the migration a daunting task. Moving the data from office servers to the cloud provides countless management shortcuts; however, the process implies a substantial shift in the IT culture and of course requires 'big decision' to commit to that change. Further, there are additional costs and effort accompanying the deployment e.g. business process related manuals, documentation and training.
To be fair, all these meta issues are equally relevant to Google Apps/Docs, in addition to some basic user skill quirks. So far, the feature-set of the Google platform constitutes a superior candidate for a replacement of local desktop apps. But, for many users, the close coupling of local MS Office Applications with Web Apps may provide the 'least pain' path in moving towards the cloud paradigm, e.g. supporting teleworking from home.
The collaborative capability of the two offerings are very hard to compare. The MS check-in / check-out workflow model is easier to adopt and understand through an analogy with the 'track changes' function in regular apps and yet, Google provides real-time editing by multiple users – a more powerful feature; however, in many cases it may take some time to capitalise on these strengths. My experience with Google Wave (same capability) proved that exposing users to tools which are far removed from their familiar ground, introduces hard to overcome barriers and often a sense of dis-empowerment, resulting in a reluctance to learn.
We will see the future before long.

For those interested in the technicalities discussed here Anthony Franco's blog posts “Mass Confusion: The hysteria over Flash, Silverlight, HTML 5, Java FX, and Objective C” and “Mobile Strategy Best Practices“ are well worth a read. Also see mobiThinking article “Mobile applications: native v Web apps – what are the pros and cons?” or these slide presentations (both are on slideshare.net so you can read text outlines instead of flicking slides) on platform specific HTML Apps by Davy Jones "HTML5 is the Future of Mobile, PhoneGap Takes You There Today"Mikko Ohtamaa Building HTML based mobile phone applications and a general Mobile RIA overview by Myles Eftos Smart phone development. A year passed since writing this post and finally I found a programmer's view on this dilemma which is very well expressed in a slide presentation and an article describing a concept of TransMedia Applications by Martin Fowler of ThoughtWorks.

No comments:

Post a Comment