The purpose of this post is to outline a technology innovation that will result in reduced cost, faster time-to-market and multiply deployment . The idea of writing code once and running the application in different operating systems was conceived and developed by Sun Microsystems. On the other hand, Microsoft championed the strategy of language choice for developers – Write in any Language and run in Windows platform. It is important to understand that the market share of Java, Objective-C and .NET has grown substantially over the years. The past few years has seen a significant growth in mobile operating systems. There is a growing trend of adoption of smartphones with proprietary operating systems from Apple, Microsoft, Google, Amazon and BlackBerry. The latest version of major OS namely Microsoft Windows and MAC OS X feature app store for the desktop and mobile environments.
The idea of App Stores originally pioneered by Apple and later adopted by other major players including Microsoft and Google. There are about 1.2 million apps (approx.) in Apple, Microsoft and Google Play store each. This reality has created applications with different vendors and developers having to maintain different code bases. Today, if a developer (entrepreneur) wants build an app and target the entire market then he typically needs developers with Java, Objective-C and .NET skill sets. At a minimum processor, disk, memory will be there in any computing device irrespective of its form-factor. This means we should be able to write code in one language and run it any operating system. The dependency on operating system for application should be removed. This can be achieved by developing a model similar to Java Virtual Machine(JVM).
Today, entrepreneurs developing apps will have to invest for each operating environment. If we have a Virtualization Technology as outlined above it will bring down the cost, lower the barrier to entry and fasten time-to-market. This will also enable software makers to offer liberal licensing models. Software developers can iterate quickly and be more agile.
End users can freely decide on their hardware and operating systems without having to worry about application compatibility. They are powered with consistent functionality across operating systems. They have the freedom of choosing/changing operating system without the worry of application compatibility.
Thus in this current technology ecosystem lends itself to a natural evolution of Virtualized Runtime Environment. As we have seen above the benefits of a VRE are tremendous.