I'm not going to claim I'm an expert, but in my years of perusing the Apple Java development listserv, I've gotten something of a feel for who the running alpha devloper is.

Just a few days ago, who I'd call the "beta developer" (har; no pun intended) finally dropped the bomb that relatively newbies had been dropping with regularity. Java support on Mac OS X stinks, relatively speaking.

I've been on this list for many years and have been doing Java on the
Mac almost exclusively for many years, but the more it goes and the
more I'm fed up with it.

Why? Because the damn thing doesn't look right, it doesn't feel right,
and it's too slow. Anyone can say whatever they want, but at the end of
the day, that's what we've got. With the 1.4.2 VM which is now
Cocoa-based, any Java app that I try looks and feels like a sore thumb.
It's just not a Mac app, it's out of place. The fact that it's written
in Java stares at you in the face and I don't even want to use Java
apps anymore because of how sluggish they are.

[most of the letter snipped]


Now his point of view is that of a developer; he complains about using Netbeans and Eclipse and such. Though client user performance, especially with imaging, gets beat up quite a bit on the list, I find that everything from Furthurnet to that xplat eBay search tool -- that is to say, pretty much any relatively small to medium sized, client-side GUI app -- runs acceptably on OS X, even if they look a little funky and not horribly Mac like.

Headless performance, as I've addressed here before, is also fairly good. Mr. Roy, the above author, agrees. For people looking to run Xserves, Java does well.

But Apple's attempts to make Swing work in a Mac like way have run into trouble. Mr. Roy points out that performance was great in Java 1.3.1 on OS X when you had hard acceleration turned on. Quite right. I've whined that Apple's approach to remedying Swing was the anti-essence of crossplatform, and it appears that's been seen out. Apple's 1.4+ VMs have ditched much of what made hard accel'd 1.3.1 useful. All the while, support for 3rd party Swing LaFs has been horrendous in my testing.

I suppose my ramble is to say that Mr. Roy might have his finger on something, but I believe if he follows the thread, he'll find his ultimate complaint boils down to Swing and Apple's attempts to salvage it -- and Apple's failure to provide up to date VMs (we're still waiting on 1.5 in any form).

Anyhow, though most newbies get flamed off the list for saying Java on OS X stinks -- here's Mr. Roy's picture of this:

Whenever somebody here complains that his app is too slow on the Mac,
there is a barrage of refutals and questions about just how good his
code is.


... Mr. Roy hasn't. He's earned the right to complain, and hopefully Apple will listen. And, let it be said, not kill Java on OS X, but partner with Sun and make it right.