Ten years back one would not have imagined that the cell phones would become much more than a cordless phone with a wide signal range. From a communication device that can store a few contact numbers it has, over the years, become ‘smarter’ by providing integrated features such as digital camera, FM radio, music/video player, games, multiple connectivity modes for the common user. For the advanced or business user it provides a Personal Information Manager (PIM), mailing features (push or pull), other office products and most importantly the ability to run business applications. There are, however, several other parameters that will dictate the way in which future mobile applications would run on modern mobile devices.
Hardware – PDA v/s Smart Phone
The gap between a Personal Digital Assistant (PDA) and a smart phone is getting shorter day by day. Most of the advanced phones these days have QWERTY keyboards, higher form factor, excellent processing power and almost the same memory capacity of comparable PDAs. As smart phones get more and more data-centric, the possibilities of running powerful LoB applications get better. Hence if the current trend continues, the long-term future of mobile computing will be revolving around smart phones.
Online v/s Offline
The bandwidth worries are to become the story of the past! As technologies are being developed to transfer megabytes of data at lower costs and in a matter of seconds, ‘almost-offline’ kind of applications will make way for ‘almost-always-connected’ applications. This would mean that the mobile client technology will run applications that are online with the enterprise backend systems but would not mind even if the connection is disturbed for a while. On restoration of the connection it would continue synchronizing the data that was collected or changed during the disconnected time period. This behaviour is comparable to that of the Microsoft Outlook mail client. Standard client side protocols will be soon available to manage session, state and queue persistence to facilitate the above concept.
Enterprise mobile apps v/s custom build
Built-in mobility would be the theme going forward. This would mean that you build your enterprise or mid-scale applications once and mobilize it using ‘a mobile infrastructure’ without significant effort. The organizations who build such mobility frameworks and build their enterprise applications keeping this flexibility (possible usage modes and channels) in mind would be the leaders in future business computing. These naturally mobilized applications would surpass custom build mobile applications that are difficult to maintain in the long run.
Public v/s Private network
A future mobile application would be able to run within a private corporate network as well as a public wide area network facilitated by a service provider without any difference in behavior at all. However, the usage pattern and the type of mobile applications in reality would vary within a private network and a public network. For example, a mobile service application may use a public network more often than an assembly line monitoring applet that is running within a manufacturing plant. The point here is that the usage pattern and location should not determine the architecture and technology behind the application.
In the future, voice activated NLP commands and touch screen entries will be used more often than keyboard entries. Mail usage will be around templatized content and smarter word fillers would make whatever entries to be made, a lot faster. Probably there is a lot of limitations when it comes to input mechanisms but something really innovative needs to be implemented here. Seamless integration and accessibility between office applications, PIM etc and the mobile enterprise applications will be what power users will be looking for. In order to achieve this the standards for exchanging data between PIM and mobile applications need to be defined.
Which technology – Java v/s .NET v/s ToBeInvented
As long as a standardized mobile platform protocol is available, it will be insignificant to talk about the technology used to write the applications and/or frameworks. Even the operating system may not play a bigger role here. The present problem is that the cool proprietary features that various mobile devices provide are often mistaken as built in O/S features rather than added application features. With conscious effort the integration points (PIM, Enterprise backend connectivity, Media players, Synchronization, Device management etc) can be really standardized. At the moment, open standards such as OSGi is purely talking about a raditional open application architecture that is far away from the current needs and capabilities of mobile computing
Future mobile computing device (MCD)
If the technology grows at the current pace, we would soon get to see devices that have computing power and memory capacity of the current desktops. They will also have foldable LCD/Plasma screens (something like the airport multi-display-monitor hoarding) that can change form factors easily and could substitute a laptop or tablet PC via retractable keyboard mat. Seamless synchronization with other devices (not just computers) will be a reality. Video streaming and recording features will soon be utilized for mobile TVs and video conferencing services while on the move (using 3G or ‘moreG‘). Also, don’t be surprised if all your TV channels are accessible via your smart phone in less than two years from now!