blog search
-
most recent posts
post calendar
categories
vmforce – the Cloud thickens
Monday, May 3, 2010 by Neil Ward-Dutton
Last week VMware and salesforce.com announced a partnership to deliver a joint Cloud computing service, vmforce. Any enterprise IT architect or strategist with a serious interest in Cloud computing should take time to dig into it.
Why is vmforce significant? Well, the obvious reason is that the partnership represents an alignment of two of the most effective disruptors of the IT landscape. Salesforce.com disrupted established rules of engagement between business users of technology, IT departments and “old school” application vendors – standing on the shoulders of previous innovators, sure, but breaking the SaaS model well and truly into the mainstream. VMware, meanwhile, disrupted established ways of thinking about computing infrastructure – breaking the ground for development of infrastructures where operating systems in their traditional sense, as well as established patterns of software deployment, are all but written out of the story.
The perhaps slightly less obvious reason is to do with how the technology is put together – and what it might mean for the future of Cloud computing platforms.
There are of course other cloud computing technologies which enable developers to build cloud-based applications in Java – but there are a couple of huge features of vmforce which make this much more than just a Java cloud platform. Having said that, just the availability of Java itself is a big deal for salesforce.com: the proprietary nature of the Apex language and framework gave salesforce.com some big productivity advantages and pulled a band of software vendor partners (like the coda2go team, now known as FinancialForce.com) onto the Force.com platform; but for most IT shops it’s a major unknown quantity and for the large part, enterprise IT developers have stayed away. Meanwhile it’s estimated there are roughly 6 million Java developers on the planet.
So just having Java as part of the story is a big deal for Salesforce.com. But let’s get to the things that make this more than just a Java cloud platform.
The first thing is that all of the elements of the Salesforce.com platform that are available to Apex developers will be available to Java developers using vmforce. First off is the elastic scaling, provisioning and management automation of server capacity that Force.com provides to Apex developers. Then add platform and data security and access to a persistence store (the Force.com database) that delivers integrated user-centred reporting and search.
The second thing is that through SpringSource, VMware brings a sizeable community of interest right to salesforce.com’s door. As countless platform innovators that have come before salesforce.com have found out to their cost, building a platform is very rarely a case of “build it and they will come” – you need to build a loyal community. Getting in the face of the roughly 2 million Spring community members is a great start.
The third thing is the role that VMware’s Spring framework IP plays in this picture, and how the architectural approach of Spring-based Java applications – using a technique called Aspect Oriented Programming (AOP) – dovetails with salesforce.com’s platform features. Specifically, Java developers – if vmforce is released as currently envisioned – will not have to write Java applications to a complex set of Java APIs that wrap salesforce platform capabilities like mobile user experience transcoding, security, and so on. They’ll use the AOP features of the Spring framework to hook into those capabilities declaratively.
In other words, vmforce uses AOP and Spring in particular to deliver salesforce.com’s philosophy of “5x developer productivity” – the key advantage of salesforce’s Apex technology – to Java developers. All of a sudden, 6 million Java developers don’t just have a new cloud computing platform to choose – they have a platform that makes a very rich set of business application functionality available to them with a minimum of fuss.
There’s a bigger landscape in the background of course – the landscape that encompasses on-premise enterprise applications as well as Cloud-resident applications utilising facilities from multiple cloud platforms. Portability of Cloud-based application code has long been a key stated concern for mainstream enterprise IT leaders. I’ll leave this to SpringSource’s Rod Johnson, who explains in his blog:
“Spring is based on a unique set of proven, powerful abstractions that simplifies application code and cleanly decouples it from its environment. Enhanced portability between target environments has always been a key benefit of Spring, and the growing importance of cloud deployment in addition to deployment to traditional physical data centers makes this benefit more important than ever. By building enterprise Java applications with Spring, developers can be assured that their applications can run on their local desktop, in their corporate datacenter and in the cloud without having to compromise their application design.”
Posted in General

