Guy Steele Keynote

by Mike VanHilst

In Wednesday's keynote address, Guy Steele spoke on Java and the Evolution of Web Software. To the software engineering professional, much of the talk seemed focused on describing the Java language and its use on the World Wide Web. Only toward the end of the talk did the speaker touch on the software engineering issues of web computing and the use of Java.

In the first part of the talk, Steele described the history of Java and the features that set it apart from other languages, namely security and platform independence. The second part of the talk dealt with network computing and the challenges that it poses. In the third and final part, Steele compared the World Wide Web to a living organism and discussed the ethical issues of privacy and coercion.

In network computing, parts of an application may be upgraded while other parts remain unchanged. The result is a set of version management problems. Steele described a set of rules in Java that constrain the changes permitted in an upgrade. But the Java approach does not address semantic issues and the question of debugging is still open. At the end of the second section, Steele called for input from the software engineering community. "The implications for testing and Q/A of the model of binary evolution are not well understood. I'd be interested in some feedback."

"It's the biggest peice of software ever written, and no one designed it."