James Gosling, the man who invented Java, claims that it's full steam ahead on the development of the cross-platform programming language.Gosling told silicon.com that his team of developers at Sun are now looking at exploiting its potential beyond the desktop, in phones for example, and before long, in such devices as fridges (see today's Agenda Setters interview at http://www.silicon.com/a41388 ). All well and good. But how about the critics who claim that Sun's stewardship of Java has hampered its development? Once upon a time, Java was hailed as the answer to all our computing needs. Unlike Microsoft's products, it worked regardless of operating system. This made it attractive to large companies with a plethora of legacy systems kicking around, and website designers who clearly need that cross-platform capability. But it hit some serious snags, the most important one being speed. Sun's Java mantra was 'write once, run anywhere'. Its critics hit back with 'write once, run anywhere - slowly'. Many Java-intensive websites ended up stripping out a lot of code to improve performance; the number of corporates building applications on Java are few and far between. So what's gone wrong? Are the critics right to blame Sun itself for stifling the take-up of this so-called standard? They allege that Sun is as bad as Microsoft when it comes to being open about its products. This means the development community as a whole has not been able to contribute to the future of Java; other companies have not been able to work on it; as a result Java has not reached its potential. They're half right. Java was never a standard in the truest sense of the word - Sun has always 'owned' it, and so the boo-boys who criticise the company for its lack of success as a standard are missing the point. You can argue that products and languages become de facto standards because they're good. Sure, marketing muscle helps. Market penetration helps. Hence the success of Microsoft in producing 'standard' products. But Java has been less than a roaring success because it hasn't yet proved compelling enough for the industry to adopt it as a de facto standard. That would probably have been true even if Sun had yielded to pressure, giving up its patents and opening it up to the standards bodies. Sun has enough marketing bucks and industry influence to make the noise required to ensure a de facto success. Java has 'failed' (although failure is too strong a word) because it simply hasn't achieved its promise. It may still do so, especially in a world where computing is becoming more and more pervasive. But whether or not it does finally take off in spectacular fashion has little to do with Sun owning it. The most successful advances in this industry have been de facto - not de jure.