I don't remember who said it, but I once heard that "Cloud Computing is economically inevitable". This may sound like an over-enthusiastic claim made by cloud vendors eager for our business. But, the more I think about it, the more it looks like a true statement. It is also a scary one! Cloud Computing is a powerful idea. Vendors created impressive infrastructures that already have huge, positive impact on developers and companies. But, it also concentrates computing power in the hands of a small number of players. And we've seen this happening in other infrastructure areas, and the negative results it can bring.
It is not an accident that vendor lock-in ranks high among the concerns when considering Cloud Computing. If Cloud Computing is indeed economically inevitable, the only way that we can have a healthy system is with strong and widespread competition. And for that, we need to be able to choose, and then, some time later, we need to be free to choose again. That is why our choices for application development need to reduce vendor lock-in from the start.
Several Cloud Computing concerns have vendor lock-in as the underlining issue. If we're locked-in to a supplier, we need to wonder if it will be around for a long time, so we have to worry about longevity or credibility. Government regulations and location of data and code execution is another common concern. Applications in the Cloud can run anywhere. If we can't move to a different vendor, regulations from governments or changes in customer needs may prevent us from doing business. Being able to walk away from a vendor, either to another one or back to your own facilities, is an important exit strategy. All this shows that we need to be able to choose a vendor now, and then able to choose another vendor down the road. This is a fundamental prerequisite that will allow us to move into "the Cloud"
Solving vendor lock-in is a major advantage for a technology. Java showed that when it arrived in the computer scene. Not surprising. Creating code and products is one of the most important assets that a company has these days. One of the major benefits that Java Technology brings is its platform and vendor independence. Java's promise of "write once, run anywhere" was always about breaking vendor lock-in. From hardware platforms to databases. From virtual machines to application servers. From IDEs to frameworks. The Java ecosystem has always thrived on many choices. Neither the consolidation that happened among vendors nor the powers that Oracle acquired did diminish this benefit. In fact, what the last few years show is an increase in the options developers have when using Java.
And now we see this power of choice in action where the coffee meets the cloud. Java Technology is today considered a prime language in almost every cloud provider. Higher abstraction platforms like Java EE and Spring are the cornerstone of the majority of cloud vendors. Java's portability is a reassuring ally in your cloud strategy.
On the other side, cloud vendors want to show they are a safe choice. To convince enterprises and startups to make the effort, and climb the beanstalk towards the cloud, vendors need good answers for those concerns. Making sure customers have an exit strategy and are not locked-in is a great way to make them come and stay. The safer choice the vendor wants to be, the more compatible and standards compliant it needs to prove itself. Java plays an important role here, and many vendors are using Java to show how easy it is to bring existing applications to the cloud.
Vendor and cloud independence is a worthy goal, pursued through many ways. Apache jClouds, Cargo, Open Shift Cartridges, Docker are just a few examples of open source projects that foster cloud independence. Providing ways to deploy Java applications to many vendors helps everyone. Cloud providers attract more developers. While more competition creates a powerful, compatible and widespread ecosystem. The combination of Java, application servers and cloud independence tools may not be perfect. But they provide a level of freedom of choice that is workable in real world projects.
And this is where we get to Jelastic. Among the many cloud vendors, Jelastic has an interesting business model. Focused on standard Java and Java EE environments, the service allows applications to run unchanged. From internal infrastructure to a cloud environment is an easy migration. More interesting, Jelastic is a community of partners. Data centers across the globe provide the computing capabilities to run the platform as a service offering. You get a choice of different vendors, in several locations and regulated by different government and laws. But you also have the freedom to take your application back to your premises or even to other vendors that support Java.
The freedom to choose to leave is why you can confidently choose to stay. It reduces concerns and increases competition. This is the power of the Java ecosystem. The power of choice.
Bruno Souza is a Java Developer and Open Source Evangelist at Summa Technologies, and a Cloud Expert at ToolsCloud. Nurturing developer communities is a personal passion, and Bruno worked actively with Java, NetBeans, Open Solaris, OFBiz, and many other open source communities. As founder and coordinator of SouJava (The Java Users Society), one of the world’s largest Java User Groups, Bruno leaded the expansion of the Java movement in Brazil. Founder of the Worldwide Java User Groups Community, Bruno helped the creation and organization of hundreds of JUGs worldwide. A Java Developer since the early days, Bruno participated in some of the largest Java projects in Brazil. Bruno is also Director of the Open Source Initiative (OSI), President of the innovation-focused Campus Party Institute, and Coordinator of Nuvem, the Cloud Computing Lab of LSI/USP. When not in front of a computer, Bruno enjoys time with his family in a little hideout near São Paulo. An amateur in many things — photographer, puppeteer, father — he strives to be good in some of them.