This section describes the evolution of the PC environment and how we arrive to today's I/T needs.
As you can see from the table in the previous section, customers have been networking PCs for many years. Throughout these years, the infrastructure and management of these PCs has become more expensive and complex. As PCs grew in power, the amount of application and data processing work done on PCs increased greatly. Of course, some of these applications still needed to communicate with mainframe and midrange systems, which had much greater capacity than the PC. From this, the concept of client-server communications was born.
Client-server applications allowed the PC to be the transparent interface between the user and the end result, such as a query of a database or a banking customer transaction. This usually meant communicating with a mainframe system. This environment increased the complexity of the setup and administration especially with the fact that operating systems and applications needed to be upgraded continually.
The cost associated with developing and maintaining client-server applications grew quickly, and companies began questioning if this was really the best way to provide services to end users. In addition, many companies had many different kinds of hardware and operating systems. This meant that an application might be written explicitly for each platform, greatly increasing the development, test, and maintenance of this new application. In a sense, the computer was the center of the universe from a computing standpoint.
Throughout this time, the Internet had slowly increased in popularity. Although it was once used mainly by government, military, and education facilities, Internet use increased by companies in the commercial marketplace.
Companies also began investigating different implementations of cross-platform technology for application development and deployment and object-oriented programming techniques to make developers more productive. They also increased usage of programming languages, such as C, C++, Smalltalk, and a language called Java introduced by Sun.
The need to improve the cost/benefit characteristics of client-server brought about a new paradigm called network computing. This was the idea of separating the presentation, business logic, and data storage components of a business solution. It doesn't really matter what system provides the presentation, and the focus shifts from the PC to the network.
In a similar fashion, programmers want to minimize their development effort and maximize the number of distinct platforms their applications can run on. The Java programming language is one example of a solution for this requirement. By writing an application using 100 percent Pure Java guidelines, this application should be executable on any platform that provides an environment for running these Java-based applications-that is, a Java Runtime Environment.
As we mentioned before, the growth of business and consumer activity on the Internet has spurred new applications that are Web-based and some of which are also Java-enabled. Network servers will need to be able to support this, which many are calling e-business. In other words, e-business means providing the application infrastructure for customers to find companies who have solutions of interest, obtain specific information about the products, and purchase these products over the Internet (that is electronically, the e in e-business).
In the United States, there is an old saying, Something old, something new, something borrowed, and something blue. It is used to describe the things a bride should include in her wedding attire when she gets married. In a sense, our I/T requirements today are a mixture of existing requirements for file and print and client-server (something old), our need to embrace network computing with Web servers and databases, such as Lotus Notes (something new), our idea of the PC as primarily a presentation interface (something borrowed from the host terminal paradigm), and something blue, which, of course, is IBM.
It's important to state that we don't believe that today's Network Computing and Java will replace the existing PC and Windows paradigm, but many customers are adopting this new paradigm in areas where it makes business sense. Both paradigms will be implemented side-by-side, and network products today will need to support both paradigms.