4 ms·
You'd think that, but digging a little deeper shows: "Java SE 6 is available on 64-bit, Intel-based Macs only." Unless your customers are running 64-bit mach
by tom_rath 18y ago
You'd think that, but digging a little deeper shows: "Java SE 6 is available on 64-bit, Intel-based Macs only." Unless your customers are running 64-bit machines (and even they would have waited until this September for compatibility), you're SOL and have to compile a separate Java 1.5 release for Mac.
So, Windows 2000/XP: No problem! 1.6 compatibility in 2006.
OS X 10.5: Whoa! This Java thing is too new-fangled for us!
As for the GUI: You can get around that with a Synth theme. Ugly and slow Java on the desktop is a thing of the past (even on Mac).
- tlrobinson 18y agoIt's not just the theme that I dislike (Java on OS X tries to mimic native OS X widgets) Java GUI apps just don't feel like real OS X apps. Whether that's a shortcoming of Java itself, Apple's implementation, or Java developers, I don't know. Probably a combination. I'm pretty sure that all the Macs Apple sells now (and for the past year or so) are 64-bit. (Also it's been available since April). But yes, it's less than ideal.
- tom_rath 18y agoRestricting your customer base to those who purchased a new computer in the past year will greatly harm your income (particularly if you're selling business apps). As for the feel: Don't get bogged down by the implementation technology. The vast majority of your customers (presuming you're not targeting the rabid fanboy subset of Mac) will not notice nor care about the language you've implemented your application in. If your software does what a business needs and looks reasonably good while doing it, you'll make a killing.
- lallysingh 18y agoI think you mean restricting your developer base. You know.... as it's Java. It should run (with modest effort) on a few platforms.
- tom_rath 18y agoNo, I mean customer base. You cannot deploy Java 6 applications to Mac (except 64-bit Intel Mac OS X 10.5 after September, as mentioned above). You can build Java 6 for all other platforms (back to Windows 98, FFS), but to work for Mac customers you have to adjust your build to create a Java 1.5 version. You also have to add in special Java upgrade instructions for those using OS X 10.4 (since the 1.5 upgrade isn't included in automatic updates), and tell anyone with a Mac earlier than that to piss off, because Java 1.5 (released over FOUR years ago, in 2004) won't work on OS X 10.3 or earlier. That is an exceptional pain which isn't present on Windows or Linux. Apple makes wonderful hardware but they treat their third-party developers like crap. Microsoft is absolutely awesome in comparison and realizes that "Developers, Developers, Developers" are the secret to their OS's success.
- neilc 18y agoThe Java on OSX situation is pretty deplorable, I agree. But that is not equivalent to "treating their third-party developers like crap." Java is an underprivileged minority on the OSX desktop, for better or worse.
- tom_rath 18y agoIt's not just Java. Apple's been awful with backward compatibility for years. Every time Apple upgrades their Mac OS a frantic application re-write is often required from third-party developers just to get things working on the new platform. In contrast, I can pull out an application written 15 years ago for DOS and fire it up under Windows without a problem. Microsoft realizes how important it is to keep third-party software working on their platform and bends over backwards to provide that backward compatibility. For our own software, we've not had to tinker with the base code (written on Win 98) at all under Windows. Building desktop apps for Mac is a (lucrative) pain.
- tlrobinson 18y agoAside from a) the Mac OS to Mac OS X transition (though existing apps worked under "Classic" mode), b) some apps during the PPC to Intel transition (namely apps with assembly or endian issues), and c) apps that used private / unpublished APIs, that's not really true. It's true Microsoft goes to extraordinary lengths to keep backwards compatibility. Consider the Joel Spolsky anecdote about SimCity: http://www.joelonsoftware.com/articles/APIWar.html http://www.joelonsoftware.com/articles/APIWar.html In case you missed that, SimCity had a bug where it used memory it already freed. This worked under DOS for whatever reason, but not under Windows. So the Windows team hardcoded a special case just for SimCity. That is going too far, IMO. Why should my OS have all this extra bloat to check for buggy applications? This is why OS vendors seed preview releases to developers, so they can test their own damn software and issue fixes for these kinds of bugs. While it may have been hard to distribute updates 20 years ago, with the internet it's trivial.