Table of ContentsChapter 1.            J2ME HistoryJava's Growth in the Sun

Java's Acorn

In early 1995, Sun released an alpha version of a new software environment dubbed Java. During the first six months after Java's release, the industry spent most of its time making bad jokes and puns about coffee beans and Indonesian islands. (Is it just irony that there is great surfing around the island of Java?) It didn't take long, however, for the "Write Once, Run Anywhere" call to arms to be taken up. Slowly and inexorably, Java began its march to the top. But before I rush off into Java's glory days, I want to take a brief look at Java's history.

The earliest traces of Java go back to the early 1990s, when Sun formed a special technical team tasked with developing the next wave of computing. After one of those 18-month, secret-location, round-the-clock, caffeine-driven geek-festssounds like a game development project, if you ask methe team emerged with the results: a handheld home-entertainment device controller with an animated touchscreen interface known as the *7 ("star seven"). Figure 1.1 shows *7. And most importantly, the team created a little animated character named Duke to demo their creation. Wowunheard of!

Figure 1.1. The original *7 device developed by Sun

graphic/01fig01.gif


Now that a decade has passed, I wouldn't really call *7 the next wave of computing, but heythey didn't even have the Internet or mobile phones, let alone the Internet on mobile phones.

The real action, however, wasn't with the device; it was with the back-end technology that powered it. One of the requirements of the project was an embedded software environment that was robust hardware-independent, and that facilitated low-cost development. Enter the hero of our story, James Gosling, a Canadian software engineer working with the team.

Taking some of the best elements of C++, while excluding the troublesome memory management, pointers, and multiple inheritancealong with concepts from the early object-oriented language SIMULAJames created a new language dubbed Oak. (It was named after a tree outside his window. I wonder if an Indonesian island appeared outside his window sometime later, in which case I think he should really lay off the Jolt for a while.)

Oak's power wasn't only in its language design; there were plenty of other object-oriented languages. Oak blossomed because it encompassed everything. James didn't create a language and then let other people implement it as they saw fit. The goal of Oak was hardware independence, and with that in mind he created a complete software deployment environment. From virtual computers to functional APIs, Oak providedand, more importantly, controlledeverything.

Unfortunately, *7 floundered around like a legless cow in a butcher shop until 1994, when, during a three-day, non-stop, mountain retreat geek-fest, James (along with Bill Joy, Wayne Rosing, John Gage, Eric Schmidt, and Patrick Naughton) saw a new opportunity for their acornthe Internet.

Around the same time, that new-fangled Internet thing was emerging as a mainstream technology. The World Wide Web was being used to transfer and display digital content in the form of pictures, text, and even audio almost universally on a variety of hardware.

The goals of the Web were not dissimilar to that of Oak: provide a system to let you write content once, but view it anywhere. Sound familiar? Oak was attempting to do the same thing, but for programming. Imagine if the Internet were used as the framework upon which Oak software could be distributed and universally deployed. James and his pocket-protected buddies were on to something big.

    Table of ContentsChapter 1.            J2ME HistoryJava's Growth in the Sun