Analysis It has been a decade since Microsoft announced its .NET framework and the Common Language Runtime - where C# and other languages do their frolicking on Windows systems. And thanks to the proliferation of open source programming languages and frameworks, which are the foundations of emerging platform clouds, this could very well be the last proprietary, closed source application framework that the world will see.
The reason is simple: companies want choice in their application development and deployment tools, and they want those choices on many fronts.
As discussed in our earlier article, enterprises will adopt a platform cloud for core applications only when they have the option of running it internally. Also, this should be compatible with or identical to the option that is available as a PaaS (platform as a service) on a public cloud. But that is just one openness vector that will help companies avoid the much dreaded, but sometimes unavoidable, lock-in.
"Our position on PaaS mirrors our position on cloud in general," says Joe Fernandes, senior product manager for OpenShift Enterprise, the commercial-grade, private version of the OpenShift public platform cloud that Red Hat announced in November 2012. "We believe in open, we believe in hybrid, choice, and no lock-in at all layers. So as you might imagine, that goes beyond open source."
Of course, open source is a key means of ensuring openness. So is adopting as many languages and frameworks as makes sense and weaving them into platform clouds so those companies who don't want to manage hardware and software infrastructure (or can't afford to or don't have the skills) can focus on writing applications.
"I worked at Oracle before I came to Red Hat and I have worked on both sides of this issue, both proprietary and open source," says Fernandes. "But I think in this case that open source does bring a few things to the table. It brings no lock-in, and confidence for customers that there is not one entity that can take control over OpenShift or any of our products.
“Any vendor or customer can fork that code and provide their own services and products based on that. Sometimes it is a risk; sometimes you get companies like Oracle exploiting that with a Linux distribution that is essentially based on RHEL. But it is something that we live with because we really believe open source provides the most value."
VMware bought its way into the open source software arena with its $362m acquisition of SpringSource in August 2009. A year-and-a-half later it launched Cloud Foundry, a platform cloud, still in beta, which is based on SpringSource software.
Lock-in? What lock-in!
A cynic would say that VMware is allergic to open source and that is why it has packaged up Cloud Foundry and vFabric (another private platform cloud tool that VMware has built from the Spring framework and other acquired and mostly open source software for caching, database, and other functions) into a new EMC division called Pivotal Labs. But VMware understands that open source is the norm here, despite its own closed source tendencies.
"It is almost by nature now that anything targeted at developers is going to be an open source technology," says Jerry Chen, vice president of cloud and application services. "There hasn't been a new proprietary framework or language built in the past ten years."
One reason for open source is just that developers like to solicit help and then get help from others as they try to solve problems, and the best way to do that is to go open source. New programming languages and frameworks were invented precisely because there issues with J2EE and developers wanted to be able to quickly create and deploy mobile or Web applications. So, open means agility and speed.
Open source also means that languages and frameworks help companies avoid the dreaded lock-in. "Nobody wants to go back to that AS/400 world where you had this really nice beige box appliance that worked, but all of your data was poured into that and kind of stuck," says Chen.
Vendors like us are making it safe to go in the open source waters
Not everybody is quite as enthusiastic about open source platform clouds as Red Hat is with OpenShift and VMware is with Cloud Foundry. Engine Yard, which created a platform cloud to run Ruby and now other languages such as Node.js, uses open source to build its PaaS, but it is not going to open-source its complete stack.
"One of the things that the cloud is doing is making the world a better place for open technology," says John Dillon, CEO at Engine Yard. "I wouldn't say that the cloud is all about open source, but there is a ton of open source in there, and what happens is that vendors like us who are spinning up an infrastructure or a platform are making it safe to go in the open source waters. Open source is getting legitimacy that it hasn't had."
So it might be ironic that Engine Yard, which benefits so much from open source, is not opening up its eponymous platform cloud.
"We contribute to around 40 open source projects around here," brags Dillon. "We think our value add is around the complexity and integration of all these different piece parts. We select the pieces and then integrate them, optimize them, and harden them. And that is not what we are going to give away. We're going to keep that. But if you wanted to take all of those pieces yourself and run them because you think you can do a better job of it, that's the promise of open. If we do a really good job, I can give you a better stack that performs better at a lower cost, and when and if I can't do that, then I have a big problem."
Open is not just about code, but about adding more languages and frameworks to a platform cloud as they are adopted. New languages such as Ruby, Node.js, and Scala were created with specific frameworks, but programmers do not code in only one language; and a platform cloud has to be polyglot.
OpenShift can support Java, Ruby, PHP, Perl and Python (thanks to the runtimes supplied by JBoss for Java and Red Hat Enterprise Linux for the others), and Cloud Foundry supports Java and Ruby with third parties who have forked the code and provided support for Python and PHP and working on extensions for .NET and other runtimes.
VMware’s problem – and very likely one of the problems that the Pivotal Initiative was created to solve – is getting all of these forks of Cloud Foundry lined up and pulling in the same direction, if that is even possible.
VMware has taken so long to commercialize its own Cloud Foundry project that ActiveState, AppFog, Tier 3, and Uhuru Software have gotten the jump on it and not only added languages to the frameworks that underpin their platform clouds, but have also certified them to run on a wider array of internal infrastructure clouds (like OpenStack) and have also certified it on more public clouds, too. That said, VMware and parent EMC has so much cash and so much influence in the data center that once it does get public and private versions of Cloud Foundry out there they should be able to quickly catch up and surpass these competitor/partners.
But that does point out one other important feature that comes from open source with regards to platform clouds: Community.
"We firmly believe that the open source model is what drives the quality, reliability, and innovation that you see in our products because the more people you have working on something, the more you open it up to this broad ecosystem, you can't help but get a better product as the outcome," says Fernandes. Our focus is not doing all of the development ourselves, but bringing all of these contributions together. If you look at Red Hat's commercial products, then the ones that stand out as the big commercial successes are also the ones that have big open source communities behind them."
With closed source software, whether it is an operating system, an application server, or a platform cloud stack, if there is something wrong all you can do is complain to the vendor. With open source, you can complain to the community and the commercial entity that supports it, and you can also roll up your sleeves and help. ®