JavaOne conference report

JavaOne conference report

Rather than give detailed summaries of individual presentations, I have tried to synthesize what struck me as the most important messages from all the talks. This is certainly not comprehensive, and is obviously quite subjective. There is much more information at the official conference Web site, including abstracts and slides from most of the talks (and a promise of transcripts). On this page you will find:

The Conference/The Hype

This was by far the glitziest conference I have been to. The stage in the main room seemed set up for a heavy metal concert, not a technical workshop. Perhaps the giant on-stage oscilloscopes with their visual sound-wave displays were meant as some sort of aid to the hard of hearing, but I still cannot figure out the exact function of the black lights and fog machines (I was waiting for the appearance of the dwarves and the 18-inch Stonehenge model, but no such luck). I am also trying to analyze the symbolism of their onstage, post-industrial looking collapsed girder motif. Destruction of the current paradigms of computing, I suppose.

The other things that puzzled me were how a conference called "Java" could serve such vile coffee, and how a company who's slogan is "the network is the computer" could provide a terminal room (aka "Hacker's Lounge") that was so bad as to constitute a crime against humanity. Of course the biggest question on the minds of most attendees was "Now that Java is claimed to be maturing, will they finally dump that annoying "Duke" character?". Though Duke's nemesis, the steaming coffee cup, is much more prominent these days, unfortunately, Duke is not dead yet: Sun had a giant 3-D holographically projected VRML Duke applet running around the conference. Then again, it might have been a guy in a Duke suit.

Nuts and Bolts

At the World Wide Web Conference in December, the main message at the Java talks was that Java has the potential to revolutionize everything, as soon we fill in some of these huge gaping holes. The main message at JavaOne was that Java will revolutionize everything, and here is how we 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. Follow the links below to more detailed information from Sun about the various items.

The Java Language
In this case, no news is good news. James Gosling promised that the language itself is going to remain stable, at least for the near term. They are considering adding method pointers (which I have been wishing for, but have been able to work without), and parameterized types (which I have never heard of, but I am sure I would find them to be the cat's pajamas). They are also considering some changes to the Java Virtual Machine to support compilers that could translate programs written in other languages down to Java bytecodes.
JavaOS and JavaChips
A very small operating system named JavaOS (formerly called Kona), optimized for running Java programs, will be available for pretty much every CPU, including the new Java-optimized CPUs from Sun. Lots of companies are planning to use JavaOS and Java Chips to control various electronic devices.
All new HotJava
To me, this is probably the most interesting recent Java development. HotJava is no longer just a browser written in Java but a set of configurable libraries that can be put together in various ways to form all sorts of Internet-based applications. The Web browser is just one configuration. This is what I had been dreaming of finding for Motif before I got swept up by the Java tide. If it lives up to its promise, it will be an incredible boon for developers trying to build their own specialized Web-aware applications. There is no indication of when HotJava will be available in a complete form; they hint at it "evolving over the next year".
Java Developer's Kit Enhancements
There does not seem to be a press release on this, despite the fact that this announcement was probably the most relevant to the current day-to-day lives of working Java developers. Things coming down the pike "very soon" in the JDK (and in particular AWT, the set of classes for building Java user-interfaces) are performance tuning, unspecified "fixes and improvements", support for printing, clipboards, drag and drop, internationalization, and a complete rewrite for win32.
I was disappointed not to hear a detailed plan for turning AWT into a powerful, usable, full-featured GUI building tool kit. It sounds like the improvements will be incremental and not the major overhaul that developers have been clamoring for.
New Application Programming Interfaces (APIs)
This is the core of Sun's strategy to move Java from just a programming language to a "complete programming and operating environment". There is a lot of new stuff coming. The Media APIs will allow full function 2-D and 3-D rendering (based on work by Adobe and SGI respectively), real-time streaming and mixing of media sources, sprite-based animation, multiuser media sharing, telephony, and video. Other new APIs include a "virtual wallet" to allow micro and macro payments (is a new ease in charging going to lead to the death of free stuff on the Net?); digital signatures, encryption, and authentication; a customizable Java-based Web server, that will allow uploadable "servlets" (sort of the opposite of applets) which will eliminate the need for CGI scripts; Remote Method Invocation; databases of persistent objects; network management; and more.
Database Access
There was a lot of talk about the JDBC database access API, which gives Java capability to access SQL-based databases, and is compatible with current remote database access systems like CORBA. This work does not look like it will be directly useful to those of us working on bibliographic databases and Z39.50.
"Java Beans"
Apparently still the working name only, "Java Beans" will allow Java applets and applications to become and/or use reusable software components. The system will be compatible with other reusable component architectures such as COM, OpenDoc, LiveConnect, and ActiveX. You will be able to embed a Java applet in an Excel spreadsheet, for example (boy, if I had a nickel for every time I have wanted to do that...).
Developer Services
If you pay them enough, Sun will answer your Java questions! Sun announced a fancy new online tech-support service for Java developers. Actually it sounds quite useful and probably will be well worth the so-far unannounced subscription cost.

A couple other miscellaneous observations and events...

Exhibitors
There were well over 100 companies on the exhibition hall floor, with all kinds of Java-related products and services in various stages of availability. Most of the big players, and a bunch of brand-new startups were there. Everything from books (there are 120 announced English language Java books), magazines, and T-shirts to pre-built Java widgets, database access systems, and any number of Java development environments. Of particular note is Corel's announcement that they will be releasing an integrated office suite entirely written in Java.
JavaCup International
It was rigged I tell you! How else to explain the absence of NINA from the winner's list? Seriously folks, the winners of the contest are a pretty impressive lot, and if you have all day to kill, you might actually be able to download and run some of them.

Conclusions

Despite my somewhat cynical view of all the hype and marketing now surrounding Java, I have come away from the conference more convinced than ever that it really is going to change everything. I do not want to go into much detail on our ultra-caffeinated future, since it is already being discussed at length everywhere you look. But in a nutshell, the vision that Sun is offering us is not just an easy-to-use, safe programming language with fewer avenues for bugs, without one ever having to port a program again. It really is a fundamental paradigm shift in the way we view computing. Your desktop as you know it goes away and becomes the Internet. Once the network is fast enough, there is no need for local storage of your files. Your hard disk, if you have one, is just a network cache. You can recreate your home environment at a kiosk in the airport. Applications become fluid things, recreating themselves on the fly to handle whatever kind of information you are currently looking at. Software is never out of date.

Business models will change radically. The software middleman goes away, there is no-cost distribution and packaging, and instant supply for demand. And what exactly is software? Will there be such things as Egghead, Tower, and Blockbuster in five years? Will all my struggling, unsigned musician friends finally be able to stick it to the man, and release their songs to the world directly? Will they at that time suddenly develop an interest in copy protection? More questions than answers here.

To me the real question is not if, but when. I came home all fired up about how great Java is, then I try to run the JavaCup winners, and I remember, oh yeah, just like last week, interesting applets still take forever to download (even here, to the Pacific Northwest Internet hub), and half the time they do not work right anyway. However, Scott McNeally assured us "There Is No Danger of Moving Too Fast" and "Bet on Faster Networks, Faster". And if you cannot believe the president of the company that stands to make the most money from all of this, who can you believe?

My Favorite Quotes

I will close with the best one-liners I heard at the conference.

We could build speech recognition into a doorknob.
On the size of JavaChips and JavaOS.
The Internet runs on dog years.
Development is so fast, one year feels like seven.
Mickey Mouse can control your desktop!
A paraphrase. With the new HotJava browser, the server side (such as disney.com) can completely reconfigure your browser.
People can send their bug reports to USA Today.
An indication of Java's level of recognition.
Storing your work on a hard disk on your desk is like stuffing your money in your mattress.
On the advantages of an Internet Terminal.
Porting will go the way of the punch-card
Hmm, tell that to all the applets out there that only run correctly on the platforms they were written on.
The Web is under-hyped.
Actually, I tend to agree.
Matthew Freedman is a Software Engineer for University of Washington Computing & Communications. He is the author of Willow, (the Washington Information Looker-upper Layered Over Windows), and NINA (NINA Is Not An Acronym). He also provides private acronym invention consulting services.
Related: