Almost three years ago, ZeroTurnaround launched support for development in the cloud. We called the feature “remoting” because it allows the JRebel plug-in to be installed on a JVM that can be anywhere, including in the cloud. With this feature enabled, the java developer happily codes away on her local IDE and can see changes instantly from the remote server. No redeploy time wasted, and all the economic advantages of using cloud-based infrastructure.
Back then, people were still sorting out the differences between IaaS, PaaS and SaaS. Now, newer concepts such as Backend-as-a-Service (“BaaS”) have emerged. With everything moving so fast, there was and is lots of hype and confusion, but it was becoming increasingly clear that the cloud offerings were being used for the deployment of production software. The idea of wide scale use of the cloud for development was still in the category of “vision” or “roadmap.”
So, starting back in September at JavaOne in San Francisco, our curiosity got the best of us and we decided to start asking our developer friends if they are using the cloud. We circulated a survey to attendees at JavaOne. We got almost 450 responses with the following profile:
- 76% were not ZeroTurnaround customers;
- 87% were building web apps, and
- 85% were working in Java 6 or Java 7.
When we asked them if they were using cloud-based services, 30% responded that they were. The vast majority of those (and 23% of the total) were using Amazon Web Services (AWS or EC2) but some were already using the relatively new cloud services from IBM BlueMix, RedHat OpenShift, SAP Hana and Pivotal CloudFoundry.
We were intrigued by the results. We speculated that a material percentage of serious Java developers (who generally build serious applications with significant scale and performance requirements) were beginning to take advantage of the cloud.
We began to wonder how many of those cloud-using devs were actually doing their development in the cloud, as opposed to developing locally and deploying their production code in the cloud. We decided that we were in a fairly unique position to find out. After all, JRebel is used actively by approximately 65,000 developers at over 5,200 businesses in 87 countries around the world. These are serious java devs doing cool work. The redeployment delays that plague java developers are even more problematic for cloud development because of latency and other technology limitations. It makes sense that they would want JRebel if they were doing active development on the cloud in order to eliminate these wasteful redeploys and stay in the zone. We wanted to know if they were actually using cloud computing infrastructure for active development.
It turns out that they are. We expected the numbers to be lower than our JavaOne survey because JRebel customers tend to work for enterprises that have more restrictions on using the cloud. However, the numbers were still material. The survey happened in January 2015, and, as with the JavaOne survey, we received around 450 respondents; but, this time:
- 98% were JRebel users; and
- 27% told us that they are using the cloud.
Most of them are using Amazon Web Services (14%), but it is clear that devs are starting to use offerings from middleware and PaaS vendors. The leading cloud solution after Amazon was RedHat OpenShift in our survey of JRebel users.
Encouraged by this information, we wanted to go one step deeper. Are JRebel developers actively developing and deploying software on the cloud? The results:
- Thirty percent (30%) said that they deploy when a feature is more or less ready,
- 7% deploy with every commit, and
- 3% with every change.
Deploying with every commit or every change is pretty painful without JRebel, so we were happy to see that our customers were enjoying the benefit of cloud computing in this way.
Our conclusion… development in the cloud is a real thing. Developers are looking for solutions to deploy their code on the cloud. Amazon is the clear choice for infrastructure today, but the middleware and cloud services vendors are getting a look. Productivity tools, such as JRebel, that eliminate delays in the cloud development process will be critical enablers.
With so much hype around cloud, we are happy to have some real numbers. We love to share, and we hope that this helps at least a little bit in your evaluation of cloud solutions for development of software. Thank you to everyone who participated in our surveys, and we hope you’ll participate again when we come back around later this year to see how development in the cloud is evolving.