Frankly Speaking: Not dead yet

22.05.2006
Is Java dead? Come on, seriously -- why else would Sun Microsystems be offering it up to the open-source crowd? A decade ago, Java was the hottest, most exciting thing in IT, a certified Windows-killer that was going to wipe out Microsoft's monopoly and revolutionize the way software was made, distributed and run. Today? Today, Java is old hat. It's been eclipsed by open-source, the new hottest thing in IT that's going to wipe out Microsoft's monopoly and revolutionize the way software is made, distributed and run.

Actually, based on the hype, this sounds like a perfect match.

Funny thing about Java: It failed as a Windows-killer because in its early days, most PCs didn't have the processing power to run programs written in a byte-code language with as much responsiveness as native applications. And it didn't help that most network connections were too limited to let users download full-blown applications every time they were needed.

Now PCs have the juice and the broadband connections. But Java has been pigeonholed as a language for Web applets and back-end processing. And the buzz is long gone. Conventional wisdom says Java does a nice job in its niche, but it'll never take on the world again.

So Sun is putting Java out to open-source pasture. After all those years of developing it, promoting it, enhancing it and defending it from the corruption of Microsoft's incompatibilities, Sun will soon leave Java in the hands of a bunch of kids whose pay comes in the form of admiration from, um, other kids.

If that's not death for a onetime worldbeater, what is it?

Maybe it's Java's resurrection.

Look, Sun has clearly run out of ideas for Java. Back in the day, the ideas were endless. It was "write once, run anywhere," Java as the universal desktop, Java as the perfect Internet language and, of course, Java as a great loss-leader for selling more Sun servers.

Today, Java is a perfectly respectable language for back-end processes. But all the really interesting ideas come from the people using it. Sun's full attention is directed toward keeping itself above water.

What happens if a lot more people start coming up with ideas for Java? And not just what they can do with Java, but also what they can do within Java? That suddenly becomes possible once Java goes open-source. Then Java can be crammed into places it never fit before. Stretched in ways that weren't possible before. Lightened. Hardened. Repurposed. Reimagined. Refactored. Rebuilt.

And, yes, screwed up. Sure, it'll happen. There will be incompatible versions -- probably lots of them. It's inevitable, once anyone can change the Java source code.

That worries some Java users. But it shouldn't. They'll still be able to choose a widely used, highly standardized Java, just as they always have. If there are another thousand one-off versions floating around the Internet, not to worry -- no one has to use them.

In fact, that'll be a much less risky situation for Java users than we had in the late 1990s, when Hewlett-Packard was writing its own Java clone and Sun sued Microsoft for making its Windows version of Java incompatible with Sun's original. Fragmentation? Incompatability? Been there, done that. Java survived.

And once Java is freed from vendors' political jockeying and Sun's resource limitations, maybe we'll see the return of some of those original Java ideas. Universal desktop? Write once, run anywhere? Sun couldn't make those a reality. Now the hordes of open-source developers will get their shot.

Even if they get it wrong, we should see some very interesting failures. And if they get it right? We'll all get to leverage their success.

Yes, Java has reached the end of its useful life for Sun. Java won't sell anymore servers or feed Sun's Windows-bashing. Now the smartest thing Sun can do is to open-source it, and fast. That's when the Java excitement can begin all over again.

Is Java dead?

Not anymore.

Frank Hayes, Computerworld's senior news columnist, has covered IT for more than 20 years. Contact him at frank_hayes@computerworld.com.