Jun 15
About nine months ago, a security flaw was found in the Java Virtual Machine. The flaw allowed a malicious Java applet to execute arbitrary (read “unauthorized”) programs on your computer. This flaw affected all implementations of Java, including that on Windows, Linux, and of course Mac OS X. Because the implementations of Java for the “non-Macintosh” platforms come from Sun Microsystems, they were all fixed relatively quickly. The Mac version was finally fixed this week by Apple.
In the earliest days of Mac OS X, Apple bragged openly about how OS X would be a premier platform for Java. Just to show their commitment to Java, Apple penned an agreement with Sun Microsystems that prevents Sun from creating a Mac version of Java. Under the agreement, only Apple can release Java for OS X.
Apple having control of Java development for Mac OS X could actually be a good thing in some ways. For example, since it’s treated as an operating system component in OS X, Apple could be tweaking and tuning Java so that it performs optimally on their hardware and operating system. And, if Apple was keeping close tabs on Java security and patching its version quickly, Mac users would have the best of both worlds… a secure Java implementation that performs well on their OS and hardware. Unfortunately, this hasn’t been the reality – at least not for a while. As MacWorld’s Dan Moren reported back in May, “Apple should be more aggressive on security, rather than resting on the laurels of its safety record. That way, if an attack does come, the company won’t be caught with its virtual pants down.”
Tagged with: Java • security
May 21
When Apple introduced OS X in 2000, Steve Jobs announced that it would be one of the best platforms for developing Java applications. Apple was so committed to Java that it signed an agreement with Sun saying that Apple would handle all Java development for the Mac OS X platform, forbidding Sun to produce a Mac version of the popular language. At the 2006 WDC, Apple claimed it was following Sun’s Java releases “very closely” with its own version. A year later, Jobs publicly derided Java as a platform that was no longer significant because it was bloated and no one used it anymore. (I guess that’s why “only” 3,000 people attended the Devoxx Java conference last year, 1100 attended one specific session at Java One 2008, etc. By comparison, 5200 attended Apple’s WWDC in 2008 and that covers more than just one subject area.) Today, the version of Java available in OS X is quite a bit behind the version available for other platforms. Still, Apple keeps its agreement in place that restricts Sun from providing a more current version for the platform. A consequence of this “about face” by Apple on Java is that Mac users are far more vulnerable to Java security issues than users of other platforms. A recent Slashdot post indicates that Macs are vulnerable to a 6-month-old Java flaw that has been patched on other platforms.
Java is still quite relevant today. My ISP uses it for some control panel functions. Popular game site “pogo.com” makes extensive use of Java. The OpenOffice.org suite uses Java. Lots of other applications use Java. I don’t have the figures to back this up, but I wouldn’t be surprised if as many people develop Java applications as develop Mac applications. It’s far from something “nobody uses anymore”. Just check the job ads. Java programmers are still in demand.
Even assuming I’m wrong and “nobody” uses Java today, why does Apple keep the Java development agreement in place that prevents Sun from releasing Java for the Mac? Why not terminate that agreement and let Sun’s developers “waste their time” developing Java for the Mac rather than using Apple engineers’ time to maintain something “nobody” uses? Is it that important for Apple to control everything associated with its products? Maybe it’s time for Apple to practice some of that “think different” stuff and let go of Java…
Tagged with: Java • security
Oct 24

According to The Register, Intel has “corrected” the executives who “hammered the iPhone for not being able to show the Internet as well as a PC can.” Their comments, it has been explained, were centered around the phone’s inability to show all types of Internet content because it’s not based on an x86 processor. The Register tells us that “it’s true, the iPhone can’t display every web page because it doesn’t support Adobe’s Flash technology or Sun’s Java. YouTube uses Flash, and the iPhone can only display YouTube content because a portion of the [snip] content has been converted to H.264 format, which the iPhone can view.”
In the end, The Register makes a good point. “Does Apple care? Probably not. It’s committed to using ARM on the iPhone, and having sold 6.9m of the handsets during its last fiscal quarter, it’s not short of the bob or two it needs to get Adobe to port Flash Player to the iPhone. If, indeed, cost was the reason it left the feature out of the current version of the iPhone OS.” (Actually, I believe I’ve heard there was another reason, such as placing too much demand on the processor in the iPhone.)
Tagged with: adobe • ARM • Flash • Intel • iPhone • Java • Sun • the register • x86 • youtube