How this year's Java conference compared with the debut event last year
I open my 1997 JavaOne conference report with a quote, which I think sums up the conference completely:
The main message at JavaOne was that Java will revolutionize everything, and here is how [Sun] will be filling in these huge gaping holes. There was a plethora of announcements from Sun and other companies of upcoming Java products and services that will provide the infrastructure for the coming revolution. Unfortunately there was not a plethora of specific release dates.
This incredibly incisive and elegant piece of prose comes from my JavaOne Conference report from 1996! As the French say, the more things change, the more things stay the same.
On this page youโll find a completely subjective overview of what I felt were the most important themes and announcements of the conference. Rather than provide technical details of anything here, I have collected pointers to other peoplesโ write-ups. There is lots of coverage of JavaOne on the official JavaOne conference site โ see especially the press release page there โ and in JavaWorldโs current issue, as well as many other sources (see Resources below).
The conference, the hype
If this were somebodyโs first JavaOne experience, they might find it hard to believe, but in fact, the glitz and hype were toned down quite a bit this year compared to JavaOne โ96. But even without the Spinal Tap concert trappings, Sun was very successful in putting on a conference that made the 9,000 or so of us feel like this was the place to be.
My main criticisms of last yearโs conference production were addressed this year: Decent coffee was served, and there was a reasonable connection speed out of the public terminal area (I still canโt get myself to call it the โHackerโs Loungeโ).
My only complaint about Sunโs handling of JavaOne this year was the extremely nasty and unrelenting anti-Microsoft tone of most of the keynote addresses. Donโt get me wrong, I hate Microsoft as much as the next guy, but as politicians know by now, mudslinging โ even if every bit of it is true โ makes the slinger look bad. The only new information I gained from all of the mud is that Sun is absolutely terrified of Bill Gates.
Announcements
Sun made quite a few announcements of upcoming developments. The ones I found most interesting are as follows:
- Java Foundation Classes/AWT
Sun announced a roadmap for future releases of Java, including the new Java Foundation Classes (JFC), which are based on Netscapeโs Internet Foundation Classes (IFC). Basically what this means is that Java will finally have a fully functional set of user-interface components built into it. JFC is scheduled to be released with the next Java Development Kit (JDK) in late summer 1997. Not hearing an announcement like this was my biggest disappointment at JavaOne โ96. I wonder if all the widget-set providers who sprung up to fill the void Sun left open last year will now be put out of business? See the Resources section for links to JFC/AWT information.
Note that unless somebody blinks, JFC will be in direct competition with Microsoftโs Application Foundation Classes (AFC) for Java.
- Security
Though the current JDK 1.1.1 has some improvements in security, including code signing, there will not be a truly powerful security model until the next JDK. Then there will be fine-grain control, where applets will be allowed varying degrees of privilege (such as access to the local file system) depending on various settable parameters.
Security issues tend to bore me to tears, but if you are interested in such things, note there is an upcoming one-day Java Security Camp given by Sun. I went to their Beans Camp, and other than the embarassment of telling people I was spending the day at โBeans Camp,โ it was excellent. For more information on security, see Resources.
- Performance enhancements
While certainly not admitting that Java is in any way slow, Sun has announced plans to vastly increase Javaโs speed. There will be a โJava Performance Runtimeโ for Windows this summer, and after that, the new JDK for all platforms will include a new Java virtual machine (JVM) called project โHotSpot,โ which Sun promises will be as fast as compiled C++ code.
- Operation Rescue
Sun has a plan to rescue the 181 million 486 or better PCs in the world from oblivion, by turning them into Java-based network computers with a 00 software package. With the upcoming Java performance enhancements, perhaps this is really do-able. The network computer certainly is an excellent solution for certain environments, where you have a fast network and a limited set of tasks to perform (public terminals in university libraries, or administrative data-entry applications come to mind). See Resources for JavaSoftโs JavaPC press release.
- Multimedia
- Sun announced a number of enhancements to the Java Media Framework (which was announced last year at JavaOne, and is now partially available). These include: extremely powerful 2D and 3D graphics; the very cool JavaSound package (based on Thomas Dolbyโs HeadSpace technology) which will (by the end of this year?) give me the power to write the Java Drum Machine I have been dreaming of; as well as video, collaboration, speech synthesis, and telephone technology. The idea of being able to pull off all this multimedia razzle-dazzle in a cross-platform way, with extremely easy-to-use but powerful APIs, is truly seductive. But even with the promised performance enhancements, it is still going to take big hunks of native code behind the scenes for each platform, which means anything other than WinTel and Solaris will undoubtedly continue to lag behind.
Technical sessions
In general, I found the technical sessions at JavaOne to be quite good. What was really impressive is the number of Java engineers at Sun who are decent public speakers. A couple sessions that really stand out as having possible relevance to my life today are:
- HotJava
Sunโs HotJava browser version 1.0 was recently released. While you may ask why anybody would need another browser, HotJava has a few compelling features. It is much more customizable than Netscape Navigator or Microsoft Internet Explorer, and allows Java applets to have more control over the browser. It is also the only currently released browser that knows Java 1.1. For certain applications โ administrative data processing user-interfaces come to mind โ it could be a more powerful solution than a standard browser.
- Servlet API
Sun has released a standard API for servlets โ Web server-side programs written in Java (to take the place of the CGI scripts usually written in Perl). The major server vendors are all going to support it. Because a servlet has no user interface, it does not have to get downloaded across a network, and typically only needs to run on one platform, it does not face any of the major issues with Java that can make applets problematic. But servlets can take advantage of all the wonderful things about Java as a programming language. I do not want to get into a religious war over the merits of Perl vs. Java, but I personally do not plan on ever writing a Perl CGI program again. (See Resources for more information on the servlet API.)
- Document Object Model/Dynamic HTML
One of the most interesting Java developments I learned about actually occurred the week after JavaOne, at the Sixth International World Wide Web Conference in Santa Clara. Microsoft gave a presentation of its Dynamic HTML, as implemented in Internet Explorer 4.0. Dynamic HTML is an umbrella term to describe a boatload of features (some of which struck me as rather inane) but importantly, it includes an API for allowing mobile code objects (such as Java applets, Active-X components, and JavaScript scripts) to access (read and/or change) the HTML document in which they are embedded. This will vastly increase the utility of Java applets โ allowing them to fully leverage the power of the browser they are running in (and making obsolete such miscegenations as the HTML-display Java component used by some applets). Microsoft is working with the World Wide Web Consortiumโs (W3C) Document Object Model Working Group on this, and promises to abide by the standards for it as they develop. One can hope Netscape will do the same โ it also has something called Dynamic HTML, but it is not currently the same as Microsoftโs.
- The Document Object Model Working Group has not produced any documentation yet, but there is a brief mention on the W3C HTML Activity Page (scan for โDocument Objectโ). See Resources for more on Dynamic HTML and the Document Object Model.
Conclusions
I am tempted to just quote my conclusions from last yearโs JavaOne, as I feel exactly the same this year. Javaโs potential is staggering, but the reality of doing useful stuff with it right now does not quite live up to the promise. Still, quite a bit of progress has been made: There were something like 300 companies exhibiting at JavaOne, many of which are shipping actual products written in Java (See Sunโs Java in the Real World and Java Solutions Guide โ links to this information are in the Resources section.). My list of missing Java features is now empty (if indeed Sunโs current promises are delivered).
Sunโs energetic response to filling the gaps in the current Java technology has created a huge new problem โ version lag. Now three versions of Java are shipping โ Java 1.02, which is what the currently-shipping Netscape and Explorer browsers (and most development tools) can actually handle; Java 1.1.1, the most recently released JDK; and the upcoming JDK (version 1.2?), which was outlined at JavaOne. By the time users have Java 1.2-capable browsers on their desktops, undoubtedly there will be another major release of Java on the way. But as long as I can keep getting a free spring break in San Francisco because of it, who am I to complain?


