Geertjan is a DZone Zone Leader and has posted 457 posts at DZone. You can read more from them at their website. View Full User Profile

Java SE 6 Update 10 Beta: Optimized Consumer End User Experience

04.03.2008
| 10498 views |
  • submit to reddit

Java SE 6 Update 10 Beta is available. Its focus is very specific—new features and enhancements aimed at providing an optimized consumer end user experience.

Below is the list of main enhancements. Soon, Javalobby will feature a follow-up interview with Ken Russell, the lead of the team that rewrote the browser Java plug-in. (The earlier interview can be found here.) The interview will focus on the items in the third list below, on the next generation browser Java plug-in, specifically on JNLP support for applets, as described here. Do you have questions that you would like Ken to answer? Leave them in the comments to this article and they will be included.

List of enhancements in Java SE 6 Update 10:

  1. Enhanced Java deployment

    * The Java Deployment Toolkit takes the guess work out of determining what versions of the Java Platform end users have installed on their PCs. It supplies Java based web applet/application deployers with a simple JavaScript interface. This greatly increases the ease of detections of users' Java environment, as well as the ease of Java Platform deployment.

    * The Java Kernel online installer lets first time Java users run applets and Java Web Start applications quicker without waiting for the whole Java Platform to be downloaded. The default Kernel installation is expected to satisfy the requirements of most Java applets and applications, and any additional libraries that may be required at runtime are downloaded to complete the Java Kernel installation. This installation mechanism let the end user get up and running significantly faster, while the complete Java Platform installation takes place in the background. See Java Kernel FAQ for more information.

    * For current users of Java SE, the Java auto-updater has also been improved, using a patch-in-place mechanism that translates in a faster and more reliable update process (the patch in place mechanism will take effect for end users who upgrade from this update release or later to a new update release). As an added benefit, follow-on update releases will no longer be listed as separate items in the Windows "Add or Remove Programs" dialog.

    * New Version Download and Pack200 Support. Ease of deployment: Server side requirements are removed! With the new Java system property and these technology, they will drastically improves the ease of deployment for developers to deploy their Java applications or Applets through the network.

  2. Improved performance and look & feel

    * The Java Quick Starter feature will prefetch portions of the JRE into memory, substantially decreasing the average Java Platform cold start-up time (the time that it takes to launch a Java application for the first time after a fresh reboot of a PC).

    * Hardware acceleration support: Java SE 6 Update 10 introduces a fully hardware accelerated graphics pipeline based on the Microsoft Direct3D 9 API, translating into improved rendering of Swing applications which rely on translucency, gradients, arbitrary transformations, and other more advanced 2D operations.

    * A new cross-platform Swing look & feel, code name Nimbus, provides a nice update over 'Metal' and 'Ocean' and with exciting features.

  3. Next-Generation Java Plug-In

    A new implementation of the Java Plug-In that features:
    * Better Windows Vista support
    * Ability to specify large heap sizes
    * Ability to specify per-applet command-line arguments
    * Improved reliability
    * Improved user experience
    * Improved Java/JavaScript communications
    * Built-in JNLP support
    * Multiple JRE version support

A great set of resources on this release (i.e, several useful articles) can be found on the page for the Java Se 6 Update 10 Early Access Program. Click here to download Java SE Development Kit 6u10 Beta, which is the full name of JDK 6 Update 10.

Published at DZone with permission of its author, Geertjan Wielenga.

Comments

Jacek Furmankiewicz replied on Thu, 2008/04/03 - 4:57am

Is Java Quickstarter enabled on Linux or is it still a Windows-only enhancement?

Vic Cekvenich replied on Thu, 2008/04/03 - 9:36am

OK, so I type in java -verion BEFORE I install this and it says:

1.6.0_05-b13

 so I assume I have a newer verion then this, b10 ?

Anyone?

 

(btw, this confusion is another example that java does not compare to Flex or Silverlight for end users)

 

Jesse Sightler replied on Thu, 2008/04/03 - 10:48am in response to: Vic Cekvenich

[quote=netsql]

OK, so I type in java -verion BEFORE I install this and it says:

1.6.0_05-b13

 so I assume I have a newer verion then this, b10 ?

Anyone?

 

(btw, this confusion is another example that java does not compare to Flex or Silverlight for end users)

 

[/quote]

 

You really can't be serious.  Flash just recently added support for H.264 codecs to the Flash runtime.  It will work with Flash 9.

Ok, not just any flash 9... Flash 9.0.115.0 or above.  That's not really any better than the versions in the Java world.  :)

Having said that, Flash sites often do a better job of version checking and graceful degradation than we do, but the bottom line is that the versioning scheme for all of these products tends to be rather obtuse (Silverlight is bad also).  

You have  update 5, not the beta of update 10.

Dmitri Trembovetski replied on Thu, 2008/04/03 - 11:48am

QS is windows only at this point.

Dmitri

 

Jacek Furmankiewicz replied on Thu, 2008/04/03 - 12:23pm in response to: Dmitri Trembovetski

We're at beta and still have critical features on Windows only?

Nice...

Dmitri Trembovetski replied on Thu, 2008/04/03 - 12:29pm

Do you really want us to go for <2% of the market (linux on desktop) at the expense of Windows?

As said many times, given limited resources we must first focus on Windows.

 

Dmitri

 

Robert Enyedi replied on Thu, 2008/04/03 - 1:02pm in response to: Dmitri Trembovetski

Do you really want us to go for <2% of the market (linux on desktop) at the expense of Windows?

Dmitri, I'm sure Jacek doesn't want this :-) Please give us a great end-user experience on Windows first. If Java can beat .NET at this (yeah, just look at Paint.NET) then it's a good start.

Jacek Furmankiewicz replied on Thu, 2008/04/03 - 2:34pm in response to: Dmitri Trembovetski

Dmitri...YES, I do (as a Linux user in particular).

Java is supposed to be a CROSS-PLATFORM tool. That is it main advantage over .Net.

What you are saying is basically "sure, we're cross-platform, but *wink*wink*nudge*nudge* really, the only platform we care about is Windows".

In this case, explain to me why I shouldn't just use C#/.Net, if Windows is the only platform that matters according to Sun. 

Without the x-platform aspect of it, Java has little (if any) technical advantages over .Net. Especially for Windows-only client side development.

Robert Enyedi replied on Thu, 2008/04/03 - 2:39pm in response to: Jacek Furmankiewicz

Jacek, I think that you're missing the point. Java runs fine on any major platform. The features introduced by Update N are for improved user experience. Windows, as the most popular desktop OS, is the natural first choice. Nobody says that Linux won't be covered at some point, but not for now, due to limited resources, as Dmitri explained.

Jacek Furmankiewicz replied on Thu, 2008/04/03 - 3:07pm in response to: Robert Enyedi

Robert, what you are saying makes sense, I will admit it. Especially if this was an early build, at the beginning of a dev cycle. But we're at beta, with a final release around the corner. This implies for the first time a major part of Java functionality will be enabled on one platform only. Imagine the stink if JDBC in its initial release had worked on Windows only, but not on Unix.

To be honest, I am afraid it will simply never come to Linux. Proof of that is in how poorly Swing is maintained for GTK+, starting from gross L&F bugs to basic functionality not working (e.g. JFrame.setExtendedState(JFrame.MAX_BOTH) does nothing).

I am basically wondering if Sun is serious about supporting Linux at the same level as Windows at all, or will it always be a neglected cousin that falls under the "do the bare minimum, but nothing above that" category. 

 

Robert Enyedi replied on Thu, 2008/04/03 - 4:10pm in response to: Jacek Furmankiewicz

Jacek, we are talking about relatively small improvements not things that make Java applications platform specific. The greatest pain for not having a QuickStarter is certainly felt on Windows. I remember Dmitri explaining in previous JavaLobby posts the platform specific issues with this feature. The solution that works well on Windows just won't on Linux. Rest assured that if the Windows implementation will be good, it will make its way to Linux as well.

As for platform specific issues, there are problems, I can't disagree. But it is all about priorities. The vast majority of JDK instances that run on Linux do so in a headless environment supporting an application server and not a desktop application. And Sun does support Linux. That's why Linux is one of the three of its officially supported platform (besides Windows and Solaris).

I suggest all of us to be patient and appreciate all the positive facts about Update 10 (there are lots of them), comment on what will be good and what won't be and lobby for all the good features to be part of the Linux JDK as well.

Mike Crist replied on Thu, 2008/04/03 - 4:26pm in response to: Dmitri Trembovetski

"Do you really want us to go for <2% of the market (linux on desktop) at the expense of Windows?" 

 No, but for the 8+% (and growing fast) part of the market (MacOS), I sure would ;-)

 Mike

Dmitri Trembovetski replied on Thu, 2008/04/03 - 4:30pm

> No, but for the 8+% (and growing fast) part of the market (MacOS), I sure would ;-)

 

Me too! 

Robert Enyedi replied on Thu, 2008/04/03 - 4:51pm in response to: Mike Crist

[quote=macrist]

"Do you really want us to go for <2% of the market (linux on desktop) at the expense of Windows?"

No, but for the 8+% (and growing fast) part of the market (MacOS), I sure would ;-)

[/quote]

A first step would be to have a final Java SE 6 release for MacOS X... But that one is on Apple.

Jesse Sightler replied on Thu, 2008/04/03 - 8:21pm in response to: Robert Enyedi

[quote=sky_HALud]

Jacek, we are talking about relatively small improvements not things that make Java applications platform specific. The greatest pain for not having a QuickStarter is certainly felt on Windows. I remember Dmitri explaining in previous JavaLobby posts the platform specific issues with this feature. The solution that works well on Windows just won't on Linux. Rest assured that if the Windows implementation will be good, it will make its way to Linux as well.

[/quote]

I completely agree... I use Java on Linux and the experience (when it is installed properly) is smoother than on windows now.  JDKu10 just improves that even farther.  Quickstart might be nice for Linux, but it is actually much less essential there than it is on Windows.

And I say all of this as someone who is still somewhat critical of Sun's decision-making on some of the user experience issues related to even this latest release (seriously... learn not to yell "I'M JAVA!!!!!!" at every slightest hint of an opening).

Jacek Furmankiewicz replied on Fri, 2008/04/04 - 7:17am in response to: Jesse Sightler

It's true, start up times on Linux are excellent, even for Swing apps. I see zero diff between Swing and GTK+ apps of equivalent side. In that regards, it's pretty impressive.

But the Java Kernel would be nice..although with Ubuntu's superior package installations, it's really brain-dead easy to get the whole JRE installed anyway (and I think it's even installed by default, 1.6.0_03 if I recall). 

So, how about just assigning one guy to work for 2-3 weeks and fix some of the most glaring Swing/GTK+ L&f issues...I'd settle for that at this point. :-) 

 

Derek Smith replied on Fri, 2008/04/04 - 7:31am

is the getjava.exe included in this release?

i downloaded the last release just for that and it was not included. 

Richard Bair replied on Fri, 2008/04/04 - 11:42am in response to: Jacek Furmankiewicz

So, how about just assigning one guy to work for 2-3 weeks and fix some of the most glaring Swing/GTK+ L&f issues...I'd settle for that at this point. :-)

 

I wish it were that easy! GTK LAF is based on Synth, and so is Nimbus, so I've had some experience digging around in the bowels of Synth, and can testify it is definitely not a 2-3 week job :-). Still, I'd be curious as to what your top 10 list would be for GTK. It is extra nice if screenshots accompany each item!

Jacek Furmankiewicz replied on Fri, 2008/04/04 - 12:23pm in response to: Richard Bair

Let's see:

 a) font rendering is pretty abysmal (once you enable subpixel aliasing in GNOME, the diff between GTK+ and Swing is very noticeable)

b) spacing between controls, in particular menus is way off

c) sometimes the combo boxes are really messed up (the dropdown button does not appear or bizarrely cut off)

If I had to go for most band for the buck, I'd say (a). But it's probably also the most impossible to fix. It would be great if Swing not only used the underlying OS to draw the controls (like for Win and GTK+), but used OS-specific font renderers as well (at least in the default OS L&Fs). That would alleviate a lot of issues. 

It is just a noticeable diff when I bring up NB and Eclipse next to each other, with all the GUI bells and whistles enabled. 

Dmitri Trembovetski replied on Fri, 2008/04/04 - 12:49pm in response to: Jacek Furmankiewicz

Screenshots, please (in png).

 

What distro, which version? 

 

 >  a) font rendering is pretty abysmal (once you enable subpixel aliasing in GNOME, the diff between GTK+ and Swing is very noticeable)

Please specify fonts (family, style, size), specific AA settings (in gnome panel).

Did you rebuild your freetype to enable hinting support, or are you using the default

autohinting?

 

Dmitri

 

Jacek Furmankiewicz replied on Fri, 2008/04/04 - 1:26pm in response to: Dmitri Trembovetski

Ubuntu 7.10, 32-bit. I'm not on it right now, but I think it's Serif, 8 point. Hinting set to slight, subpixel aliasing on.

 No,I use the freetype as is, no recompiling.

Dmitri Trembovetski replied on Fri, 2008/04/04 - 2:54pm in response to: Jacek Furmankiewicz

>  No,I use the freetype as is, no recompiling.

 

Then I would really like to see the screenshots and more details

on what you consider "abysmal" jdk font rendering.

 

Preferably side by side - same font, same size (http://java.sun.com/products/java-media/2D/reference/faqs/#Q_Why_does_eg_a_10_pt_font_in_Ja).

You can use Font2DTest, with "user text" selected (make sure to select

lcd aa), and say gedit, and use the same background/foreground colors.

 

The default "autohinting" in freetype is not very good when compared to JDK's font rendering

in our opinion. 

 

Thanks,

   Dmitri 

Bryan Taylor replied on Fri, 2008/04/04 - 5:12pm in response to: Dmitri Trembovetski

<blockquote>Do you really want us to go for <2% of the market (linux on desktop) at the expense of Windows?</blockquote>

Yes. Emphatically yes. Not only that, but I think you are hurting Java if you don't. I already have a platform that is optimized for windows, it's called .net. If you are trying to compete in that arena, you lose. Java's value proposition is write once, run anyware. If that doesn't work with the quick start feature set then it shouldn't be part of java.

If you forced me to pick which of the two to do first, I'd suggest linux, so that linux becomes a better choice than Windows for your desktop apps. Doing the opposite is a lock in strategy for windows. I don't want that, and as I said before, if I did I'd use .net.

David Castañeda replied on Sat, 2008/04/05 - 6:24pm

I think a lot of people is missing the correct statement, NOBODY is telling, no linux or MacOS support, they have to start somewhere and for any corporation it makes sense to start with Windows because that way the biggest amount of feed back for the product is obtained. anyways I just make some test with this update on some swing apps and it really lo faster. great (on-the-way) job

Bikes Direct replied on Thu, 2011/08/11 - 12:42pm

The enhancements introduced as part of the Update 10 release will allow application developers to focus on leveraging the latest features of the Java platform without worrying about the Java platform's impact on the consumer user experience. -BikesDirect

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.