Sun hopes for new dawn by setting Java free

Wired on Friday: This week, Sun Microsystems, the Silicon Valley giant with $11 billion (€8

Wired on Friday: This week, Sun Microsystems, the Silicon Valley giant with $11 billion (€8.59 billion) in revenue, made what it declared a momentous announcement. Java, the popular computer language it had nurtured for more than a decade, had been set free. Free to adapt, free to tinker with, free to include in open source software such as Linux, and free for Java's competitors.

The world of programmers and pundits applauded. But if the applause was muted, it was probably because Sun is the company that has cried "free!" once too often. True enough, this time almost everyone agrees it has happened. But it takes time to explain why this new liberation is different from when Java was freed back in 1995 and again in 1999; why giving away its most popular software product has a chance of saving Sun; and why the company may have left it too late.

Sun Microsystems has never shied away from hyperbole about its place in the firmament of the computer industry, nor its importance to its future. Often, the company has been proven right - though it's sometimes difficult to tell whether this was due to the conviction or the publicity.

In the beginning, Sun's motto was "The Network is the Computer" - an insistence that the most important part of a computer was its interconnection with others.

READ MORE

It's hard to emphasise quite how radical a statement that was in 1982, when even local office networks were a rarity and the internet was a sparse fledgling. Its positioning of internet protocols at the very heart of its technology gave it enough leverage to establish itself as the premier machine upon which to run your internet site or business when the network really did reach its ascendency in the mid-1990s.

At that point, it plucked a project from its research and development division and threw out onto the web the new computer language - Java.

It was perfect timing: the crowds of programmers being sucked into the web explosion were open to new ideas. Learning a new language when entering a new landscape makes as much sense in programming as it does in the real world.

Java was a little clumsy around the edges and a little slow: but then so was the internet. They seemed destined for one another, especially when Sun cannily gave browser-makers a free copy of Java that could run programs written in the language on any website. It seemed, for a moment, as though the internet could do anything, and it would do it while speaking Sun's language.

But the match between the internet and Sun's Java wasn't quite as neat as the company made out. Sun took an incredibly brave step by making it possible to run Java on any computer, thereby breaking the link between most company-sponsored languages and the hardware they were trying to sell.

Java ran on Sun machines, but it also ran on its competitors' hardware: IBM-compatible PCs running Windows, and Macs.

But one has to draw the line somewhere, and Sun decided it needed to keep a degree of control of Java. That made sense in every playbook of the 1990s - except Sun's real competition, the Linux operating system and open source software. There, the appeal to programmers was the power they had to control and contribute to the software they used.

Again, Sun bent over backwards for the coders it courted. The company actually gave away copies of most of the "source code" - the secret guts - of Java for anyone to look at, for no cost. That was part of the appeal of open source software too, but open source software also lets you change the code, fix bugs and create your own versions.

Such meddling with Java made Sun's executives uneasy. Java had been an incredible branding exercise and an amazing architectural feat. Java "was" Sun, and Java succeeded because it ran identically everywhere. What if everyone started their own incompatible versions of Java? Sun's name, and the whole point of its language, would be tarnished.

That nightmare began when Microsoft released its own version of Java, called J++, with its own additions and incompatibilities. Sun fought back with a lawsuit, but the effect chilled discussions of freeing Java further.

In 1999, Sun nodded to the community of programmers that had grown around Java with a "community licence". It was granted so programmers could toy a little more with the internals of the language, as long as they promised to comply with a rigorous set of tests to prove their code followed Sun's specifications to the letter. It was free, but with a leash.

The network may be the computer, but the language had to be Sun's - and Sun's alone.

It didn't work. Or at least, in terms of hype, it didn't work. Java remains one of the most popular computer languages on the planet, but the cutting-edge programmers have wandered off into new areas.

Other languages began to attract the smartest minds and analysts began to talk of other companies.

Those smart minds and analysts this week agreed that Sun has finally done the right thing. The company has released its Java code under the Free Software Foundation's respected general public licence. That means Java can be fiddled with and absorbed into almost all open source projects. It really is free.

But while Linux - a strong competitor to Sun's Solaris in the mid-range enterprise market - will benefit from being able to distribute, configure and depend on Java being available, Sun may have already lost a wave of super-coders, and the speculators who keep Silicon Valley stock prices high.

The irony is that Java's new licence, and new freedom, probably guarantees that it will be maintained and used long after Sun has gone nova. That has to be a small consolation for Sun; but a powerful one for those who first ran with its bright young language, back in the most optimistic days of the net.

Danny O'Brien is activism co-ordinator of the Electronic Frontier Foundation