The landscape of the application development platform is divided into two – .NET and Java. When Microsoft announced .NET a decade back, I expected that they would officially come out with an Application Server to compete with the Weblogic and the Webspheres of the world. But Microsoft’s pitch has always been that Windows Server has it all! Every instance of Windows Server can be enabled for an ‘Application Role‘ which includes Web Server (IIS), Development Runtime (.NET), Enterprise Services (COM+), Message Queuing (MSMQ) and Web Services (WCF).
Borland (Borland ES), IBM (WebSphere), Sun/Oracle/BEA (Glassfish, OC4J & WebLogic), Redhat (JBoss), SAP (NetWeaver) and others like Apache (Geronimo) created a niche market for J2EE Application Servers offering the application services running within the Java context. Any enterprise customer deciding to deploy an Application Server will first zero-in on the development platform. If it is Microsoft, the choice is simple; it is Windows Server. But, if the enterprise application is Java based, then there are quite a few Application Servers to choose from. So, the Application Server market is primarily divided between .NET and J2EE.
Fast forward this to 2010 and I feel this is pretty much repeated in the Cloud within the PaaS landscape. After announcing a partnership with SalesForce.com, VMware has made another huge announcement at the Google I/O event. Google App Engine now supports Spring framework powered by VMware! I always complained that Google’s App Engine is limited in its capability and the massive re-factoring that has to be done for porting an application to GAE. With Google and VMware springing (pun intended) the surprise, both these concerns are addressed. Now any Java developer can download and setup the Spring environment on his/her machine and then target Google App Engine for deployment.
When I first read about VMware’s Open PaaS vision, I have to admit that I didn’t take it too seriously. But now that they are on a signing spree with the partners to support Spring on their respective Cloud environments, it looks very promising. Every Java developer can now choose to deploy either on SalesForce or Google App Engine. I have a feeling that VMware is talking to IBM, Oracle and others who have the potential to make it big on the Cloud. What is more exciting is that the enterprises can setup a Private Cloud running on VMware’s VSphere running the same PaaS and then deploy and switch across multiple Cloud vendors. If VMware succeeds in convincing every major Java PaaS vendor to support Spring, it can safely claim to have created an Open PaaS platform. Spring insulates the Java Cloud applications from the underlying PaaS and brings in portability. This delivers the much talked about Cloud Portability at least in the Java PaaS environments.
Five years from now, the PaaS world would be again divided between Microsoft (Windows Azure) and rest of the world (Java PaaS potentially powered by Spring).
source : Janakiram (Microsoft)