The rise of cloud-based IDEs
Development tools in the cloud enable programming from anywhere, but they're not suited for all app dev needs
By Paul Krill | InfoWorld | Published: 10:09, 12 March 2013
Given the growing volume of workloads being done in the cloud, ranging from CRM to content sharing to social networking, it's no surprise that software development is moving there, too. The rise in mobile development is also boosting the cloud IDE phenomenon.
Services like Cloud9 IDE, Codenvy, Exadel Tiggzi, the beta Koding.com, and Telerik's beta Icenium are enticing developers to the cloud. They promise ease-of-use and collaboration capabilities, as well as universal access from anywhere and from multiple computers. "I can be anywhere with an Internet connection creating apps. It's convenient," says developer Cheston Contaoi, a user of Tiggzi and owner of Driveframe, which develops mobile applications.
"The benefit of developing this way is that you eliminate a lot of the failure rate," such as desktop configuration issues, says Codenvy CEO Tyler Jewell.
Why go to the cloud?
Mobile application development is a primary use for cloud-based development platforms. For example, Icenium and Tiggzi let developers create native apps for iOS and Android, using a core HTML app within the native app, and Codenvy lets developers create Web apps meant for use on mobile devices.
Developers using cloud-based tooling can partner with public cloud platforms to host their applications. Codenvy, for example, lets developers deploy their apps via Amazon Web Services, CloudBees, and Google App Engine.
Cloud-based development also offers a pay-as-you-go paradigm for tools usage. "For startups and small businesses, there is less capital expense, so pay-as-you-use is attractive," says Ovum analyst Michael Azoff. The use of pay-as-you-go development services can also reduce the costs of "shelfware," software that sits unused or rarely used after initial deployment, he says. "One large enterprise I heard about recently was paying an annual $500,000 in licensing for an ALM [application life cycle management] suite that it wasn't using except for one item, which was available for free in any case."
Uniting developers in the cloud
Cloud9 user Brian Pollack, who has his own software development firm (Brians.com), sees globally dispersed development as the key mover for cloud-based IDEs. Teams are not necessarily in one building anymore, he notes. "They're distributed all over the world."
Cloud development also has significant benefits for ramp-up and development times, says Cloud9 CEO Ruben Daniels. And companies can more easily monitor offshore teams, says Codenvy's Jewell. "In the cloud system, the code lives in the cloud, so the organization can track everyone who's had access to it."
The barriers to cloud developmen
tStill, cloud development still has some hurdles to clear. "You need to have good online access. This can be an issue if work is offshored and broadband services are variable, but there are solutions to mitigate that," Ovum's Azoff says. "Testing against complex system environments may be another issue, so some work may only be possible behind the firewall."
C++ development is not likely a candidate for cloud-based development, given old tooling for the language, Daniels says.
User Pollack notes, "It's not as fast as having a native IDE, and I can't use it for really enterprise-level work because there are privacy and security concerns about where the code lives." Still, Pollack views Cloud9 as a game-changer and a "pretty amazing program" technically.
Despite cloud development's benefits, attitudes about control could limit the use of cloud-based IDEs in enterprise businesses. "We've consistently found that developers who work in Eclipse and Visual Studio despise cloud- and browser-based IDEs," says Forrester Researcher analyst John Rymer. "They want local development environments, and they want control over those environments. Eclipse is almost infinitely extensible, as an example. Cloud IDEs have far more limits on customization and extensibility. And they aren't local."
Even with these limitations, it is likely that more and more development will take place in the cloud. A certain percentage of developers will no longer need to rely on Microsoft, Eclipse, or other organization to provide them with desktop-based IDEs. "Overall, cloud-based app dev will grow," says Ovum's Azoff.