Source: n + 1
In 1991, James Gosling wanted to design a new computer language built, especially, for small consumer devices. He wanted to be able to write the code once and then run it on a number of different chip platforms. The large variation of chips for embedded devices made it impossible to write an application which would run on the various chips. James's vision was to create a virtual machine that ran a common bytecode across multiple chips. Thus all that was necessary was a virtual machine engine for each chip set and OS, and the applications would run across all of them. This was the birth of Java's "Write Once and Run Anywhere" mantra.