Mac and Java: I see the love, now where's the point?
OK, first, I'm not bitter. Yes, as Daniel reported, when I did my demo at ADHOC, I did attract some boos when I typed
java BadBadThing on the command line. It's OK. It worked, I won a little award, and I got to plug my QTJ book a little (marketing was what I really got booed for, and rightly so!). Actually, this leads to something I've planned to cover in an evergreen blog, a blog for slow days on weblogs.java.net, like today.
So here's what I'm thinking about: Apple has produced a really nice implementation of Java. The Swing look-and-feel and integration with the OS, particularly the ability to create double-clickable apps so easily, has won raves. Apple even considers it one of the primary application environments for developing OS X apps (along with Carbon, Cocoa, and BSD/POSIX).
Recall also that the Mac OS X port is done by Apple, not Sun. Sure, Sun's glad that Apple's taking care of it, but the last Sun engineers on loan to Apple that I knew about were let go years ago. There aren't many other companies out there doing full-blown J2SE ports. It's severely non-trivial. There's IBM of course, but they don't exactly lack for resources.
So, Apple is putting a lot of time, effort, money and even a little corporate goodwill into supporting Java on the platform.
No seriously, don't just say "so that users can enjoy all the client-side J2SE apps" because, frankly, there aren't any. At least none that matter. ThinkFree Office and MyBooks are hardly serious competitors to Microsoft Office and QuickBooks respectively (although ThinkFree destroys my data almost as frequently as Office 2004), and the VersionTracker reviews of LimeWire are giving the site's obscenity filters a good workout.
That leaves developers. I'm not the first person to relate the yarn about PowerBooks and iBooks showing up all over Java conferences, and how developers are delighted to be able to work on Macs and deploy to more popular OS's. It's a scheme that's kept me employed and Windows-free for eight years. And I appreciate it very much.
But is all of Apple's Java development really aimed at keeping developers happy? Do they sell that many PowerBooks to Java developers to justify it?
The Mac platform gets a lot more bang for its buck when Steve Jobs shows off user-delighting features like Dashboard or multi-party video iChats. Does any end-user care that there's a really great Java implementation in Mac OS X? If not, do enough developers care to make it worth Apple's time to keep doing so?
There is an elephant in this room.