The cloud isn’t just for network administrators looking for scale, it’s also a key development area for developers building applications with open source dynamic languages.
According to a poll conducted by analyst firm Redmonk and sponsored by dynamic language vendor ActiveState, over half of the developers surveyed have deployment plans for cloud applications within the next 12 months. Those cloud deployments are likely to be a hybrid of both public and private cloud platforms, according to 37 percent of respondents.
“This confirms a lot of our basic hunches that dynamic languages are just increasing their usage in standard programming applications and especially in newer development such as the cloud application space,” Jeff Hobbs, director of engineering at ActiveState, told InternetNews.com.
While many developers are headed to the cloud, that’s not a conclusion that Hobbs expects that all dynamic language developers will take, however. He noted that nearly 43 percent of respondents had no plans yet for cloud development in the next 24 months.
“You think about the development cycle that a large enterprise has — they can go anywhere from one year to three- to five-year cycles,” Hobbs said. “Our question was asked with a two-year timeframe. So if you have people that have just released applications, it might still be three to five years before they can assess the value of the advantages that might be presented in the cloud.”
For developers, there are a number of differences between developing for the cloud versus traditional deployment methods. Some of the differences depend on the type of cloud deployment being used.
“The differences with Infrastructure-as-a-Service offerings are typically things such as the APIs used to access the storage layer,” Stephen O’Grady, principal analyst and partner at Redmonk, told InternetNews.com. “For Platform-as-a-Service offerings that tend to be far more prescriptive, the differences can be relatively extensive, from a difference in the typical infrastructure software (e.g. databases) to the implementation of the development framework.”
Hobbs noted that since the cloud virtualizes multiple elements of an application deployment stack, including the server, it makes the actual languages used stand out more than they have in the past. He added that he has seen some subtle shifts in dynamic languages that make the languages more cloud-friendly.
“It’s very important that the language developers use already has the library and frameworks already provided and supported,” Hobbs said. “The dynamic languages become an advantage to cloud app development as you’re ready to use all the pieces that you need to use and they’re abstracted in the right way.”
Challenges to Cloud Development
According to Hobbs, the dynamic programming aspects of dynamic languages allow for fast development times as well. There are, however, a number of challenges that still face dynamic language developers. Hobbs noted that having the required tooling for deployment is critical. He added that concerns around security are also a barrier — one that 40 percent of poll respondents identified as an issue.
Redmonk’s O’Grady also thinks that the dynamic languages themselves can evolve to take better advantage of the cloud, though the cloud vendors can help out there, too.
“While there are changes to the language runtimes that could improve their ease of use in the cloud, it’s more likely that changes will come at the framework layer,” O’Grady said. “It’s likely that cloud offerings, moving forward, will increasingly support event-based frameworks to better take advantage of the concurrency that the cloud offers.”