What's on tap in the world of mobile app development? Plenty, according to experts -- like game-changing approaches to functionality, for one thing, and also the potential that all apps will start to look more like mobile apps.
That, at least, is the view of Forrester analyst Jeffrey Hammond, an expert on open source software, next-generation mobile, open Web and client architectures, and improving software development productivity. He said that like the client-server era of a generation ago, we are now entering a period of massive changes to application architecture as companies change how they build applications, particularly mobile apps. Hammond, who is currently working on a report on the subject, said there are a number of key things to watch for. And, he predicts that the changes in the way mobile apps work and are developed will be harbingers of wider changes in software.
"Context is key," he declared. In the case of mobile, that means future apps will need to leverage available information regarding the location and activities of the user to deliver an application "experience" that is more appropriate, natural and useful than what has been the norm in the past.
According to Hammond, context includes the "basics" -- things such as location, environmental conditions that are known or can be inferred, time of day and even the speed at which the user is moving. On a more sophisticated level, apps should seek to access background information based on the app's own "experience" with the user or from external information -- from Facebook, for instance. That information can help to flesh out context. For example, is someone shopping, trying to get to a destination or just killing time? Finally, the app should seek to understand the attitude of the user based on actions relative to contextual information.
This is about recentering [integration] design so that you're focused on the design of your business.
Randy Heffner, vice president and principal analyst, Forrester Research
For the sake of speed and efficiency, Hammond said this should all be accomplished "as much as possible" locally -- on the device -- rather than relying on intelligence somewhere else on the network.
A reward of learning to build these more potent, sophisticated and context-aware mobile apps will be the learning that can be applied to all application development. The future belongs "to faster, omni-channel development," he said, in which the tricks of the mobile app trade become more or less building blocks for the rest of the software ecosystem.
Focusing more on the near term -- with the persistent issues around Web-based or native development -- IDC analyst John Jackson said the most prominent trend in mobile apps is that "the outlook is the same as it ever was," namely that the primary focus is on iOS and Android, in that order. "Everything else can generally been characterized as just situational or opportunistic," he said -- in other words, applicable only for relatively narrow markets and use cases.
Developers will sometimes go and write something for Windows OS phone or maybe BlackBerry 10, but they are less inclined to do so without a specific reward in mind, Jackson said. That's why, he noted, Microsoft has paid for the development of many of the apps that reside on its platform. "There is no shame in that. It is what you have to do. But the trend, since 2010 or even farther back, is that you have an enormous number of users for the No. 1 and No. 2 operating system, and it isn't obvious that this is poised to change substantially any time soon," he said.
While Jackson said that may be "boring," it is also true and very important to the second trend, which has to do with HTML5.
"The utilization of HTML5 has gone through the roof, but pure Web applications are not likely to be a big thing in the mobile environment," he admitted. Instead, Jackson said IDC is seeing is that HTML5 and associated technologies have become profitably represented in mobile app devices, but there is almost always a reliance on customization to make native application programming interface calls. That's why companies that are providing frameworks to help HTML5 -- Sencha, Nitobi (now owned by Adobe) and Appcelerator, for example -- "are doing a good business."
Those companies say to developers, "You have gone 90% of the way, and we can now wrap you across versions of Android, of iOS," Jackson explained.
HTML5 -- as Jackson implied, has been problematic in mobile developments, with comments floating around the Web regarding its teething troubles. For instance, a Data Center Post blog by Lori MacVittie, senior technical marketing manager at F5 Networks, cites testing data from Spaceport.io (admittedly, a would-be competitor of HTML5) asserting that mobile browsers running HTML5-based apps are some 900 times slower than traditional laptop computers.
Putting things in perspective, Ian Hickson, the editor of the Web Hypertext Application Technology Working Group spec, which has overseen the evolution of HTML, said, essentially, that such claims are a distraction. "Browsers and devices are getting faster all the time. Writing directly to a specific device's hardware will always result in faster code on that hardware, but writing to the device-neutral Web will take less time than writing to each device, so it's faster to deploy to all devices," he said.
Still, Hickson admits that HTML5 may not be right for some applications such as a heavy 3-D, real-time multiplayer game with a complicated physics model. Thus, he said, "at the end of the day, each implementer has to make the determination based on their resources and their needs. For some needs, the Web is a clearly superior choice."
Finally, among trends to watch, there is one more that Jackson said is: an increased interest in application lifecycle management for mobile apps. "It is one thing to get an application 'on deck' and out in the market," he said. But it is quite another to manage that over a long product lifecycle. "So, the idea is that it isn't sufficient to just develop and app and throw it over the wall into an app store -- you need a solid plan to refresh and maintain the app," he added.