Mobility is amazing. Consider that it was not that long ago when mobility meant simply the ability to make or receive a telephone call or text. Maybe if you were lucky, you also got email or some pale version of a desktop app on your “device” so you could read documents on the go.
Now, mobile is a part of every business and, for developers, it’s a mixed blessing. Systems are being built or rebuilt to support mobility – and apps need to be written (or constantly updated). That’s not a trivial challenge since there are multiple operating systems and innumerable individual device variations that have to be considered.
Add to those basics the challenges of delivering new kinds of functionality such as context awareness. This, at a minimum, means writing an app that “understands” its physical location at a given moment. But it can also include preference, in the form of recent decisions made by the user or consumer that can be discerned from the device or from information available on social networks. These are situational meaning, they don’t just map coordinate location but altitude, environmental conditions, velocity, etc.; and even attitude – the state of mind of the user.
It is unlikely that any given app dev project will involve more than a fraction of these potential new requirements. However, the point is, that it’s a brave new world for developers—more complex and faster paced than ever before.
One of the best means for coping with this onslaught of challenges is simply adopting a new platform approach to development and deployment: Platform-as-a-service (PaaS).
The PaaS Advantage
Why PaaS? PaaS is moving toward an increasingly central position in IT—whether on-premises, in the cloud, or in a hybrid situation. When developers turn to PaaS they do so because they believe they can save time and increase productivity. Indeed, this approach is rapidly moving to the mainstream.
To date, developers have generally had to pick separate tool sets, depending upon their target deployment platform—one choice for fat clients and something totally different for web apps, mobile, and tablet. Developers had to learn to use different tools for each platform.
If you decided your “fat” app needed to work for a mobile device, you may have had to put up with delivering a problematic user experience based on that tooling. If something was optimized for the web or a fat client, it might work for mobile but it wouldn’t work very well. The alternative was more or less starting over from scratch.
Developers will look to PaaS providers for unified delivery of tools, seeking an environment that will have all of the required tools needed to easily create a mobile app, a web app, or a fat client, from one tool set. PaaS provides a wide tooling breadth and strong integration.
Similarly, even within the specific requirements of mobile development, there can be daunting complexities. If you choose to write a native app, your testing complexity goes up considerably because you have different operating systems and different handsets.
With hybrid approaches you can write the UI code once and deploy to multiple devices because you can have a container that runs on top of all operating systems—so you don’t need to learn device-specific environments for development.
By 2015 the decision to write a native app or a hybrid app will be increasingly dictated by tooling available through a PaaS, not just for deployment and runtime, but also as the app dev tooling for creating the mobile frontend.
Tooling will continue to improve, too, with developers turning to an integrated, “everything-in-the-box” mobile UI development platform so they can quickly and easily extend existing applications to support mobile users—or create new ones.
In combination with a visual designer, support for the creation of feature-rich mobile apps than can run on both iOS and Android platforms is important as well. With hundreds of different handsets within each of those domains, each requiring a degree of application customization, this approach bridging capability represents a huge productivity boost.
Similarly, when developers look to create apps for the Internet of Things (IoT) and the next generation of mobility—wearable devices like Google Glass—they will want similar support. So they will have to think about picking tool sets not only to deliver for their already complex spectrum of choices but also for Glass – or a smart sensor, perhaps even a refrigerator.
Moving forward, application developers need to look at mobile development challenges in a broad context that includes traditional platforms as well as emerging IoT. It’s an overwhelming challenge, but increasingly capable PaaS providers will make it possible—and successful.
Indeed, the stampede of new vendors into the space is an indication that the whole industry “gets” PaaS. Gartner recently published their first Gartner Magic Quadrant for aPaaS, in which a handful of leading PaaS players are categorized as either challengers, leaders, niche players, or visionaries.
Fundamentally, developers and IT departments in general are dealing with stiffer competition and limited resources. PaaS helps them address those challenges. In fact, a PaaS has solid advantages in terms of supporting better and faster development, agility, analytics, and scalability, while offering more favorable cost structures.
This year we’ll see PaaS begin to drive a wave of change, within IT and across organizations. It’s also a perfect fit with the do business anywhere and any time trend. Here again, consumers have shown the way, with smaller, more focused and easy to deploy apps that are better tailored to the needs of roles and individuals than the giant, “monolithic” applications that have long dominated corporate life.