Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm writing this on my 3rd Macbook. I don't have any reason to spread FUD against Apple. I think dropping Java (there isn't currently a real alternative to Apple's) is a strong indication. The App Store policies are a strong indicator, and restricting iPhone/iPad development environments is a strong indicator.

You may be able to do what you want on your own machine given enough knowledge/time. The issue arises when a business based on a Mac Java app becomes redundant when Apple feels like it, or when it will become very hard to make a living selling an app Apple doesn't feel is right for the Store.

Once upon a time there was a company called Microsoft who controlled a popular OS. People who called themselves "hackers" generally didn't like it, since they asserted this power to control the product space as well, changing APIs or bundling software to eliminate competition. Apple has gone beyond Microsoft's wildest dreams, and are on track become comparably widespread - I don't think they get a pass just because the standby light has the same frequency as a human heartbeat.



Who is supposed to be interested in maintaining Java on OS X? Apple, if their platform were too weak to attract developers who develop specially for the platform.

Oracle, if the Apple's platform is attractive enough. Note that Sun fought Microsoft to effectively take over Java on Windows. I know, MSFT one was not "pure," still that was the result. And one has to wonder if Apple would be sued the same way, since they also have OSX specific bindings.

The current bet is: OSX just became interesting enough to let Oracle maintain Java on it, if they want and are capable.

As far as I understand, the Java applications that were not already using OSX specifics weren't by any measure successful, and the only famous one is that FTP client, which is actually not a "write once works everywhere" Java app, but an OSX app accidentally written in Java. And it's an open source app. Can you please name some examples for "business based on a Mac Java apps?" Especially those that don't use OSX specifics.


http://www.entertainmentpartners.com/

They have Java based apps for the Film industry. I have to support them on OS X. They are hideous to use, hideous to install and maintain. I don't know if they use OS X Java specifics, but some how I doubt it.

They were broken by Snow Leopard. Took them months to fix.

My experience, purely as a sysadmin and user, is that cheap and cheerful cross platform apps seem to be much nicer when written for Adobe Air.


Their target was obviously not the users of OSX, I believe it was more an exception.


Can you please name some examples for "business based on a Mac Java apps?" Especially those that don't use OSX specifics.

I don't understand this question.

Either it's a Java app (no platform specified), or it's a Mac Java app that does use OSX-specific code.


Microsoft was sued by Sun because of "a deliberate course of conduct to fragment Java" and had to settle by removing their own Java implementation from the operating system.

http://www.javaworld.com/javaworld/jw-10-1997/jw-10-lawsuit....

http://en.wikipedia.org/wiki/Microsoft_Java_Virtual_Machine

As far as I understand Java license doesn't allow you to make a platform specific Java implementation.

So who's then to bet his business on Mac Java apps? The only potentially "safe" approach is not to depend on Mac specifics. But is there any example of a profitable Java app (which made profit by targeting OSX customers) applying the mentioned "safe" approach?


They got sued for not adhering to the Java spec, not for their extensions. The latter would be ridiculous, it would mean you could never distribute the JRE together with any sort of extra libraries. Even the Sun/Oracle runtime ships with non-standard extensions (javax.* , com.sun.*).


> not adhering to the Java spec, not for their extensions.

And AFAIK specs are made for "write once run everywhere."

> it would mean you could never distribute the JRE together with any sort of extra libraries.

You can as long as you are using only what Sun (now Oracle) approves.

> Even the Sun/Oracle runtime ships with non-standard extensions

They make the rules, so what they do can't be used as an argument.


Java certainly does not guarantee "write once run everywhere", although Sun had a "Pure Java" branding effort at one time.

What Microsoft did was extend the language to include an annotations feature (making it source-incompatible), and extending the JVM spec to include new opcodes (which crashed everyone else's JVM). Had they extended Java the conventional way there would not have been a problem.


And AFAIK specs are made for "write once run everywhere."

Yes, my understanding was that the MS implementation did not pass all the compatibility requirements. Adding extra functionality is entirely orthogonal to that point.

IBM's, Azure's and all the J2ME implementations come with proprietary extensions and are blessed by Sun/Oracle. I don't follow your argument.


> and are blessed by Sun/Oracle. I don't follow your argument

I don't have anything more to add than to quote you (the keyword is blessed) and also point to my previous posts. As long as you're forced to get the blessing before you introduce the interface to your own platform (or be forced to leave something out because you know it won't be blessed) why should it be in your interest to maintain the technology of others if you have your own technologies and a platform that's attractive even by itself?


From my own experience with it:

- .class files compiled on Apple's JVM work fine on other JVMs

- Source code written for Apple's version of javac will compile fine on other Java compilers.

To my knowledge, Microsoft's JVM violated both of these requirements, which was Sun's bone of contention. (Android's Dalvik is in similar violation, but doesn't pretend to be "Java" - they're being sued based on patents IIRC)


> .class files compiled on Apple's JVM work fine on other JVMs

Technically, you don't need to compile "on JVM" but "for JVM." And it doesn't seem to be as you describe for most of the cases (in Sun's words, 98%).

> Microsoft's JVM violated both of these requirements

AFAI understand it was far more subtle: the language (the source form representation) was extended with the features which functioned only on Microsoft's implementation, and only such classes were affected. See

http://download.oracle.com/javase/1.4.2/docs/guide/deploymen...

for a list of issues of switching from Microsoft VM based upon Java 1.1 to Sun's 1.4.2. The list appears to be very unimpressive.


The app store rules are a fairly smart move from a service and support perspective.

They don't want to have to manage complex dependencies in the app store.

Therefore no optional or deprecated packages.

This move doesn't really support the conspiracy theory of an Apple lockdown strategy, although it certainly doesn't give any confidence that such a strategy is not in the making.


The current App Store policies aren't a theory. The move to the App Store for laptop/desktop was just announced. Apple isn't Evil, it does what any company would do if it could. It's disappointing to see this discussion degrading to Apple fanboy/hater or "conspiracy theory".

I think App Store is a great solution for most users and developers. But not for the particular minority I define as hackers.


Yes, but Apple has given no indication they ever plan to shut down non-App Store distribution of software.

That would be suicidal.


Oracle will provide the JVM, if steve's email is any indication.


why should Oracle do that? Do you know any bank or company that runs Oracle on Macs??????? I don't see any reason for Oracle to maintain java on this platform. We understand that oracle only moves its butt, if moving the butt makes cash. Does anybody know whether they make cash out of java on Macs?

Even if Oracle would provide java, would anybody put so much trust into Oracle, to base the future of his/her software company onto this? Apple again has proven to be unreliable.

I think, this is a serious blow either for java or for Apple itself. Probably we may have to fall back to c, fortran or delphi?


Do you know any bank or company that runs Oracle on Macs

No, but I do know a lot of developers that write Java code that runs on banking infrastructure, that do.


That doesn't bode well. Isn't a large part of the appeal of a Mac that everything "just works"? How do you suppose sysadmins will now feel if banking infrastructure apps no longer "just work" and will now require an additional JVM to be installed from elsewhere and kept up to date through separate channels from Apple's?


I expect they'll get along just fine, the same way companies rely on, say, VPN software where updates are distributed from the vendor's website rather than the OS vendor's website.


I'd actually be curious to know of any banks that use Mac servers.


it does sound more likely that a java dev on a mac gets a windows install as a second boot option than he changes the bank's infrastructure though :)


Or they could do their development on Windows or Linux in a VM. Or via VNC or the Windows equivalent.

At the last big Weblogic project I worked on, the (many) developers worked on Windows in VMs, on Windows boxes. One advantage being that we could use VM images pre-configured with Eclipse and whatnot set up just right.


Even if Oracle would provide java, would anybody put so much trust into Oracle, to base the future of his/her software company onto this? Apple again has proven to be unreliable.

Yes, because as we all know, SUN has been a bright example of RELIABILITY in regards to Java et al...

The collapse of SUN, the Swing for the Desktop/JSF/Java FX fiascoes, the Oracle takeover and the recent JCP fights, totally inspire confidence in Java...




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: