May 11, 2007 9:12 AM PDT

Newsmaker: Java goes back to the PC

See all Newsmakers
SAN FRANCISCO--Java has come full circle, and James Gosling has watched the 12-year journey.

In 1995, Sun Microsystems introduced Java as a way to endow Web surfing with fancy graphics and more sophisticated interaction than just basic pointing and clicking. By introducing JavaFX Script this week at the JavaOne conference here, Sun is trying to reinvigorate that original idea.

Gosling helped invent the Java programming language, initially called Oak, in the early 1990s. He was involved in its early spread as a Web browser plug-in and its commercial success in server software and mobile phones.

But when it comes to "client" devices such as desktop computers, Adobe Systems' Flash took over where Java started. Sun is trying again, and Gosling, chief technologist for Sun's client software group, talked about the plans with CNET News.com's Stephen Shankland.

Q: Could you give a quick description of JavaFX Script?
Gosling: JavaFX describes a series of client initiatives we're doing. There are two that are pretty real right now. One is a scripting language called JavaFX Script. It's a scripting language designed for creating dynamic user experiences, for creating graphical user interfaces (GUIs) with really rich interaction and dynamic behavior and lots of artwork.

You can do that with today's Java, but what--it's too difficult?
Gosling: It can take a long time. Also there's this strange thing in the computer GUI business--traditionally there's been this notion that you want to have consistency. Companies like Apple and Sun have published user interface guidelines that say buttons should look this and sliders should look like that. But what people are wanting these days is something where the look is totally under their control--it's totally re-skinnable. The app (application) you see is really the face of whoever has built it for you. If it's a bank or a media company, the app you interact with is the face of the company.

Click here to Play

Video: Making things easy with JavaFX
CNET News.com's Stephen Shankland catches up with Java co-creator James Gosling and talks to him about the latest version.

It seems to me this is returning to the roots of Java, an interactive Web experience. Is that an accurate statement?
Gosling: It's very much an accurate statement. The applet (small downloadable Java programs) technologies and 2D graphics and Swing (Java graphical interface technology) are all about doing that. Applets are a technology that people have tended not to use for no particularly good reason. There is the legal history with things being a little bit uglier than they should have been...

Microsoft vs. Sun and the antitrust (lawsuit)?
Gosling: That was really ugly. It really killed the whole applet thing for a bunch of years, but one of the not quite well-understood facts is that applets still work really well.

So why are you guys doing this now? It seems a lot of this action is happening now with Adobe's Flash and perhaps Microsoft's Silverlight.
Gosling: This is certainly in that space. The Java platform has got a huge installed base, and the depth of what you can do in the Java platform is really huge. If you compare what you can do with Java coded in an applet, it's far more than what you can do with things like Flash. But the issue for us really has been that while the capability was there, it's been difficult to do. So we've been on this mad tear to make the easy stuff easy. We've gotten pretty good at making the hard stuff possible, and over the last couple years we've focused pretty heavily on the enterprise world and making (it easy to build) these giant enterprise apps.

For somebody's stock-trading application or something like that?
Gosling: Yeah. And it's gotten pretty respectable. Now we're trying to do the same thing for client application development.

More Newsmakers

CONTINUED: Bridging the digital divide…
Page 1 | 2

See more CNET content tagged:
James Gosling, applet, Java, Sun Microsystems Inc., Java Platform

8 comments

Join the conversation!
Add your comment
Rich interactive experience = Advertisments
It's just another name new type of ads. I'd rather surf the net with ActiveX and Java turned off!
Posted by bobby_brady (765 comments )
Reply Link Flag
still need activex no?
don't you need activeX turned on to run Flash?
Posted by sjoh (16 comments )
Link Flag
Java is not a desktop environment
Java, when using lightweight Swing rendering cannot:
1. Render a modern HTML page
2. Embed any heavyweight component, such as ActiveX on Windows
3. Let Windows go into a screensaver without leaking megabytes of memory (actually this bug was finally fixed in JDK6 after several years, but is still present in JDK5)
4. Do complex drawing without hitting one of many JDK-crashing bugs that haven't been fixed in years.
5. Define a UI layout in a configuration file separate from the code.

Sun apparently is making minimal investment into usage as a desktop platform (Java2D-JOGL integration was nice, but the OpenGL pipeline only works in a small percentage of the available chipsets) especially on the most popular (Windows) and second most popular (Macintosh) platforms.
Posted by samkass (310 comments )
Reply Link Flag
JVM footprint, speed, ugly
Java has limped along for 12 years now. Can we move on? It's slow, ugly, difficult to maintain. Those disadvantages outweigh the cross-platform capability.
Posted by frankwick (413 comments )
Reply Link Flag
Outdated arguments
With the JIT compilers. well written Java code is so close in terms of execution in comparison to well written C code, it is irrelevant, especially given the cross platform and security advantages of Java over C. Not that C should be used for anything other then system programming. It is also infinitely more maintainable then C code. A Java program is hard to maintain when it is poorly written. Something all languages suffer from.

Pointing to arguments that haven't been valid in years does not bolster your case.

Limped along? In what respect? It is the development platform to beat in enterprise and network applications.

Guess what language most of the server side code for world of warcraft is written in?

Java has its flaws like all languages, but it is very easy to learn, a snap to maintain(provided whoever wrote it understands simple OO principles). Personally I think Ruby in conjunction with the Rails framework will eventually catch up to Java in the enterprise market.

As for the desktop, Java is a decent language for desktop apps. The only downside, is the SLIGHTLY longer start time due to needing to start up a JVM. That amount of time is trivial, no matter how you look at it.
Posted by MSSlayer (1074 comments )
Link Flag
 

Join the conversation

Add your comment

The posting of advertisements, profanity, or personal attacks is prohibited. Click here to review our Terms of Use.

ie8 fix

What's Hot

Discussions

Shared

RSS Feeds

Add headlines from CNET News to your homepage or feedreader.

ie8 fix