Web applications have strongly influenced development decisions in recent years and this will remain true as teams move to the cloud with Platform as a Service (PaaS). As a result, development languages
As they move forward, some applications managers are looking for faster, easier ways to build social applications that quickly and effectively reach large segments of their customer base. Others are looking for more productive application development methods. Still others are looking for more flexible scalability or a more cost effective way to make their systems scale. These various motivations bring several languages into consideration.
While Java is a major force in Web development, it is sometimes seen as cumbersome. Therefore, some non-Java languages are also being used where productivity and ease of development are important - languages and frameworks such as Ruby and Ruby on Rails, .NET and C# and PHP. All of these have played roles in early PaaS implementations.
PaaS is evolving to become the design center of the application development process, according to Byron Sebastion, CEO at Heroku. His company used Ruby to build one of the earliest cloud computing offerings. Heroku was purchased in December of 2010 by Salesforce.com, and continues to exist alongside Force.com.
Sebastian says that many developers began using PaaS as simply a deployment tool, but have actually started to develop directly on the platform from beginning to end. The change, in Sebastian's view, is due to the advantages of developing, testing, deploying, and iterating all in the same place.
Heroku's association with the Salesforce.com ecosystem may have made it a bit of a target. Some competitors contend that the Force.com platform doesn't easily tie into legacy systems or even new systems from major third-party vendors, which suggests large enterprises may have difficulty deploying Force.com apps and tying them into enterprise architecture. Still, Force.com has excelled at supporting customer-facing marketing apps that are built quickly, and more recently shown competence in deploying social media.
Enterprise organizations are likely to use whichever cloud provider provides the best services for their organization, whether it is CRM data from the likes of SalesForce.com or a lower-level infrastructure provider like Amazon Web Services, says Andi Gutmans. Gutmans was instrumental in authoring the core of PHP versions 3 and 4 and cofounded Zend Technologies which partnered with Rightscale, a cloud computing management services provider, to provide a PHP-enabled PaaS. This union in turn benefits from a number of partnerships Zend has forged with leading enterprise vendors such as IBM and Microsoft. Hooking Web applications to enterprise back-ends is a major Zend goal, especially where cloud comes into play.
"The services are at the heart of the cloud," according to Gutmans. "It's really all about mobile devices and Web browsers that are connected by services from the cloud."
Meanwhile, for .NET shops, Microsoft's offering is Azure. "It is designed primarily for use with .NET development and tied directly into Visual Studio," says Roger Jennings, principal, OakLeaf Systems.
"When you install the Windows Azure SDK, it installs a local emulator for the cloud version and it uses a local SQL Server Express database as the database emulator." According to Jennings, the Azure experience right now with Azure "is Windows server 2008r2 with many modifications for multitenant use as well as increased security, availability and interoperability of stored data." Which means, for .NET shops, moving to the cloud may not take much in terms of retraining your developers to make them cloud-ready.
What are your thoughts? Email us and let us know.