Mobile applications are the fastest-growing opportunity and challenge for developers, who are finally getting both the tools they need and the consensus on good practice that liberates them to do their best work.
A mobile user should not be envisioned as merely a Wi-Fi-enabled, laptop-carrying knowledge worker in a conference room or a coffee shop.
Rather, the mobile user requires applications designed for diverse mobility demands in both internal and external respects.
Internally, the mobile application must deal gracefully with intermittent connectivity and with limited and sometimes varying bandwidth.
Externally, an application must deliver an appropriate experience when using a small screen on a handheld device or when using no screen at all with a voice-based system in a hands-free environment, such as an automobile.
Developers must therefore think in terms of loosely coupled layers of application function and user interaction, rather than starting with a user interface and designing function inward from that surface.
They must think in terms of scenarios where users in different situations will have different needs—and think about how applications will offer graceful degradation, rather than all-or-nothing access, when they have intermittent or varying connectivity.
The value of mobile access will sometimes lie in location-specific data—whether for critical applications, such as identifying the nearest trauma center, or for commercial applications, such as finding the nearest Thai restaurant after a show.
This implies transparent integration of data, such as GPS coordinates, or the use of other position estimates, such as those based on cell-site triangulation, without inadvertently compromising privacy by disclosing a users location too freely.