Are mobile developers more likely to embrace the cloud?
On first blush, the answer to this question should be ‘no.’ Concerns about security, scalability, availability and performance are not unique to mobile environments. Enterprise Java developers toiling away on the server side have the exact same set of concerns, and these concerns hold the same amount of weight when server side professionals are choosing a platform strategy. But still, it’s difficult to shake the feeling that pitching a cloud based solution to code hounds who are working on mobile or embedded devices is a just a tad easier than pitching it to those who are chained to a mainframe all day long.
Short timelines create cloud advocates
Perhaps the mobile community’s affinity for cloud-based solutions elutes from the ridiculously short timelines in which mobile applications are expected to go from inception to deployment? Enterprise developers build enterprise applications that do enterprise things. Part of being enterprising means spending millions of dollars installing enterprise software and developing gargantuan apps that do millions of impressive enterprise things.
An essential part of the job description dictates that enterprise architects and enterprise administrators put together impressive solutions for things like security, scalability and performance, and those solutions have to have lots of moving parts with a wide expanse of integration points and extension opportunities. This, of course, means spending months and months doing things like setting up master servers, emancipating slaves, feeding WebSEALs and trying to figure out why the intricate single sign on (SSO) system is forcing every user to provide their credentials thrice.
Of course, all of these time-consuming enterprise tasks are fine and dandy when you’ve got an eight to eighteen month development cycle. But mobile developers can’t spend nine weeks figuring out why their SSO doesn’t work, as their development cycle is counted off in days as opposed to months. “The mobile app is the embodiment of rapid application development and design.” Says Cathal McGloin, the CEO of FeedHenry, a cloud-based Mobile Application Platform solution. When it comes to developing on the mobile side, the philosophy is “Get it out and move on to the next one” says Cathal. When time is tight, there’s no time to waste, and when there’s no time to waste, that’s when people start looking for cloud based solutions.
Vendors such as Cloud Foundry are trying hard to create a platform as a service (PaaS) offering that will appeal to professionals in this fast-paced mobile space. “Think about having to reinvent authentication and security for each mobile app, or think about having it already pre-canned in some sort of server side PaaS, and then just pushing in your server side code. That’s what we’re building. That’s where we’re seeing the rollout. If your challenge is the rapid application development of mobile apps, PaaS is a pretty good way of doing it” says Cathal.
Small budgets create cloud advocates
Of course, the short timelines experienced in the mobile industry may just be a symptom of a bigger cause. Perhaps the reason why mobile application timelines are so short is because nobody has the budget for them in the first place? It seems like every organization wants a mobile content delivery platform, but nobody is willing to dole out the big bucks for a mobile computing engagement, especially if the return on investment is dubious or potentially short lived. Being able to write the front end for the mobile application quickly, and then leverage the services of a PaaS offering can not only speed up deployment time, but it can also reduce the up front infrastructure costs while minimizing potential losses if the mobile application doesn’t quite generate an Angry Birds type of revenue stream.
“One of the reasons that cloud computing is important and beneficial is because you don’t have to go and buy a lot of hardware and set up a data center. You can pay as you go. The pay by the drink model means as you can easily get going, and when you need to add more resources, you can pay for it at that time,” says Rod Johnson, the creator of the Spring framework and Senior Vice President at VMware.
Subversive developers embrace the cloud
Perhaps the affinity for cloud computing in the mobile space isn’t about time or money, but is instead more about a structural or organizational change that young and fearless revolutionary programmers are trying to push through the corporate wall. Given an agile, rush to market mentality, a mobile developer won’t have the patience to get all of the sign-offs, request for change (RFC) authorizations, secret hand shakes and knowing winks that are required from all of the various department heads overseeing the IT shop.
After all, how can anything get done quickly when one must adhere strictly to the policies and procedures that organizations put in place to govern every step in the process of staging application rollouts? By adopting a PaaS based provider as the target of deployment, developers are finding a way to bypass the red tape.
“Typically, particularly in large enterprises, this process [of deployment] takes way too long. Typically you have an internal bureaucracy where you’ve got to get sign off; you've got many functions between the developer who creates the application and the operational deployment of that application. In fact, in large enterprises, cloud computing is seen partly as a way to subvert the bureaucracy” says Rod Johnson.
There may be some truth to that. Java developers may see hoodwinking the senior brass into believing that all of the required operational procedures are being followed, when in fact none of them are obeyed as applications are deployed to the cloud, as a great way to save time, effort and aggravation.
An enterprise bias against cloud computing?
But in the end, maybe it’s not so much an enthusiasm for using the cloud in mobile environments as much as it may be a predisposition against using the cloud in enterprise development circles. Maybe it all comes down to bias? If your hefty salary as a WebSphere administrator is now being threatened by the prospect of blitzkrieging the data center and moving administration off site to a PaaS provider, it’s unlikely that you’re going to swallow a poison pill by recommending a cloud based solution. Maybe it’s not a matter of the mobile environment loving the cloud; maybe the issue is that enterprise developers fear and loathe it?
Regardless of the reasons, there is no denying the fact that the mobile device development community seems to be strongly embracing the cloud, and vendors in the cloud computing space, such as Cloud Foundry, ActiveState and VMware are working hard to meet the growing need. It’s surely just a matter of time until the enterprise computing community catches up, whether it’s done voluntarily, or whether it’s done with Java EE aficionados kicking and screaming.