Java may not be on the radar of the average Mac user, but to the Java development community, Leopard has been a bombshell. Apple’s been slow with Java releases before, but something’s different this time: there’s been almost no information on the topic, and Apple has even pulled an existing Java 6 development build (released for Linux, Windows, Solaris, and every OS on Earth late last year). While Java and Apple apologists alike bend over to explain why this doesn’t matter / isn’t really an issue, we received an interesting comment here on CDMusic that suggests something big has happened they’ve all missed. This tipster argues Apple has all but eliminated its Java development team, and future development may (finally) fall to Sun. From our comments:
i had a long chat with a sun engineer over tea today where this issue came up as well. he was basically saying:
- apple has moved all developers from the java team to the ical team except for one poor bloke who is mainly working on a stable java 1.5 version
- the guy doing the actual 1.6 port left apple, apparently finishing the port is just a piece of cake, could be done in a few days but for legal reasons he cant do it anymore.
- apple will most likely never release an opensource version of their vm because it is a big dirty mess using various old frameworks all tied together in spaghetti code/ secondly it seems to require sourcecode access to the mac os x standard frameworks sources e.g. coreservices etc.
- some people at the java fx team at sun have started making their own java 1.7 runtime for os x which hints that eventually sun might take java for mac back under its control
- speaking of sound and other java things missing in osx – the answer is: wait for java fx! its very promising, you’ll be surprised.
Why this sort of rumor may be wrong: Note that it’s not clear how much of this is an accurate picture. Java isn’t dead in Leopard — on the contrary, Java 5 has been updated for the new OS, even if Java 6 is missing. And there are still developers at Apple working on Java, as they regularly appear on the java-dev list — and there’s more than one person. Even among Java developers frustrated with Apple’s progress, it’s clear that those engineers do a terrific job — though they may need more resources, and it is unclear whether it’s still advantageous for Apple to be maintaining Java in place of Sun in the first place.
Java everywhere, media everywhere: Why bother putting this on a site called Create Digital Music, and not, you know, Create Digital Java Applications? Because Java is a key, cross-platform development platform for music and multimedia, in the form of tools like the open-source coding-for-artists platform Processing, and a significant amount of media research. The alternative is generally less-elegant, more time-intensive C and C++ code; Ruby, C#, Python, and others haven’t really proven themselves for multimedia applications.
That said, this tip — if accurate — promises some hope for future cross-platform multimedia development. The issue is, Java in its current state has multimedia issues on all platforms. JavaSound is way behind on Mac OS X, but it’s also fairly limited for synthesis and audio performance on other platforms; that’s why virtually all cross-platform audio development is based on C/C++. If Sun is serious about multimedia support in JavaFX, we could finally have a more accessible cross-platform environment for doing sound and video coding. And, quite frankly, that could mean Java 7 developed by Sun on Mac would be better than the missing Java 6 from Apple. Not to mention, having Java in sync on Mac, Windows, and Linux is kind of the whole point.
All of this is speculative, because there’s been no official statement from Apple or Sun about Mac OS X and Java. So, here’s our plea — and part of why I would even reprint such a rumor — let’s get some official information out there. Java 7 is still in development, but surely Apple and Sun can start communicating about Java 5 and Java 6.
Related: what is in Java 5 for Mac/Leopard, including the major addition of a 64-bit virtual machine, though nothing directly relevant to audio development.