"Cloud is the new hardware" is one of my favorite catchphrases of the moment. The idea that we can assume a fully automated, wildly scalable compute, storage, and network infrastructure is game-changing. But this applies just to the IaaS (infrastructure as a service) layer of the cloud. What's the capsule description for PaaS (platform as a service), the layer immediately above IaaS?
I think "PaaS is the new app server" does the trick. Like the Java application servers of yesteryear, PaaS delivers a service-rich, highly available dev, test, and deploy environment, plus a big dual bonus: cloud scalability and (in most cases) support for multiple languages.
Many PaaS offerings run exclusively in the public cloud, including Amazon Elastic Beanstock, CloudBees, Force.com, Google App Engine, Heroku, and Windows Azure -- not to mention such MBaaS (mobile back end as a service) plays as Parse. But the users of PaaS in the public cloud tend to be agencies or independent software developers that build and deploy public-facing Web or mobile apps.
The real story is that PaaS software -- deployed and maintained on premises -- is taking enterprise dev shops by storm. From what I'm hearing, enterprises are busily rolling out such open source PaaS solutions as Pivotal Cloud Foundry and Red Hat OpenShift to help get their dev houses in order, up to and including the development of core apps that power the business.
Now, both Cloud Foundry and OpenShift are available in the public cloud as well. But in a recent conversation with James Watters, head of product for Pivotal's Cloud Foundry, I was emphatically told:
Our business is 99 percent selling software and 1 percent hosted Cloud Foundry. This is as much an evolution of the whole middleware market, where people are examining the investments they made in things like Oracle and WebLogic maybe 10 years ago. They're saying: "We want a new set of middleware for the cloud era."
Why does PaaS provide the answer? For one thing, it offers a scale-out architecture. Like relational database servers, old-fashioned application servers are "scale up" -- you must upgrade a single server (or a carefully maintained cluster) to add capacity. By contrast, like NoSQL, PaaS is "scale out" -- that is, to scale, you simply add commodity servers. Plus, it's fully replicated by design, so if a server fries, you just lose a little performance until you snap in a new one.
The other big benefit is support for applications written using a variety of languages and frameworks. Cloud Foundry, for example, supports Java, Node.js, and Ruby; so does OpenShift, but it also adds Perl, PHP, and Python. Note that, in the past, applications written in some of those languages were not exactly known for their high availability, but the scale-out architecture of PaaS changes all that.
Lucas Carlson, chief innovation officer at CenturyLink and the founder of AppFog, elaborated on this point when I interviewed him last week:
The prevalence of things like Node.js and PHP and Ruby and Python can't be ignored. If you want to keep up with the pace of innovation in the modern enterprise ... you can't just build everything in Java anymore. And if you can't build everything in Java, how can you keep some of those great ideas that Java had originally -- things like write once, run anywhere? That concept is very similar to what platform as a service brings to a wide variety of technology.
Another benefit to PaaS in the enterprise, says Carlson, is governance. Outside of Java and .Net, app dev in large organizations has a tendency to be all over the place; PaaS enables you to enforce the same app dev policies and procedures across languages and frameworks.
For the so-called private cloud, dev and test have always been the big win, so the ascendance of on-premises PaaS makes tremendous sense. Not just more applications, but a greater number of reliable, better-crafted applications delivered faster can benefit any business. Down the road, since PaaS solutions like Cloud Foundry and OpenShift are available in both downloadable and public cloud versions, the path toward a hybrid cloud future becomes a lot more real.
This story, "How PaaS is changing enterprise app dev" was originally published by InfoWorld.