Java's Role Continues to Develop
nytimes.com
By PETER WAYNER
When James Gosling steps onto the stage to give the keynote address at the beginning of the fourth JavaOne technology conference in San Francisco on Tuesday, he will be facing an audience that is larger and more serious than ever before.
Gosling was one of the engineers at Sun Microsystems who began developing a computer language, then known as Oak, for writing software to control small computers like the ones that might run an interactive television. Today, the Java language is being touted as one of the foundations for crucial operations on the Internet and a lingua franca for knitting together the various post-PC devices like smart cell phones and pocket organizers.
In fact, one of the top announcements at the conference is expected to be a version of Java known as the "Micro" edition, which will allow devices like the Palm Pilot to run Java code like their bigger PC cousins. Attendees at the conference will be able to download the Micro version and several applications at the conference.
Alan Baratz, the president of software products and platforms at Sun Microsystems, said in a telephone interview on Monday, "We have recognized the need to have a version of Java with a very small footprint under 100k, particularly for the cell phones, the pagers, or the 3Com Palm computing device."
Java technology's trip from the lab to an established part of the Internet and a ubiquitous vehicle for distributing software has been strange and filled with many paths. When it first emerged, it was a tool for putting dancing icons on Web pages. Then, a storm of hype engulfed it as people began to speculate that it had the power to dethrone Microsoft by letting people download software at will. Today, it is the darling on undergraduate computer science courses and one of the trusted building blocks for creating serious Web sites.
Although certain roles for the language have faded, others are emerging. Lately, Web designers have not been using Java to add animation and basic interactive features like roll-over buttons because simpler technology like Dynamic HTML can accomplish the job. But more sophisticated users like game developers continue to embrace it.
For example, the Casares World casino, based in Gibraltar, offers Java-based gambling games that can be played either for fun or, in countries where it is legal, money. A tool like Java allows the users to download the gambling game software by just visiting the company's Web site. There are no complicated installation procedures and Java includes strict security features that help prevent viruses and worms.
Downloading the software and running it locally lets the programmer add more interactive features. Trivia fans, for instance, can tune to Uproar.com, which uses Java to add a timer and test the speed of the player's response to Jeopardy-like trivia questions. Players that answer quickly get higher scores. Features like this are impossible to use without a tool like Java because the Internet is too slow and fraught with random delays that would impede the timing.
Many of the latest applications, however, are more serious than games. An academic conference, Java Grande, ran on Saturday and Sunday before the beginning of JavaOne. The attendees, who include professors and students, are studying how to use Java for high-performance computing applications like weather prediction and studies of the structure of the atom.
The fact that users with high-end needs are interested in the language is surprising, in part because Java has always been known as a bit slow. The language is designed to be "portable," so programs written in Java can run on machines built by different manufacturers. This feature, which Sun bills as "Write Once, Run Everywhere," requires an additional amount of translation, which can often slow down each step.
Bill Pugh, a professor of computer science at the University of Maryland in College Park and a presenter at the Java Grande conference, said that speed is not much of a problem anymore because the performance of Java programs has improved.
Pugh said today's fast computers remove some of the pressure on performance, adding, "Having programs that work well, are easy to write, don't crash, are often considered to be much more valuable than having something that runs 20 percent faster."
Marc Snir, a manager at IBM and one of the organizers of the Java Grande conference, said that new research shows that Java can be as quick as other well-developed tools like Fortran if a few minor changes are made in the language.
"I'm not telling you that these compilers are available as products, but research indicates that it is do-able," he said.
Sun itself has been working heavily at improving performance with tools like their HotSpot compiler. The company is expected to announce that it will ship this compiler as the standard part of desktop versions.
Java is also well known for providing a clean model for creating programs that are easy to modify and extend. This is one reason that many computer science departments in universities have switched over to teaching their basic computer science courses with the language.
In the last year, Java began attracting more attention as a platform for what is known as "enterprise" computing, the projects used to maintain large databases for businesses. Car manufacturers, for instance, need to track the flow of parts from supplier to assembly line to dealer. Human resource managers need to follow the benefits for all of the employees at a business.
Many companies are interested in using Java to attack these problems because the same software can migrate easily between machines from different manufacturers. It is not unusual for a programmer to have to link together PC's, minicomputers and mainframes in one enterprise-wide project. These challenges make the Java language very attractive for companies like IBM, which make many different models of computers that would not normally run the same software.
"We've come a long way from Java as a cool technology for creating flaming logos to one that solves mission critical problems," Jason Woodard, a manager for Java technology at IBM, said in a telephone interview last week. "People are doing things with Java today that no one imagined 3 years ago."
At the conference, Sun is expected to announce a new Enterprise Platform that bundles together several previously announced solutions for businesses. These include better database connectivity and better tools for converting this data into something that can be read from a standard Web browser.
Scott Preble, a vice-president at Citicorp, has been using Java to knit together enterprise-wide systems that process mortgages for the company. These tools operate on servers and ship their results to the browsers.
"We've really embraced it all the way," he said. "We've really bet our business on it. We've done a number of prototypes and decided the technology was ready and the benefits were there."
Sun's enterprise tools allow companies to build and maintain complicated, interactive applications that juggle data. The Web site JavaLobby.com, for instance, uses a Java-based program on the server to post news articles and let readers add their comments in discussion groups.
Sun is expected to announce on Tuesday that they will be working with the Apache Web server project to integrate their new enterprise technology with the open source software. This is a crucial move for increasing the acceptance of the technology because Apache is one of the most popular Web servers.
The JavaOne conference is expected to include plenty of companies that are developing small applications that can be embedded in appliances like stoves or televisions, or hand-held devices like the Palm Pilot. This was the original domain for which Sun engineers developed the technology.
Sun is offering several small versions of Java like Jini, a tool for shrinking Java programs and embedding them in appliances. The company envisions that digital cameras, dishwashers, and other appliances might include the ability to link up and run software with each other.
While Sun continues to dominate the desktop and enterprise marketplace, it is getting a fair amount of competition in developing versions that will run in appliances and other tools. Several companies, from the very big Hewlett-Packard to the very small Wabasoft, are creating their own small editions of Java.
Wabasoft's software is attracting attention because it allows programmers to create software that runs on very limited machines like the Palm Pilot. The company accomplished this by keeping only a small fraction of the entire Java language. Programs written for Wabasoft can run on both small palm-sized machines and full-fledged PC's.
Rick Wild, a developer at Wabasoft, said the tool has mainly been used for games, although there has been some interest in developing medical tools. These programs will run on Palm Pilots, Windows CE devices, and desktop machines without modification.
Other companies are building larger versions that emulate all of the Java language. Tim Wilkinson, the chief executive of Transvirtual, said that his company will announce that it is converting its Kaffe software programming tool to the Windows platform. "We're not into Java flavors; we do 100 percent full Java," he said in a telephone interview.
Wilkinson said Transvirtual was extending its software to embrace both Sun's and Microsoft's definitions of Java and it was releasing this work as open source, making it available for other platforms like Linux.
"We approached MS for this project. We wanted to support Java and their extensions on all platforms. We agreed to do it and they agreed to pay for it, but the agreement was that it would be put into our open source and given away," he said.
Other companies like Patriot Scientific are making a Java-specific embedded chip that they believe will run Java code in situations with very low memory. Manufacturers often try to reduce the size of the memory to save costs and prolong battery life.
Sun itself intends to fend off this competition with the Micro version of the language being announced at the conference. This small version will include a novel feature that allows software to migrate between the small, palm-sized device and larger desktop or server machines. This tight coupling will make it easier for programmers to develop applications that use the local, small device to interact with the user while using the large server to do some of the more complicated computation.
Baratz predicted that this new innovation would make clones from competitors like Transvirtual or Hewlett-Packard irrelevant.
Baratz also dismissed the importance of these clones and stated that Sun was continuing to dominate the marketplace.
"Our surveys tell us that the developers want the branded Java technology," he said. |