Anyone who thought Joy might be humbled by being in Microsoft Corp.'s back yard, in the shadow of the new Mary Gates Hall, was sadly mistaken.
Joy was irrepressible during his hour-and-a-half , standing-room-only guest lecture Tuesday. The legendary Sun Microsystems Inc. stalwart ran through the history of the computing industry, from the "disk-centric" 1950s through the next-generation object-centric computing paradigm. He also talked about why and how Sun is furthering Java and its Java-based applications environment, Jini. "The glue -- the operating system -- has gone beyond all reason of complexity," Joy told the UW audience. "NT 5 [Windows 2000] is at 30 to 50 million lines of C/C++ code. It's like the Star Wars missile defence system. These kind of programs are just too complex to debug. The tools aren't up to the task."
Tools aren't the only problem, Joy continued. "More and more, the way we develop software determines its reliability. Openness is the secret here. With NT, there's no shared [development] community. There's only 10 years of shared experience. The rate of growth [in size] is unmanageable and there's no clean OS layer."
Joy targeted other culprits for programming meltdowns, too. He said C and its successor C++ -- a language Microsoft is spending a lot of time enhancing at present -- aren't well suited for the programming tasks of today, either. And alternatives like Eiffel were deemed just too "quirky." That's why Sun has spent considerable cycles developing and enhancing Java, a language which got its start at Sun in the early 1990s under the code-name Oak. Joy also criticised Netscape Communications Corp., noting that its Mozilla effort hasn't taken off, either, despite being an open source project. "There's not even enough paper to print it [Mozilla] out. It's larger than the Starr report. That's why it's having mixed success," Joy claimed.
Naturally, Joy extolled object-centric computing and the ways that Jini will make such a world a reality. Sun has portrayed Jini as a way for devices to find and use each other over a network. Plug a Jini-enabled camera into a network, for example, and it sends a Java agent to the network's lookup service and announces itself. The camera is now an object, and a user interface pops up on your PC. Take a picture, and you can store it on the Jini-enabled Quantum disk drive you've just plugged in.
Jini works by representing each device or service in the form of a Java object. Its associated lookup/discovery service will let users find the devices and services in their physical proximity, forming a community. Jini's programming model is based on a just a handful of application programming interfaces, Joy explained. "And it all works without the installation of drivers," Joy noted. Drivers are small software programs written to let peripheral devices, such as printers, connect to the operating system.
Despite being in hostile territory, Joy got a warm welcome. One attendee did express concern about how and when Jini will move from a 'cool' technology to something that's actually deployable. Joy acknowledged that Jini is still in "early adopter" phase, but added that Jini code is downloadable from Sun's Web site today. He said that groups within Sun, such as its storage division, are already using Jini in product development.
Joy added that the Jini application space "has room for lots of other killer apps."
Do you want ZDNet UK News to provide a Jini 'news special'? Tell the editor