Java. Go ahead, say it. It's rolling off everyone's tongue these days. "Java" is in the new stable of buzzwords inspired by the public's rapidly expanding awareness of the 'net. While used much, this word is understood little. Java is a programming language, created by Sun Microsystems, Inc. In their own words, Java is:"...a simple, robust, object-oriented, platform-independent multi-threaded, dynamic general-purpose programming environment. It's best for creating applets and applications for the Internet, intranets and any other complex, distributed network." (1)
Eeek! Buzzwords defined by buzzwords? Even JavaSoft admits to this. To get a real idea of what Java means to the 'net requires a little history.
Originally, when the Internet was young (and known by another name - the ARPANET), the only way to get things done was to connect "dumb" terminals to the only available computers -- mainframes. Because the typical user did not possess the resources to own and manage their own mainframe, they were limited to "buying time" on someone else's machine. The computers of this era were gigantic time-sharing devices carefully monitoring each user's ongoing "accounts". Because the responsibility for all of the processing and storage lay with the mainframe itself, each of the many users only had a small slice of the pie at any given time. With a great number of people using the resources simultaneously, these machines would slow to a crawl.
The advent of the personal computer in the seventies changed everything. As demand soared, individual computing power rocketed along hand-in-hand. With ever more affordable computing power available to the average user, personal computers quickly became far more economical than their lumbering parents. Although not immediately apparent, this was to irrevocably alter the nature of networked communications.
With each user able to muster the processing and storage resources to meet his or her needs, much of what was previously farmed out to the "big iron" was accomplished within the confines of an individual's workspace. However, as businesses soon realized, the balkanization of information quickly degenerated into chaos. With a hundreds of different copies of vital documents circulating in the workplace, it was difficult to coordinate efforts and prevent work duplication. Thus was born the local area network. Pleased with this new development, computer assisted productivity again soared.
By this time, "normal" people had begun discovering the international computer networks that had long existed in relative obscurity. From humble beginnings as an academic and research oriented mail routing mechanism, the Internet grew into the infinitely tangled web of today. With fingers reaching into a growing number of households across national borders, the 'net has come into its own. The tremendous number of users accessing information has strained the existing resources, causing endless cascades of capacity only to be filled as demand continues to exceed supply. With such facility as currently exists, a new paradigm evolved -- that of client/server. In order to relieve the stress on the information servers, some of the processing responsibility was passed on to each individual's computer in the form of "client applications".
It is at this stage in the evolution of computers that we see where Java seems to sit. In the current age of precipitously increasing bandwidth, it has finally become possible to supply "on-demand" client-based micro-applications -- or "applets", as they have come to be known in Java parlance. These applets are small interchangeable chunks of programs that can be easily utilized across computer platforms to perform operations on proprietary data. This means that almost any organization has gained the ability to collate and present their own product, information, and/or services with the virtual certainty that those partaking of their information will be able to do so. Self-publishing reaches a new height as small businesses have an open vista of advertising and recognition whilst practically eliminating the relatively high cost of print. In addition to these new horizons, it is finally possible to access information across the networks and in real-time obtain the means to manipulate the information. Visionaries cite that in the future, independent software applications may cease to exist and that, instead, each user will tailor his or her own "suite" of interchangeable tools from a plethora of Java developers.
This, then, is the brave new world thrown open by the advent of "...a simple, robust, object-oriented, platform-independent multi-threaded, dynamic general-purpose programming environment". One can only hope it will live to meet and exceed the expectations of even its creators.