Challenges and Opportunities in Mobile Web and App Development
Guest Editor's Introduction • Ron Vetter • November 2011
The development of mobile applications that can run across multiple heterogeneous devices is challenging. Not only do mobile devices differ considerably at the hardware level, but the software development environments are also very different. This month's theme highlights some of the issues and challenges involved in this active area of software development.
One of the main advantages of native app development is the ability to reach hundreds of millions of customers simply by uploading your app to a store. Apps developed in a native platform technology currently outpace Web-based alternatives in both the number of available apps and the time spent by users on the device. That being said, the main advantage of the mobile Web approach is its rapid deployment model and its ability to run immediately on multiple platforms via a Web browser. Many developers see the ability of Web-based apps to circumvent the somewhat formal, and often lengthy, process required to deploy apps in a store as a huge benefit. However, Web-based solutions suffer from browser incompatibilities, an uncertain monetization strategy, and slow evolution of mobile Web development standards.
While mobile Web apps are proliferating, there will be an active market for native apps for some time to come. A good understanding of the advantages and limitations of both development approaches will be important to successful application deployment and a positive user experience. Many developers see hybrid approaches as a natural migration path for developing cross-platform code that can run in a device-independent way across multiple hardware platforms. Companies such as PhoneGap and AppMobi are selling hybrid cross-platform solutions using the HTML5 programming model, thereby leveraging Web technologies that developers already know. This approach appears to be promising for future mobile Web and app development efforts.
This month's theme highlights several articles that address some of the challenges and opportunities in mobile Web and app development.
In "Onshore Mobile App Development: Successes and Challenges," Chris Huntley conducts an interview with mobile application developer Applico, a mobile app development company based in New York City. This article covers some of the challenges of working on multiple platforms and developing a good user experience.
In "Reports of the Web's Death Are Greatly Exaggerated," Tommi Mikkonen and Antero Taivalsasri argue for the Web as the software platform to deliver information to any type of terminal, including desktop computers and mobile devices. Although they anticipate a major battle between proprietary native application technologies and the open Web, they believe that technology will continue to improve and the Web as an application platform will ultimately determine the software industry's future for years to come.
In "Next in Mashup Development: User-Created Apps on the Web," Florian Daniel, Maristella Matera, and Michael Weiss present two mashup platforms for lightweight Web development practices. They advocate for technology advances that enable end users to become mobile Web/app developers.
In my own experience, I have found that many programming lessons using handheld PDAs such as the Dell Axim and the Asus Razor still hold true with modern devices such as the iPhone. In his article, "Software Development for Mobile Computers," Kyle Lutes describes a course that he developed and taught on software development for mobile computing in 2004. The course provided the theory and hands-on experience that students need to develop applications for mobile computing environments.
In our final article, "Vetting Mobile Apps," Steve Quirolgico, Jeffrey Voas, and Rick Kuhn describe security vulnerabilities in mobile applications development. They argue that app stores (and mobile websites) don't incorporate a thorough vetting process to examine the potential security problems in apps because of complexities needed to identify the vulnerabilities. Nonetheless, they conclude that it will become increasingly important to do so.