The New Wave of App Development
The rapid growth of mobile devices is happening alongside several related trends, and together they're fundamentally changing the way software is developed. Tablets are gaining in popularity over netbooks, smartphones are getting smarter, enterprise workers want to use their phones for both business and personal tasks, and a growing amount of developer activity is happening online.
Several new and ongoing phenomenons, all intertwined, will mark the next phase of application development.
There will likely be more emphasis on mobile apps. Tablets, particularly the iPad, are already cannibalizing netbook sales, and as mobile devices get multicore processors with more power and capabilities, they'll increasingly be useful in the enterprise.
Add to that the consumerization of technology, which is a fancy way of saying that workers use their personal mobile devices both at work and in their personal lives, and the demand for mobile apps gets a boost.
"Large enterprises are already starting to employ significant numbers of mobile developers in-house," Leila Modarres, vice president of marketing at DeviceAnywhere told TechNewsWorld. "In 2011, the majority of medium and large enterprises will be working on rolling out apps to their workforces, and in a lot of instances they'll develop them from scratch."
There will be an increase in Web app creation as developers seek to create products once that will run on multiple platforms, Modarres said.
An increasing amount of appdev activity will be conducted online as enterprises seek to reduce costs, and that will further boost the concept of Platform as a Service (PaaS).
The growing market penetration of tablet devices as well as smartphones "means that smart devices of one sort or another will slowly become the de facto communications, work and leisure tools," DeviceAnywhere's Modarres suggested.
That will give rise to the automation of mobile app testing.
"Enterprises already rely on test automation outside of the mobile world," Modarres pointed out. "Now, as they embrace mobile platforms, they want to extend the same time-saving and efficiency benefits to their work with mobile applications."
The Rise of Web Apps
There will also be a move toward developing Web apps because they'll let developers write apps once and run them on any platform.
"If you're a developer and want to be able to write once and write on many devices, the browser becomes a very compelling option," Dan Nguyen, vice president of product management at OpenWave, told TechNewsWorld.
The move toward browser-based development dovetails nicely into the shift toward mobile apps because many of the major companies offering browsers, such as Apple and Mozilla, are basing these products on WebKit.
"With new smartphones and now with Apple, Android, RIM (Research In Motion) and HP through webOS using WebKit in their browsers, WebKit is becoming the de facto core of the new smartphone browsers," Nguyen stated.
"Unifying around WebKit offers uniformity that didn't exist before on the desktop or smartphone, and that reduces the fragmentation we have had to deal with in terms of apps," Nguyen elaborated. "Now apps are rendered consistently on browsers."
This will be especially useful for mobile apps, because there were "orders of magnitude more fragmentation" on the mobile side, Nguyen said.
Further, Web-based development can tap a broad pool of talent, Nguyen pointed out. "There are orders of magnitude more Web developers than Objective C developers," he remarked. "Also, tools for Web development are broader and more mature than those for mobile development, Web development having started back in the 1990s."
Appdev for the Non-Geek
New browser-based development platforms like the one from Mobiflex let anyone develop a mobile app using drag and drop, without knowing anything about technology or appdev.
"We give a whole range of users out there that don't have coding skills build their app in a visual way," George Adams, cofounder and CEO of Mobiflex, told TechNewsWorld.
Using Mobiflex to create an app is similar to creating slides in PowerPoint presentations, Adams said. "If you know how to do spreadsheets or PowerPoint you can build a complex, robust app that can run natively on either your iPhone or Android phone."
Users create their app layout on Mobiflex's platform, place buttons in the appropriate locations and select either the Android or iOS platform to run their app on. Mobiflex's code then translates the flow diagram and visual representation of the app screen in WYSIWYG fashion into native code for the smartphone platform of choice, Adams said.
While Mobiflex is currently targeting smartphones and tablets, its model can work for the enterprise, Adams contended.
Meanwhile, Microsoft has released WebMatrix, a free Web development tool that it claims lets anyone create, customize and publish websites easily. This includes IIS Express, a development Web server; AP.net, which is a Web framework; SQL Server Compact, an embedded database; and Razor, a new inline syntax for coding pages that adds dynamic functionality to HTML.
Moving Into PaaS
Increasingly, developers will turn to Platforms as a Service (PaaS) because they want to focus on creating apps rather than on managing servers and installations, Paul Kopacki, vice president of developer relations at Salesforce.com, told TechNewsWorld.
"That's why so many developers are increasingly embracing cloud computing platforms like Heroku and Force.com," he added.
There will be two trends in PaaS, according to Vidur Apparao, chief technology officer at LiveOps.
One is the expanded use of domain-specific language, and the other is the exposure of PaaS services and capabilities to broadly focused languages and frameworks.
"These may seem like contrary trends, but are actually not mutually exclusive," Apparao told TechNewsWorld. "In fact, they support the same underlying goals -- the removal of barriers to adoption of PaaS services and support of a variety of types of applications and styles of application development."
Successful PAAS frameworks of the future will allow rapid application development through domain-specific languages within the framework as well as easy integration and use within broadly focused languages and frameworks, Apparao predicted.
Increasingly, established SaaS (Software as a Service) vendors will begin offering PaaS-like services, Apparao forecast.
"SaaS vendors have invested in robust, scalable, multitenant architectures, and the most successful vendors will respond to developers' increasing demands for openness and flexibility," he explained. "SaaS companies with rich, powerful Web services APIs will begin to host developer logic for more time-critical tasks and will create the facilities required to offer developer sandbox instances of their platform."
PaaS will begin moving toward mobile integration, Rob Christensen, senior vice president at EDL Consulting, told TechNewsWorld.
"Standard protocols such as REST and Web service support are included in today's PaaS environments," Christensen said.
While this is critical for mobile integration, Christensen expects to see PaaS environments add features such as data synchronization, authentication and built-in push notification.