The purpose of this post is to outline a technology innovation that will result in reduced cost, faster time-to-market and multiple deployments. 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 on 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 to 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 on 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 the operating system for the application is removed. This is 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 faster time-to-market. This will also enable software makers to offer liberal licensing models. Software developers can iterate quickly and be agiler.
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 the benefits of a VRE are tremendous.