Skip to content
Chicago Tribune
PUBLISHED: | UPDATED:
Getting your Trinity Audio player ready...

Barely three years after the first raucous Java developers conference, the future of Java, the most hyped language in the history of computing, is in question. Although Java was fast out of the gate, in recent months some events have slowed down its progress:

-Microsoft’s latest tools for Java programmers are incompatible with those of Sun Microsystems in some crucial areas, making the key promise of Java — that you could write a program once and it would run on all computing platforms — unattainable for now.

-Netscape, the first and most enthusiastic licensee of Java, has abandoned development of both its Java class libraries and “Javagator,” the Java version of its flagship browser.

-The release date of Version 1.2 of the Java Development Kit, an already overdue upgrade, has slipped, preventing programmers from taking advantage of long-promised features, many of them necessary for Java to work on enterprise systems.

In spite of all this, Java remains extremely popular among programmers. They admire the way it solves many of the problems associated with C++, today’s de facto coding standard, its optimization for networked environments, and the fact that it’s a computing technology that Microsoft doesn’t own — at least not yet.

Perhaps most of all, programmers adore Java because it’s cool. It has a cool name and a cool logo. Most of the Java applets now running in a Web browser near you are mundane; mortgage calculators, scrolling tickers and primitive navigation tools are among the most popular types.

The real action nowadays comes when Java developers present something cool not only outside of a Web browser, but outside a computer altogether. The biggest hit at San Francisco’s JavaOne Developer Conference in March was the Java Ring Event, a Sun demonstration of how Java could run on a tiny piece of jewelry. People went away from JavaOne talking about the Java Ring Event more than anything else, not because it was a breakthrough (the MIT Media Lab has developed a pen with similar functionality), because it was cool.

But the cool factor alone isn’t enough to keep Java going. Programmers in large corporations are learning that Java is a flexible, robust way of connecting large legacy databases stored on mainframes with the countless computers now running Web browsers. In other words, people are learning that Java can be useful, too. What Java can do for you depends on your expectations for it.

It’s hard to determine whether Java has met its original expectations because there is so much confusion regarding what those expectations were. Few now say they believed the official Sun line that Java would revolutionize computing and make Windows obsolete (even when confronted with their own published quotes). But no one can argue that Java arrived in 1995 with unprecedented promise.

“Java has met the expectations of rational human beings, of which there are few,” said Ezra Gottheil (www.gottheil.com), an independent consultant and former director of Internet Business Strategies Service for The Hurwitz Group. “Java as a language is not rich in user interface. It’s not a great pixel manipulator.”

Perhaps more telling, Gottheil said, isn’t the language itself, but rather the original model for Java.

“When you look at Java, it seems like this was devised by someone who sat down and said, ‘How do I get at Microsoft ?’ And any business plan built on sticking it to Microsoft is simply not a rational business plan,” Gottheil said. “Java word processors and spreadsheet programs that you download to your PC — those ideas were crazy. If you’re using the same code every morning, you don’t want it coming from the server.” Indeed, Corel’s idea of a Java-based WordPerfect Suite of desktop applications has been abandoned.

Even Steven T. Abell, software designer and proprietor of www.brising.com, who previously held the title of Java Technology evangelist at Netscape, remains ambivalent about Java.

“Were the original expectations reasonable ? It depends which culture you’re coming from,” Abell said. “Java’s primary roots are out of the C++ world. From that standpoint, Java is a big step up. It’s a cleaner, object-oriented language. And the benefits of a Virtual Machine on every platform are obvious.

“But I came to Java from a different world of programming, the Smalltalk world,” he said. “For people who program in Smalltalk, Java is a 30-year step back. Smalltalk is what made object-oriented programming real. It had a mature class library and culture from the day it was released, whereas the C++ world just kind of happened. Its class library still isn’t stable. The result for me is that Java is an absolute requirement in today’s software world, but sometimes it hurts me to use it.”

Abell said he finds it unlikely that Java will match his beloved Smalltalk. “As the Java class library from Sun gets bigger and bigger, it gets harder and harder to move off old mistakes; they’re built in. But if you’re distributing code to someone else over the Web into a browser, you’d be crazy to do it in anything except Java. You can’t do it in Smalltalk.

“I tried really hard to like Java,” Abell said. “For most people, those coming from C++, Java is a step up. But I’d seen better.”

Mark Lavi, a senior consultant for Atarex Communications (and another ex-Netscaper), is a bigger fan, perhaps because he came to Java from C++. “It does a lot more than anyone else has been able to accomplish,” he said. “The most popular programming language ever is C. C++ is an object-oriented version of that, and now Java is a logical extension past C++.

“By moving the system-specific part to an abstract layer that’s implemented in the Virtual Machine, that’s a huge, unprecedented step forward. The concept of a Virtual Machine predates Java, but this is the first one that works on the Net. It’s amazingly popular. When Netscape added Java into Navigator 2.0, that meant that in a course of a month there were 40 million Virtual Machines out there.”

Lavi said Java isn’t necessarily a panacea for programmers, but he is extremely optimistic about its future. “Yes, you still have to debug it everywhere. There’s a whole industry of competing Virtual Machines and compilers. Performance is an issue, although that’s getting better. The point about Java is that you get platform independence and it has networking built in. And it’s so easy to add to your current skills. People can jump from C++ to Java in a week if they have to,” Lavi said.

David Gee, Java marketing program director for IBM, put on his evangelist’s hat when assessing Java’s success so far. “We’re barely three years into it, but if you look at the adoption rates in terms of clients or end users who have ability to use Java, you’re talking 70 or 80 million people,” he said. “More than 1200 commercial applications written in Java are for sale. There are more than half a million developers writing applications in Java. This is one of the most widely adopted technologies ever.

“The major inhibitor to even faster growth is skills,” Gee said. “Finding people to do these things is still proving to be tough.” And the people IBM are looking for are those focused on business solutions, not something cool.

“Sun has a powerful hype engine,” Gee acknowledged. “They think every cell phone and every ring should be running Java. And let’s face it, we’re quite a ways from that.”

On the server side, small, agile companies like Art Technology Group (www.atg.com) and Open Business Systems (www.obs.net) are working with each new incremental version of the Java Development Kit to unlock more of Java’s promise.

“We’re just now on the cusp of some major changes in how corporations develop applications and what languages are used for what applications,” said Mike Durbin, president of Open Business Systems. “The next three years will surprise a lot of people; Java will be used more than a lot of people anticipate. It will be the predominant way companies build applications.”

Durbin dismisses the argument in the Java community over whether it is a language or an operating system. “It’s a language and a platform,” he said. “It’s not the world, as some have said, but it’s a very important component of an intranet/Internet architecture that includes HTML, browsers, HTTP and Web servers. You can do so much with Java. Here we’ve written workflow applications, e-commerce applications, billing and payment applications, kiosks and more.”

In the short term, that’s the future of Java — not as an operating system, not as a neat toy, certainly not as a replacement for Windows, but as a network-enabled computer language that can be used for a wide variety of new and traditional applications. This might not be what Sun promised in 1995, but it’s much more than a mere high-tech ring. And a year from now, if promised tools from Sun appear, today’s robust Java applications may seem as quaint as the sluggish applets running in our browsers do now.

WHO OWNS JAVA ?

The answer may seem obvious; James Gosling and a team from Sun Microsystems wrote it. Standards organizations accept Sun’s “ownership” of Java. If a company wants to include Java in its hardware or software, Sun is where it goes to license it.

But it’s not that simple. Although no one disputes Sun’s position as inventor and primary arbiter of Java, it’s impossible for a technology or a product to play a major part in today’s world of personal computing without garnering the attention of Microsoft. When something like Java, arguably the most hyped computer language/platform/whatever-it-is ever, arrives on the scene, it would be naive to think that Microsoft would not want to make Java part of its flagship Windows operating system.

In December 1995, Microsoft announced plans to license Java, which it did the following March. As the company’s Internet Explorer browser was beginning to cut into the market share of the dominant Netscape Navigator, it must have been a relief to the Java executives at Sun. Whoever won the browser war, Java would be invited to the victory party.

But as more developers moved to Java and learned the program is best-suited for server-side applications, the browser side of the equation seemed to matter less and less. Even Netscape, the first company to license Java, abandoned many of its Java-development initiatives, including its own Virtual Machine and the written-in-Java version of the Navigator client, code-named “Javagator.” Yet Netscape and Sun remain famous collaborators; Microsoft and Sun are in court.

Why ? Steven T. Abell, former Java technology evangelist at Netscape, said, “it’s about control. Microsoft wants to rule the world.”

Mark Lavi, senior consultant for Atarex Communications and another Netscape alumnus, is quick to differentiate between Microsoft extensions to Java that have helped all programmers and those that force them into two camps. “Dueling class libraries, like when Microsoft had AFC and Netscape had JFC, are good in a way, as long as you can import them and they’ll work on every Virtual Machine,” Lavi said. “It’s OK to replace Sun’s implementation of, say, an I/O system as long as it preserves the interface, naming, and API.”

The problems, Lavi said, occur when “improvements” undermine the class library and force developers to choose between two versions of Java. “Microsoft has every right to make improvements,” he said. “Maybe their goal is better performance or to make it run better in Internet Explorer, but they knew what they were doing. They overstepped the bounds and changed basic libraries and interfaces.”

Microsoft sees the situation differently. “We have invested heavily in Java,” said Joe Herman, a group product manager for Microsoft. “I know there is a philosophy that if you’re going to use Java, you should use it only in a cross-platform way, but when you go cross-platform, you give up some functionality and performance. According to our studies, more than half of developers are writing for one platform and they want to use native APIs. If you’re a Mac developer, you shouldn’t be prevented from using anything that takes advantage of the Mac platform. When you focus on cross-platform, you are prevented.”

So where does the fight between Sun and Microsoft leave other companies ? David Gee, program director of Java marketing for IBM, said they’ve moved past the problems the spat caused.

“When the litigation between Microsoft and Sun was announced, that slowed down development because of fear, uncertainty and doubt,” Gee said. “That slowdown is over now because it’s pretty clear you don’t need Microsoft to run most Java applications. The VM problem is a problem only if you’re focused on client-side Java, which nobody is. The value is in writing Java around servers rather than clients. That’s where the revenue stream is for software companies. No one is making money for client-side; many are making money on the server-side, where compatibility issues aren’t as important.”

In the trenches, early reports suggest cross-platform Java eventually may win over platform-optimized Java.

Evan Quinn, who directs Java research for market-research firm International Data Corp., said Symantec’s cross-platform Java tool Visual Cafe generates more revenue for its company than Visual J++ does for Microsoft. Among large companies — the key market for Java tools as they migrate from client-side to server-side — Symantec’s product leads Microsoft’s in market share.

Andrew Peace, a quality engineer for Lotus Development Corp., uses cross-platform Java. “The stuff I’m working with is 100-percent pure, JDK-pure Java,” he said. And the only company that gets to decide which Java is pure is Sun.