Cloud computing is growing and expanding very fast, demonstrating a strong tendency of being the technology that defines the roadmap for future IT infrastructure. Living on the very bleeding edge of technical development demands constant movement and participation in its processes and not just simple observing.
Enterprise Java has been around for already a long while, passing in it sixth stride. And all the way through it has constantly been modified, the mistakes of its previous versions being fixed with different expert groups, who managed to simplify its usage despite all its complexity along with adding new, more and more interesting technologies. A lot of resource and work has been invested into the process of mastering the Java enterprise by companies as well as independent developers. And with emerging of cloud computing a lot of this endeavor changes, since due to its logical restrictions, cloud computing works in an altogether different way from that the heavyweight Java enterprise works.
Google was the first to provide a free PaaS service – its position being an ideal one for offering cloud services to the public - after having developed a cloud infrastructure for its own needs. The service is named GAE (GoogleAppleEngine), and initially it was serving Python applications only. Now, due to the service’s considerable success, as well as to the undeniable popularity of Java as an open source enterprise-ready language, the GAE service has been expanded to host Java applications, too.
Over the years of its development Java acquired a practice of turning successful projects or custom frameworks into a specification. Google likewise is well aware of best practices and this is the reason why they try to support the existing standards as much as possible, though it is not so easy to do since cloud processing has its distinct restrictions. The convergence of these two technologies and the solutions it brings forth demand a new approach to testing as well, making test true also to Java.
Thus, today the most urgent issue to decide upon is which particles of out Java enterprise experience should be forgotten and which ones should be maintained in order to make Java’s move into the clouds possible and successful.
