Page 2 of 3
Java's ability to provide a common language across heterogeneous clients and servers is not science fiction. It delivers on this score today and is taken very seriously by thousands of corporations. If you ever did a survey of how many dollars and resources companies -- small, medium and large ones -- have invested in Java, you would be absolutely amazed. Almost every company with an IS department is either developing in Java, getting its developers trained in Java, or considering using it. For example, my company has three Fortune 100 customers that will deploy applets within the next one to three months -- applets that contain 10 to 30 screens and interact with their data sources via CORBA, DCE, or JDBC. Among many examples of how Java is taken very seriously, consider the use of Java applets by the Jet Propulsion Lab (JPL) for the Mars Pathfinder project or the fact that Netscape plans to release a version of its flagship Communicator software written entirely in Java.
Despite all the inroads Java has made into most corporations, some people believe Java will be just another OS/2 or MacOS. They are absolutely wrong! Java already is bigger and more popular than these operating systems ever were. Don't believe me? Take a look at all the Java APIs available from JavaSoft -- delivering applets, networking, multithreading, database access, JavaBeans, servlets, file I/O, GUI, RMI, electronic commerce, 2D/3D, speech, telephony, sound, and more. Also, think about this: When was the last time you saw so many companies come together to do the same thing! (See Resources below for a list of Java APIs and companies that co-sponsored and/or exhibited at JavaOne.)
If I was to predict the future of Java, I would definitely say that it will only get bigger. As for applications based on the MS-Windows architecture (DLLs, EXEs, etc.) and Unix (X Windows, shared libraries, etc.), I predict in the next five to seven years they'll be viewed in the same way mainframe and COBOL/CICS applications are viewed today -- as proprietary, legacy apps. Remember, Java is a new technology built for a new paradigm (the Web, embedded devices, etc.). The older technologies (MS-Windows, X Windows) might be able to work in the new paradigm, but are not a natural fit.
The capabilities provided by the Java language and its robust APIs are enormous, and third-party Java vendors (JScape, KL Group, etc.) fill the gaps where Java's APIs fall short. The only drawback with Java is its performance, which of course has been drastically improved with the use of Just-In-Time (JIT) compilers. Additionally, Intel, JavaSoft, and Netscape are devoting enormous efforts to improve Java's execution speed, and expect Java code to run at about the same speed as compiled C++ code in the very near future.
So, for what it's worth, here is some advice: Do not get too caught up in what Bill Gates, Scott McNealy, or Larry Ellison has to say. These guys worked hard to get where they are today, but they still have petty, streetwise mentalities and thus are constantly busy insulting each other and plotting to protect and extend their turf. Also, just because Sun Microsystems introduced Java doesn't mean that Sun and Java are synonymous. Java is too big and open to be owned by one company.