“Don’t bet against the cloud.” – Matt Thompson, General Manager, Developer & Platform Evangelism, Microsoft
Matt Thompson is a General Manager of Developer & Platform Evangelism at Microsoft. Based in Silicon Valley, he and his team look after the “care and feeding” for the communities of developers, startups and IT Pros across the western US. Prior to joining Microsoft, Matt worked for several years on developer tools — debuggers, compilers, etc. — at Sun Microsystems. He then cut his teeth at a couple of startups before landing back at Sun just when Java was being released for the very first time. Matt led the group that drove Java adoption worldwide for 12 years. Even before the term “Cloud Computing” became popular, Matt was involved at Sun with grid computing, utility computing, and more recently lead part of a large cloud engineering group — which focused on several things including how to componentize large servers and how to build a Platform-as-a-Service— along with his other responsibilities in developer tools and Java evangelism.
I spoke with Matt about the evolution of Platform-as-a-Service (PaaS) and Microsoft’s cloud strategy. Matt explained what is exactly meant by Microsoft’s “Services plus Software” and Steve Ballmer’s “We are all the in cloud” messages. He shared valuable information about current and future product-line strategies and roadmaps and how they align with Microsoft’s overall cloud vision.
Here are some excerpts from the conversation:
Where are the drivers behind the evolution of Platform-as-a-Service and how do you see this market evolving?
Matt Thompson: If you look at the cloud market today, you will see some companies building private cloud components and some companies building just public clouds. I believe Microsoft is the only company with the most complete cloud vision that combines all layers of the cloud stack and also offers a number of flexible deployment options.
It all began with Software-as-a-Service (SaaS) introducing a pay-as-you-go consumption model, which is great but it is hard to get the economics and quality-of-service exactly right. You could end up building too much or too little infrastructure, thus spending too much on infrastructure or compromising on your quality-of-service. Building a perfect SaaS model with all the attendant economic benefits, quality-of-service, multi-tenancy, pay-as-you-go pricing, etc is interesting, but invariably customers will come up with something else they need. For example, they might want to build on top of those services, add something to the side, or integrate with some other proprietary services. That’s when you start thinking about Platform-as-a-Service. If you just have SaaS or Infrastructure-as-Service (IaaS), that’s an incomplete business model without the PaaS component.
I clearly see the industry moving in the direction where PaaS becomes the sweet spot. Almost every cloud company will find that they will be driven by customer and market forces to move in that direction. Examples abound in the industry. Amazon started out as a pure IaaS player and if you look at the new services they are offering, they are clearly starting to look more like a platform. VMware with their recent acquisitions (Springsource) are looking to build a more complete platform than just staying with the virtualization play. SalesForce is rapidly making the transition from a pure SaaS (CRM) company to more of a PaaS player with their Force.com platform.
At Microsoft, with Azure, we see PaaS as critical piece because that’s where we can attract the developers and the ecosystem around them. I came to Microsoft because I think Azure is the next great platform that developers can build interesting applications with new business models.
How mature are the current PaaS offerings in the marketplace and how are companies adopting the technology?
Matt Thompson: I think Platform-as-a-Service is still early. We have seen Salesforce go from a pure SaaS CRM company to more of a platform player where many of its CRM customers (and some ISVs) are building applications around their Force.com platform. If you are a small business and are looking to extend your Salesforce CRM functionality, for example, one of the very first things you would look at is the Force platform because the cost efficiencies and time-to-value are too compelling to ignore.
The adoption of PaaS will be mainly driven by the developer ecosystem which builds interesting applications and that in turn will generate demand for the PaaS to grow. I think larger enterprises will lag behind the SMB market in PaaS adoption. That said, in the Microsoft Azure case, we are starting to see some major Fortune 500 companies developing significant applications. For example, as one of the early adopters, Coca Cola began by experimenting with Azure early on. Now they have gone all the way from a prototype to a full solution where they make data available to their distributors. Domino’s Pizza did the same kind of thing.
So we are starting to see some adoption within larger enterprises. However, we won’t see classic enterprise apps moving completely to PaaS, rather we will see a lot of new development happening there. That trend is inescapable and will continue for the next several years. Eventually we will see a tipping point where we will begin to see some large Enterprise Applications — which you would normally expect to see in the data center — running in the cloud.
What is the meaning of Microsoft’s “Software + Services” and Steve Ballmer’s “We are all in the Cloud” messages?
Matt Thompson: The services piece of the statement refers to the public cloud. At Microsoft, we built a large instance of the public cloud through Azure where we run most of our own internal services including exchange email, hotmail, etc. and also host these services for our customers. We already have pieces of Microsoft Office 2010, etc. running in the cloud. Those are all services in the SaaS space. When you look at PaaS, the public instance is Windows Azure. We are working actively with our partner community to drive broad Azure adoption through our ISV base. We are also working on providing Data-as-a-Service where we make very large amounts of valuable data available (similar to data.gov) in the cloud and more importantly build a marketplace around it so that any data provider can build a new revenue stream around the valuable data they may have that was locked away and vaulted for years.
The software piece of that statement refers to the private cloud. To us, a private cloud is taking the exact same technology in Azure and delivering it to our customers for use within their own datacenters. We do that in two ways: one way is through an Azure appliance we recently announced, and the second way is through packaged software.
The Azure appliance is essentially a cloud in a box that large government agencies and enterprises can use within their own firewall to run sensitive applications which they can’t otherwise run in a public cloud due to security, data privacy, compliance, or regulatory reasons. In fact, the Azure appliance is a mobile container that can be shipped around easily and can be used to augment an existing datacenter. The appliance is a perfect solution for those companies looking to add extra capacity to their data centers — no matter where there are located — during certain peak demand days that occur during the month or year. It’s not inconceivable that these appliances would be made available for lease by our distributors and partners in the not-too-distant future.
As we go forward, when customers upgrade to our upcoming versions of Windows servers, SQL servers, Hyper-V virtualization, and cloud management technologies, they will be running the same underlying cloud technologies that Microsoft is running in their public cloud. The Platform piece of Azure gets bound into Windows server and SQL Azure gets bound into the SQL server.
Then we have AppFabric which is coming soon for the server software which allows you to easily manage the virtualized components of your applications. By this summer, we will have better virtualization capabilities in Azure making it extremely easy to move virtualized instances of your application back and forth between your data center and the public Azure instance. For example, you can build an application on the public Azure platform and then easily deploy it into full-scale production within your datacenter.
Microsoft, to my knowledge, is the only company that is delivering private cloud infrastructure that matches its public cloud instance. This is the cloud-based product line strategy for the entire server infrastructure. We have really aligned our entire software licensing and software strategy to the cloud and this is the real meaning of Steve Ballmer’s message “we are all in the cloud.”
How is Microsoft enabling hybrid clouds for its customers?
Matt Thompson: There are times when you want to run some pieces of the application (for security, regulatory or locality reasons) in your own private cloud in your data center and some other less critical pieces of the application in the public cloud. With our Azure private and public cloud capabilities combined with Appfabric, we could easily take your application running in your private cloud and extend it on the fly to the public cloud. The public cloud could be Microsoft’s own cloud or other clouds that our partners and hosts may build using our infrastructure. This kind of capability is what we refer to as the “hybrid” cloud.
The technologies for managing and extending pieces of the application on multiple external clouds will be built into our system center, which is our management framework. It’s essentially a new version — which we will release shortly — of the same software you use today to manage SQL and Windows Server. All of these capabilities are on our roadmap for the next twelve months and you can gain access to these simply by staying current on the Server versions.
We are also very much focused on enabling our partners, resellers, and ISVs to acquire the necessary expertise to help enterprises take advantage of all the cloud capabilities. We are starting to see job descriptions such as Cloud Administrator, Amazon Container Manager, etc. There are new skills that are needed for management of the cloud infrastructure depending on the complexity of the cloud vendor’s offerings. At Microsoft, one of our guiding design principles for Azure was to make it extremely easy to administer and manage and you will see it become even better as we add the virtualized container technology and the integration with system center this summer. We are very focused on reducing the management overhead of the cloud, and I believe Microsoft will lead the way on this compared to other cloud vendors.
Also on the platform skills side, today we provide run-time containers for php, Java, and .Net, which means that millions of professional programmers out there that currently have skills in any of those technology stacks can now use Azure without having to learn any new technologies and immediately take advantage of all the cloud benefits.
How does the Azure platform contribute to developer productivity and agility?
Matt Thompson: The direction in which PaaS is moving, we will soon have developers developing software applications in the cloud for the cloud. At Microsoft, enabling this is clearly on our long-term product roadmap. We are building technologies, which will make it easy for geographically disparate workgroups to work together to deliver software through the cloud. Essentially, I’m talking about putting the entire Application Lifecycle Management (ALM) in the cloud, i.e. project teams will be able to develop, test, and deploy applications entirely in the cloud. This will significantly reduce the overall time it takes to deliver completed applications. In particular, test and build cycles are reduced dramatically because you can create multiple virtualized test, scale, and load environments very quickly in the cloud thus decreasing the overall time to run automated tests and producing test results faster. Of course, you consume compute and storage resources only when you need them during the testing cycles of your project, thus saving costs that you would otherwise incur with idling resources.
What is your take on lock-in and interoperability of clouds?
Matt Thompson: I’m going to speak from a developer perspective, which I think drives a lot of the innovation. With the Ruby, php, and Java support, we essentially weaved into Azure the latest Web 2.0 and cloud innovations. We wanted Azure to be inclusive and capable of running many of the technology stacks as first class citizens because we see clearly different types of technologies are required to build different types of applications.
Things can get interesting when we talk about Data-as-a-Service. Although people claim that data is always portable, the reality is that once the data is on a particular platform, it’s quite hard to move it out of there. CIOs have to think carefully about their data and what their backend really is in the cloud. There is still a lot of work on the vendor side around researching what data technologies make the most sense in the cloud. In many cases (particularly read dominated Web applications), there is no real need for a heavy-weight full featured database in the cloud. A lot of investment and engineering work is needed to get this all fleshed out in the next several years.
I think we will see emerging interoperability language run-time standard for PaaS environments, but I don’t think we will see data standards. That’s where the real lock-in is.
Any closing thoughts for developers (ISVs and Enterprises) considering the move to cloud and the Azure platform?
Matt Thompson: Microsoft is very bullish about future of the cloud. I think that Windows Azure is the most complete—and open—cloud environment. With the release of Visual Studio 2010, we also have some of the best and easy-to-use developer tools for the cloud. The tools are so flexible that developers can actually build for Azure without actually being connected to Azure. We provide a local Azure environment instance which you can upload back to the public Azure instance.
Stay tuned, as the updates we deliver late this summer will take our cloud capabilities to a whole new level. The question, “Is the cloud real?” is not really valid anymore. Clearly the cloud is here to stay for the next generation of computing. I would definitely say: “Don’t bet against the cloud.” That’s like saying, “Don’t bet against the Internet” back in 1997.
Kamesh Pemmaraju heads cloud research at Sand Hill Group.