X
Business

Sun CTO promises Flash-like experience from JavaFX and new runtime

On Tuesday Sun Microsystems unveiled a new consumer-oriented product line called JavaFX, which among other things has a new language for interactive user interfaces. Sound a little like Flash? That's the idea, says Sun CTO Bob Brewin, and a new streamlined runtime system will help make it a reality.
Written by Ed Burnette, Contributor
On Tuesday Sun Microsystems unveiled a new consumer-oriented product line called JavaFX, which among other things has a new language for interactive user interfaces (JavaFX Script).
Sun CTO promises Flash-like experience from JavaFX and new runtime
Sound a little like Flash? That's the idea, says Sun CTO of Software Bob Brewin, and a new streamlined runtime system will help make it a reality. Today ZDNet talked with Bob about how all this will work together to improve the experience for the user and developer.

[ZDNet] In the technical session at JavaOne you mentioned the Consumer JRE and the Java Kernel. What are they? Are they the same thing?

[Brewin] They're related in that the Java Kernel is a way to figure out what is the smallest unit you can ship as part of a JRE. With Java Kernel you end up with only what you need. The Consumer JRE is a way that Sun can ship the JRE and improve the initial download experience.

With the Consumer JRE, there's a small digit megabyte download size to get the JRE up and running. Then over time, other modules will start to get installed. You don't have to remain connected; it will connect and download when a connection is available.

[ZDNet] So it's a lazy download using idle cycles.

[Brewin] Exactly.

Consumer JRE will roll out with the Java 6 update 2. The intention is that ideally it will roll into Java 7 and OpenJDK. I would love to see a JRE spun out of the open source project that address issues with platform footprint, download size, etc...

[ZDNet] Can you use JavaFX Script to develop large applications like Java?

[Brewin] There's no reason why not. There are no real problem with scale in terms of how big an application you can create. The current pre-release implementation would have performance issues for larger apps though.

[ZDNet] Why is that? Is JavaFX Script interpreted or JIT-ed bytecode?

[Brewin] Today it's interpreted. Very soon, the intention is that we'll have a compiler for it that goes straight to bytecode.

[ZDNet] How dependent is JFX Script on Swing? Would it make sense to have, say, a SWT version, or one based on native APIs like GDI or Cairo?

[Brewin] You could do it. We've implemented it talking to Swing and 2D, using reflection.

[ZDNet] A lot of people have compared JavaFX Script to Flash and Silverlight. Is that a fair comparison? Are in-browser presentations a major target?

[Brewin] Yes, that is a major target for it. I'd like people to do their own comparisons. Flash... no doubt it's a mature technology in the browser. From the client perspective it's there. Java brings (versus Silverlight and Flash) a depth and breadth of platforms it covers.

We're committed to round out the client side of that, in these two areas:

#1: Tooling (content authoring tools), to actually be a reasonable alternative to Flash and Sliverlight.

#2: Addressing some serious shortfalls in the consumer user experience relating to applet downloads, interactive installs, and footprint.

These are equal in priority, especially to compete in the browser space.

[ZDNet] Are you saying you'll be able to deliver a Flash-like experience, with quick startup and frictionless installs?

[Brewin] I do believe we'll be able to do that. We have some inherent "physics problems" relating to how fast we can release updates to the JRE, and how far can we get in next year. From a runtime experience we'll certainly be there. The big challenge is how can we get applet performance issues, frictionless install experience, and so on rolled out as quickly as possible.

[ZDNet] And how quickly will that be?

[Brewin] As I said earlier, the first part will be shipped in Java 6 update 2. The full implementation will take a year.

Java has a 90% prevalence on the desktop...

[ZDNet] But the versions are all over the place (so developers can't depend on them).

[Brewin] I agree, after I became CTO, my big task is Java and addressing that. I'm focused on developer and user experience. Barring something horrible, I'll be demanding that the engineering teams fix a lot of those problems.

[ZDNet] One user wrote: "Time after time, we'd encounter some bug fix that was in, say, a .9 release of Java, but Java WebStart could only download up to .7. So our only solution in these cases was to pre-install the correct JRE by hand."

[Brewin] I wasn't aware of that one. That's obviously a bug that must be fixed. Java should be just be part of breathing. It should not get in your way, whether it's browser based or WebStart.

Please tell your readers: keep suggestions and comments coming, I don't care how bad they are.

[ZDNet] Ok, but some people who have been complaining about the user experience for years feel that their complaints have fallen on deaf ears. What's different now?

[Brewin] If you look at the trend, over the last 5 years, the focus for the Java platform has been largely on the enterprise. Fixing the consumer experience will require a polar shift. The priority has been to deal with performance and issues primarily related to the enterprise; that has to change (and will).

[ZDNet] Would you consider some kind of advisory board made up of community members to give people a more direct way to help you identify and prioritize these issues?

[Brewin] That's a great idea, I'll look into it.

[ZDNet] Do you think the media coverage has been fair so far? Is there anything they've missed you want to point out?

[Brewin] There have been positives and negatives. One thing people have missed is that JavaFX is interesting, not so much because of the scripting but the actual runtime and experience. That has to be good or it's not going to fly.

[ZDNet] Thank you very much for your time. 

Editorial standards