Recent

Support Wikipedia

Calendar

Navigation


On a New Road

Steve Jobs Comments on Apple's Java DiscontinuationFriday October 22, 2010
Macrumors has an article on the fuss about Java on the Mac. They quote Jobs as saying:
Sun (now Oracle) supplies Java for all other platforms. They have their own release schedules, which are almost always different than ours, so the Java we ship is always a version behind. This may not be the best way to do it.
It simply isn't true that “Sun (now Oracle) supplies Java for all other platforms”. IBM supplies Java for IBM's platforms, HP for HP's, even Azul systems does the JVM for their systems (admittedly, these all start with code from Snorcle - but then, so does Apple). In the beginning, Microsoft provided Java for Windows - but Sun took over when Microsoft violated their contract and made Java code written on Windows unable to run on other systems. Sun also provided the VM for Linux because there was no one else to do it. In all the other cases, the platform owners wanted to do the ports themselves so that they could put a lot of energy into it, and because they knew the platforms better than anyone else. Apple was the same: in the early days, they were insistent on doing the port themselves. They put terrific energy into it. They did a good job. But then, as OS X took hold and Apple was able to convince developers to target their non-portable/proprietary environment, Apple's fundamental control-freak tendency took over and they put less and less energy into Java. It also didn't help that the early ports that they did were heavily customized - far more than they needed to be. This made upgrading to subsequent releases very hard, and for quite a while Apple's JVM lagged behind all other platforms. But they eventually got their act together and their JVM upgrade pipeline got streamlined and they kept up very well in recent years.

None the less, there were recurring discussions about having Sun or the community shoulder the burden. There were lots of obstacles. One was that a lot of Apple's web sites (MobileMe, iTunes, the app store) were Java apps and they were nervous about not doing the QA themselves. The point became somewhat moot because Apple ended up using a lot of Sun hardware (yes!). But the biggest obstacle was their use of secret APIs. Yes, OS X has piles of secret APIs. Just like the ones that Microsoft had that contributed to their antitrust problems. The big area (that I'm aware of) where these are used is in graphics rendering.

A particularly ironic area was in aliased versus antialiased rendering: Apple's graphics pipeline is well designed: they do antialiasing beautifully throughout. The Java graphics spec has some careful wording to allow Apple-style antialiased-only pipelines to be used. Code that works well with this style of rendering is easy to write. Unfortunately, old Microsoft platforms only supported aliased rendering, and some (this was rare) applications would have rendering artifacts if antialiasing was turned on. These applications were broken according to the spec, and most authors fixed their apps so that they worked in both cases. But one developer took a serious "fuck you" attitude on this issue and forced Apple to implement aliased rendering - which they kept secret because it was such an awful thing to have to do. The "one developer"? Oracle, of course...

Comments:

This is the last nail in the java coffin. Give up man.

Posted by progr on October 22, 2010 at 05:21 AM PDT #

I'm not sure I'm following your point. Do you think its a good or a bad thing to have Oracle take over the Java port for OS/X? Or do you think it's not reasonable due to the use of the OS/X graphics pipeline?

Posted by Ted Wise on October 22, 2010 at 05:25 AM PDT #

Are you implying that aliased rendering - also known as "not-blurred rendering" - is never useful in any domain of computer graphics?

Posted by Osvaldo Pinali Doederlein on October 22, 2010 at 05:25 AM PDT #

Am I the only one, but this Oracle bashing in every post gets really tiring and unproductive?

Posted by Bob on October 22, 2010 at 05:50 AM PDT #

But what impact will it have on Java? Do you think that Oracle will support Java for Mac OS in the future? Here in Denmark a new authorisation service for the public sector is using Java. Without Java people will not have access to homebanking etc.

Posted by Peter on October 22, 2010 at 06:01 AM PDT #

Osvaldo: Yes, you are the only one! ;) Progr: I love the font rendering in Mac OS X. It's very readable and highly consistent across all apps. Calling it 'blurred' is just petty. If you're not an OS X user, why should you even be bothered about the lack of aliased fonts? I wonder if Apple will help OpenJDK to implement their customizations -- or has that even already happened? It'd be a shame if Java were to take a step backwards on Apple. One of the persistent rumours is that Apple took this step now because it means Java apps can't be distributed through the Mac Apps store (one of the terms is no deprecated libs or functions, which Java now is). If that so, it's a real shame - I believe a lot of educational and scientific software gets written in Java.

Posted by Adrian on October 22, 2010 at 06:08 AM PDT #

It is just Apple moving on, looking forward. Client-side Java was always awful, and it's deprecation is no big loss. OS X still has good support for Ruby, Python, Perl, C, C++, as well as Objective-C, so I don't see the lock in factor here, just the acceptance that the it's time to kick Java to the farm, to rest out it's days with COBOL.

Posted by Modern Developer on October 22, 2010 at 06:45 AM PDT #

Yet another reason to build a Hackintosh! :)

Posted by Mitch on October 22, 2010 at 06:47 AM PDT #

James, Thanks for the interesting insights. I sincerely hope that some 'best way to do it' is indeed found. His (purported) statement is something of a relief, after reading that Java was a 'deprecated' technology (in connection with the coming app store). With JavaFX 2.0 on the way, it really would be a pity if the JVM were not available natively on the Mac desktop. Any desktop which sought to forbid cross-platform GUIs (which are by-definition not going to be quite as good as native ones) is surely not a complete desktop operating system (for use by content providers as well as consumers). Btw, please could you one day provide some further insights into the reputed influences of NextStep and Objective-C on the design of Java - and hopefully lay to rest various claims and counterclaims. Best regards.

Posted by Rob Dickens on October 22, 2010 at 07:05 AM PDT #

Python, Perl, C, C++ aka "modern development"????? What are you smoking, guy?

Posted by Robert on October 22, 2010 at 07:07 AM PDT #

Java should die, welcome Scala.

Posted by Kyle T. on October 22, 2010 at 07:08 AM PDT #

Java should die, welcome Clojure.

Posted by Robert on October 22, 2010 at 07:16 AM PDT #

Guys try to do Scala and Clojure without Java I beg you.

Posted by Ivan on October 22, 2010 at 07:36 AM PDT #

As Scala and Clojure both run on the JVM, no Java = no sub languages either. Apples new appstore guidelines also state anything written with 'optional components' isn't welcome. So the majority of alternative languages face the same problems. It's not limited to just the explicitly named Java & Flash. In other news Microsoft dropped their support for IronRuby & IronPython yesterday. Protectionism musth've been in the air or something.

Posted by Richard on October 22, 2010 at 07:47 AM PDT #

Ivan: http://davidsiegel.org/scala-on-mono/

Posted by Helper on October 22, 2010 at 07:50 AM PDT #

Adrian: There are some special graphics applications that cannot use antialiasing because they need extremely precise output. One easy example is font rendering at small points (if any AA is necessary, the font rasterizer must do it by itself and not rely on the graphics stack's generic AA, e.g. modern subpixel font renderers). Of course these scenarios are not a problem if you render things with bitmapped APIs instead of high-level 2D/3D/text APIs, but that's a burden. Admittedly though, non-AA rendering is now a very small niche compared to the past because physical display resolution is much higher (so architects won't complain if their AutoCAD drawings look 'blurred', for example).

Posted by Osvaldo Pinali Doederlein on October 22, 2010 at 07:50 AM PDT #

Java is not dead, and will not be dead for a long time.

Posted by Luke on October 22, 2010 at 07:56 AM PDT #

Template for forum trolling: String.format"%s should die, everyone must now use %s",language1,language2);

Posted by Mike on October 22, 2010 at 07:59 AM PDT #

Hi Helper did not know about this , might be great.But your opinion , would you use it in production compared to JVM Scala :) I would not I am sure of that.Not until for a long time and wider acceptance especially as I can use everything from time tested Java right there in Scala.

Posted by Ivan on October 22, 2010 at 08:02 AM PDT #

Sad for developers using mac (including me) but probably a non-issue for the enterprise area. There Linux/Solaris/Windows reign supreme and i can't see Mac getting there. On the other hand we might end up with a more predictable release cycle but that strongly depends on Oracle I guess. Good thing I only got Mac OS X on my company machine, all my other machines are running Linux ;)

Posted by Jochen Mader on October 22, 2010 at 08:06 AM PDT #

Note: Scala, Ruby run using the JVM

Posted by Eugenio Segura on October 22, 2010 at 08:34 AM PDT #

progr: because Apple is the only platform to ever support Java, right? It doesn't look good for Java, but it's still a valid language.

Posted by Josh on October 22, 2010 at 09:10 AM PDT #

The last application that I used which had Java code was Now X. It totally sucked in its interface as a result. The Java influenced interface was un-Mac-like. It was also dog slow and nearly unusable. Eventually, Now Software went out of business since they could not get Now X working correctly compared to the original native version, Now Up To Date and Contact. Now that Apple has freed its web apps from Java, its web apps act more like native Mac apps.

Posted by James Katt on October 22, 2010 at 09:25 AM PDT #

With iOS devices (iPhone, iPod Touch, iPad) doing so well WITHOUT JAVA, I think Apple saw the light and realized Mac OS X devices can also do well without JAVA. Certainly, Mac OS X devices will never ship with Flash again. Like Flash and Adobe, Oracle will have to support JAVA on Mac. Otherwise, Oracle can see JAVA dying. I think consumers are better off with Oracle doing support of JAVA in other platforms. After all, JAVA is its platform. AND Oracle already is the one supporting JAVA on Windows (Apple's major desktop competitor). WHY SHOULD APPLE SPEND A DIME ON JAVA ON MAC IF ORACLE IS DOING JAVA ON WINDOWS AND MICROSOFT SPENDS NOTHING ON JAVA? If Oracle allows JAVA to die on the desktop, so be it.

Posted by James Katt on October 22, 2010 at 09:25 AM PDT #

Steve Jobs said that Oracle supplies JAVA for all other platforms. By this, he means DESKTOP PLATFORMS. Go to JAVA.COM, Oracle's site. You see that Oracle supplies JAVA for WINDOWS, SOLARIS, LINUX. Oracle does this for FREE. This gives a competitive edge to Windows and Linux since they always have the latest version. Steve Jobs is right. Oracle should also supply JAVA for Mac for FREE.

Posted by James Katt on October 22, 2010 at 09:33 AM PDT #

Let make Java => American National Standards Institute (ANSI) Yes. ANSI Java

Posted by Jj on October 22, 2010 at 09:35 AM PDT #

If Jobs hands over the JVM port to Oracle for their platform, that would be +1 competitive advantage for companies doing their own ports as they're bound to be more efficient. IBM and HP must be applauding Job's rashness.

Posted by Jon on October 22, 2010 at 09:49 AM PDT #

[Trackback] Steve Jobs Comments on Apple's Java Discontinuation : On a New Road Questionable Content: New comics every Monday through Friday...

Posted by msj on October 22, 2010 at 10:02 AM PDT #

You forget the new strange Oracle policy about Java. I think Oracle will not create a Mac JVM.

Posted by dafi on October 22, 2010 at 10:03 AM PDT #

But then, as OS X took hold and Apple was able to convince developers to target their non-portable/proprietary environment, Apple's fundamental control-freak tendency took over and they put less and less energy into Java. James this is a terrible, delusional misreading of that time. Many developers tried making decent Java GUI apps on many platforms and the user experience was awful. Apple had considerable continuity of 3rd party development on its platform; you make it sound like they started from nothing.

Posted by Toby on October 22, 2010 at 10:08 AM PDT #

Which is perfectly tuned with the predictable decay of java (in whatever platform).

Posted by sebastian on October 22, 2010 at 10:26 AM PDT #

So now I won't be pestered for meg upon meg upon hundreds of megs of repeated Java updates that I'll never use and don't want polluting my machine? Good riddance. All the people doing web-app development and the like who actually need Java will doubtless be able to compile some version or other soon enough (indeed, before Apple stops shipping it); OSX is, after all, a POSIX compliant Unix(tm) branded platform, and it's just not THAT hard to compile things on it. Desktop users? Nobody really cares about Java. Java is dead on the desktop. Thank God. (And what Toby said. I've seen what Java desktop apps look like. They're uniformly crap. UX is awful. Java as a *desktop platform* was and is a dead end.)

Posted by Sigivald on October 22, 2010 at 10:45 AM PDT #

I have been a Java programmer for nine years, and I've been using a Mac for development for half that time. In nine years I never, ever, wrote a Java-based application with a GUI. Yes, cross-platform applications do mostly suck, badly. But the vast majority of Java coding out there is for servers. OS X is by far the easiest platform to use for Java development, even with the same tools available on Windows and Linux (Eclipse or Netbeans IDEs, Tomcat/Resin for servlet containers) - and looking around my office, about 80% of us are working with Macs. My employer gives us a choice and most of us choose Macs. If there is no JDK available on the Mac, I will have to use Linux, which I love for servers. It's rock steady, but has an inferior desktop working environment (I use Ubuntu and RedHat daily so I know what I'm talking about)

Posted by Paul on October 22, 2010 at 10:46 AM PDT #

I have some programs in Java that work fine on Macintosh, Linux, and Windows. Could you advise me on a non-java solution -- esp. One that includes the tons of libraries that Java has?

Posted by Slothbear on October 22, 2010 at 11:07 AM PDT #

As far as "Java Client Apps Suck on the Mac", please take a look at CyberDuck ( http://cyberduck.ch/ ) which incidentally is written in Java and up to this point *only* runs on the Mac (a Windows port is in the works and currently in closed beta). Anyways: yes, 99% of Java Client Apps suck balls on all platforms. Developing a cross-platform UI is hard. The LaF isn't even the most glaring problem; although Metal sure didn't help and the default Windows LaF, although vastly improved over the years, is still a bit off from "real" native Windows. The major effort required to make a Java client application work and behave well under any desktop environment is to make it adhere to the platform's interface guidelines. For example the Aqua HIG from Apple or the Windows UX Guide. And there is *nothing* that helps you with that.

Posted by Christian on October 22, 2010 at 11:13 AM PDT #

There aren't many Java GUI programs I use but there are some developer tools written in Java that I think work great ... for example the Charles HTTP Proxy tool http://www.charlesproxy.com/ works great and has a wonderful GUI.

Posted by Stephen Bannasch on October 22, 2010 at 11:27 AM PDT #

If some exploit becomes widely known and used by black hats, Oracle should force Apple to remove Java from OS X. It shouldn't be Java to infect OSX. As people still use enterprise/business with Apple on same sentence, it just makes me laugh. IBM OS/2 added IBM Java VM, the best performing JVM of that era AFTER it was obvious that OS/2 was going nowhere. That is how you get respect on enterprise, not by removing java support just because your CEO feels like it. It is big deal because app store and java story means, Apple computers will be just overpowered x86 boxes to run oversized iphone.

Posted by Ilgaz on October 22, 2010 at 11:30 AM PDT #

So what some of you say is that java is on the decay? Well, you are wrong. What do you think is used on those big mainframes? It's java. Almost every bank uses java on the backend. Almost any server app is in java. Because java is superior to C/C++ when it comes to security and maintainability, can be ported to other systems with less effort (write once run anywhere is really just a nice slogan), and may even run faster than their non jit languages. On the desktop, java never took up. Java guis can be made to look nice (netbeans) or at least usable (eclipse/vuze), but they almost never feel native. Sunacle would need to throw tons of money on java to make the startup as fast as native apps. Once the VM is up (the server VM that is) java is really fast! Therefore it's Sunacle that must fix their UI in java. There is a osx server too, you know? But yes, Oracle should provide the Java. I'm sick of waiting two years for a new java release.

Posted by Erich on October 22, 2010 at 12:05 PM PDT #

Those who say Java GUIs are hideous have never run Eclipse.

Posted by Joe on October 22, 2010 at 12:47 PM PDT #

@Luke, who spoketh "Java is not dead, and will not be dead for a long time." -- no, I guess it is just pining for the fjords? @Joe, who spoketh: "Those who say Java GUIs are hideous have never run Eclipse." -- maybe they gave up waiting for it to startup, and moved onto a better IDE instead? Or perhaps they just ran out of RAM. The specs required for a Java developer workstation these days, with Eclipse, all the plugins, Java frameworks. A server class machine just for Java Hello World. @Jj, who spoketh: "Let make Java => American National Standards Institute (ANSI) Yes. ANSI Java" -- heh, why not. Management for committee was what killed C++, let's hope they can bury Java too, and get the stink off our computers.

Posted by She who develops without Eclipse on October 22, 2010 at 01:02 PM PDT #

@Rob Dickens: Here's a good link on the history and cross fertilization between ObjC/NeXTstep and Java: http://cs.gmu.edu/~sean/stuff/java-objc.html

Posted by rcfa on October 22, 2010 at 01:21 PM PDT #

People who think Java is 'dead' have clearly never been to http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html I think too many people confuse Java with the JVM. When people say they want Java on OS X I think they really mean 'we want a JVM for OS X.' I for one would like to start writing desktop applications in JavaFX and Scala, and I want them to run on OS X too. But I have a ton of existing Java code to maintain, and that needs to run on OS X as well. I don't think Apple have done anything particularly dastardly. They have not withdrawn Java, they have just deprecated it. If I were to try and interpret that act I would assume they are saying 'it's time for someone else to provide a JVM for OS X - after all Microsoft don't provide one for Windows - why should we.' Come on everyone - the world is not going to merrily along without a JVM for OS X - someone is going to provide one, and a pretty decent one I'm sure.

Posted by Eric Kolotyluk on October 22, 2010 at 01:24 PM PDT #

Use Windows or even Linux

Posted by Jay on October 22, 2010 at 01:28 PM PDT #

I would like to figure out which "version" of java I should continue to use, I always said Sun (now O.) but if these love-hate relationships on the top level continue - What will ripple over to where I do business using Java.

Posted by Clemens Ott on October 22, 2010 at 01:49 PM PDT #

James you should really write a book about your time at Sun. Your stories are great. As for people ripping on client side Java you should look again. Java on the client is amazing and can look amazing. Read Filthy Rich Clients if you want to see what modern Swing can do. If the Java community wants to make Java relevant again, then we need to start writing kick but applications that run on Windows, Linux, and (for now) OS X. I've tried to make Swing even easier for myself, and I plan to start writing client apps with Java that will look good on Linux and Windows. If Java gets scrapped on OS X then my next laptop will run Linux and (darn I hate to say it) Windows.

Posted by Chad Preisler on October 22, 2010 at 02:11 PM PDT #

Java is dead; long live Concurrent Clean!

Posted by Parallel Forever on October 22, 2010 at 02:19 PM PDT #

I agree with Chad write a book :) the speed depends also on who coded it , how and which elements are being used...that is what I observed - we use swing too

Posted by Clemens Ott on October 22, 2010 at 02:27 PM PDT #

Like @progr said in the beginning...dude, step away from Java, its dead, dead, dead. I dont care if Android uses it, Java, while brilliant for its time, now stands as one of the worst offenses perpetrated against good developers. We love you James but maybe you can concentrate on the next frontier instead of the Edsel of our time. Sorry to be so blunt but it needed to be said

Posted by h@kr on October 22, 2010 at 02:46 PM PDT #

I hate to correct Mr. Gosling but it appears Sun did the first Windows JVM. The 1.0 JDK supported Windows, and Microsoft hadn't licensed Java yet. Also, I don't recall any time when Microsoft was the sole source of a JDK or JVM on Windows.

Posted by Jon H on October 22, 2010 at 02:46 PM PDT #

Garrrr! seriously this is annyoing. The problem with Java, is that it was ahead of its time. And just now when next generation (hardware accelerated) webpages are being developed (Perfect for cloud implemented applications in Java). Mac decides to drop Java. Yet they manage to breaks OpenGL in Java applet using applet plugin2 just before this notice, mind you.

Posted by David (bobjob) on October 22, 2010 at 02:54 PM PDT #

Never liked Apple policy, thanks James for sharing your important point of view here. Regards, Davide.

Posted by Davide Perini on October 22, 2010 at 03:05 PM PDT #

"Sun also provided the VM for Linux because there was no one else to do it." - that's not exactly true, I remember that initially Blackdown did provide a JVM for Linux and only after a couple of years did Sun step in and provided a VM of their own (see http://en.wikipedia.org/wiki/Blackdown_Java for more information).

Posted by Marcel Offermans on October 22, 2010 at 03:31 PM PDT #

Just a note to all you Java-UI haters. I've been a Java developer for 12 years. I use a Mac as my development platform and we deploy Java GUI apps internally at our organization on Mac, Linux, and Windows. For delivering applications internally, Java Swing is an excellent UI choice. On my Mac, I use the following Java programs for development: IntelliJ IDEA, jEdit, Aqua Data Studio, SmartSVN, VisualVM, YourKit Java Profiler. All of these programs have very good UI's; So yes, you can make a good looking application using Swing.

Posted by Hohonuuli on October 22, 2010 at 03:38 PM PDT #

From what I understand, JavaFX 2 replaces Swing and with it the need/desire to have the look and feel of the native host replicated exactly. Java apps will look and feel exactly the same across all platforms. If that is the case, then Apple has very little to add by handling the OS X java port themselves. Right? And clearly, server side java like Tomcat etc on OS X will be just fine. So as long as all the pieces fall into place at the right times, there is no problem at all ... unless you wanted to write apps for the new app store in java. Then you are screwed. But then again, there was supposed to be a java app store at some point wasnt there? Why dont we hear about that any more?

Posted by Raffi M. on October 22, 2010 at 03:52 PM PDT #

It almost doesn't matter. Apple is and has been so far behind on their releases for Java, we've all been developing like 1.5.0 is the only and last release anyway. It's not as if there will be an OSX update that removes Java completely.

Posted by Anonymouse on October 22, 2010 at 04:00 PM PDT #

Mac/iPad went mainstream (every business, school, talk show...) and if your business apps don't deliver the same quality of User Interface that users of those platforms have come to expect, then you can expect to get canned, regardless of what tech you use. Unless Apple releases Cocoa for Java (lol), it really doesn't matter whether anyone produces a JVM for Mac or not because using it is gross and will get you fired for being obsolete and too stupid to keep up. How bad is the problem for Java? Imagine the CEO's spouse cuddles up next to the CEO as they fret over the company books on their sofa using a 2010 MacBook Air or iPad running your "1994-vintage" app. The spouse says "no wonder you're having trouble" and jokes about how their 11 year old could have done a better job based on his science fair project. Take the spouse and living room out of the picture and replace it with investors and directors in the boardroom --same thing.

Posted by Guy on October 22, 2010 at 07:53 PM PDT #

Sun are not the only ones to produce Java for Linux, as stated above. IBM do as well. See: http://www.ibm.com/developerworks/java/jdk/linux/download.html Oh, and @job above. Eclipse does not use Java for rendering GUI's. It uses SWT, which is a roll your own approach. It does not use AWT or Swing. Java then calls SWT, most of which are native APIs. -Chris

Posted by ChrisGWarp on October 22, 2010 at 08:44 PM PDT #

I'm a computational biologist, and I write most programs in Java. To not have a solid-performing JVM on OS X would set quite a few scientists back. Tragedy looming in the new future.

Posted by Peter on October 22, 2010 at 10:26 PM PDT #

The Open Specs discussion: I think very important now is that Apple has to publish their Java-related-Specs, so that people of the OpenJDK community can provide the installation-package for iMacs and iOS (iOS standard agreement). And also Oracle/Sun has to publish all java-related specs, I don't know if they do that already. So OpenJDK can be an organization like Apache Foundation, what has several subprojects and has many committers. Since 2005 I use Linux (Ubuntu) the whole day and it's the best proof, that a community-driven development works VERY good. See https://launchpad.net/ (software collaboration platform for Ubuntu with 20.000 projects and 338.000 Subversion-branches and 1.500.000 translations). Cheers! Daniel

Posted by Daniel Bruessler on October 23, 2010 at 03:24 AM PDT #

What most commenter's appear to overlook is that Jobs statement that Oracle provides Java for all platforms also can be read as that when Apple doesn't continue the maintenance of the OS X version of Java, Oracle should pick up the tab. May be Jobs gambles on the fact that the Mac is now reaching a significant market share, Oracle hardly can ignore. I wonder whether Apple's Mac market share in the enterprise work station market is already sufficiently large enough to be of any significance to Oracle. I love the beautiful consistency of the Apple products design and I understands that Jobs' single mindedness directly contributes positively to this objective. But with his growing market share he should also be aware that people have a mix of motivations to go for the mac. And that is not only beautiful design.

Posted by Twan van der Schoot on October 23, 2010 at 05:36 AM PDT #

Do not buy apple's freakish products. Go for Canonical and Google

Posted by Stan on October 23, 2010 at 05:47 AM PDT #

If so, then screw Apple. Get SuSE Desktop, get Canonical etc.

Posted by BM on October 23, 2010 at 07:22 AM PDT #

I take issue with the comment that no one else could provide Java for Linux. In fact, I was working for a company using Java using both blackdown and the IBM jit. I remember the mess when Sun decided to announce that Inprise would be taking over and the absolute furious reaction from the Open source community. Remember Sun had to apologize publicly. Don't rewrite history.

Posted by Tom on October 23, 2010 at 08:55 AM PDT #

to all the people who keep saying that linux or macos 8.5 or macos X or windows xp or windows 7 is easier to use, de gustibus non est disputandum. by the time you reach the age of 18, you should have seen more than one of them. I'm sure that there are others here who use each of them ever day and will say that a different one is superior than what I would choose to install on my personal laptop.

Posted by thomas on October 23, 2010 at 09:31 AM PDT #

The main thing is that if Oracle is serious about JavaFX, and it seems that they are, they will have to provide a Java runtime for Mac OS X.Very simple.

Posted by JTx on October 23, 2010 at 09:59 AM PDT #

To all of the 'die Java die' folks, I have a question: Is there any alternative to Java for writing cross-platform desktop applications? If so, how are these alternatives better than Java? If not, then maybe you should rephrase your message as 'don't write cross-platform desktop apps'. At least then it would be clear what you're railing about.

Posted by Jesse Barnum on October 23, 2010 at 11:28 AM PDT #

Anyone here play minecraft (http://minecraft.net) on the mac? FYI: it runs on Java. Without flash and Java many independent developers will just ditch mac support, rewriting code to be mac native and supporting multiple versions of the same code base is way to much like hard work.

Posted by Jasper on October 23, 2010 at 12:05 PM PDT #

FUCK FUCK FUCK JAVA!!! JAVA IS THE WORST FUCKING SLOW PROGRAMMING LANGUAGE!!! ONLY LAZY ASS DEVELOPERS USE IT!!! THX STEVE JOBS!!! HOPE OTHERs DO THE SAME!!!

Posted by ptrfck on October 23, 2010 at 12:13 PM PDT #

There we go again. Useless developers or poor users of desktop java applications developed by useless developers whine about the speed of java on the desktop. Since the beginning java's speed on the desktop was ok as long as you understood how to program desktop applications (single thread "rule", inform the poor user on time consuming operations). When you hear a developer (especially the seasoned ones!!!) saying whining stories about swing ui response being slow, be afraid, be very afraid and always keep an eye on what shit they commit! The look and feel was crappy, but you could always change it for commercial applications or buy one of the commercial l&fs out there.

Posted by ks on October 23, 2010 at 12:14 PM PDT #

Java deprecation makes sense. Just like with the iphone/pad, the strategy is: if you want to develop for Apple's products, you must buy Apple's hardware and software. It definitely helps mac sales.

Posted by ks on October 23, 2010 at 01:15 PM PDT #

"As far as Java Client Apps Suck on the Mac, please take a look at CyberDuck ( http://cyberduck.ch/ ) which incidentally is written in Java and up to this point *only* runs on the Mac (a Windows port is in the works and currently in closed beta). Anyways: yes, 99% of Java Client Apps suck balls on all platforms." CyberDuck only runs on a mac because it's a *Cocoa* application written in the java language using the Cocoa-Java bridge. That's why it's a nice app. That Cocoa-Java bridge has been deprecated almost since CyberDuck was released, and mac development mailing lists are full of people who are glad to see it go away. It's a standard Cocoa app, just happens to be written in Java. There are several other bridges, you can write Cocoa apps in Ruby for example. And unlike Java, the Ruby bridge is fully supported by Apple (and only just recently released, so unlikely to be deprecated any time soon).

Posted by Abhi Beckert on October 23, 2010 at 02:04 PM PDT #

James, As someone who has developed cross platform GUIs for windows and linux and OSX that did not suck, the 10X time spent making the Apple side work correctly was never worth it. Apple's releases of the JVM were tantamount to sabotage as they continually broke and re-broke the l&f classes so that you simply could not rely on it as a platform. Someone will fill in the gap. There are many people who have the integrity and the skill to do a much better job than Apple ever bothered to. Your angst re Oracle aside, this is a great thing for Java.

Posted by bob on October 23, 2010 at 03:46 PM PDT #

If Oracle is serious about promoting JavaFX 2.0, they'll provide a JVM for OS X. If they're not, they won't. Part of providing that JVM will be either 2-3 years of development, or obtaining Apple's Swing source code, possibly under some sort of strict licensing terms.

Posted by Luke on October 23, 2010 at 07:13 PM PDT #

dear oracle, Please resell java to google. google might give a better enhancement to java for it's slow vm and this would end all the disputes to other companies. let alone apple do his part, jobs is cracked and he is stupid. We can't do something about it.

Posted by Call Center on October 23, 2010 at 07:25 PM PDT #

I am amazed that most of people here who are somehow advanced developers actually think business/enterprise really cares about UI "beauity" as long as the tool gets job done. Another funny thing is people thinking this decision by a Unix 03 certified toy vendor can stop anything Java. As a last resort, one can tie it to documented x11 protocol and run it a bit uglier (!) but trust me it will work, even with faster UI. As there are many enterprise/J2EE developers out there, could you link a screenshot of z/OS running on $some million mainframes? Or, flight booking/call center shell? Bank terminal? As I mention above, this decision doesn't mean slightest thing, as last resort even gcj can be used and you can even submit your properly packaged app to app store. What bothers me (and should bother any Apple user) is: Apple will not be around in real business environment for a long time. They gave up.

Posted by Ilgaz on October 23, 2010 at 09:09 PM PDT #

I use java dev apps on mac which use the osx jvm. apps are eclipse, oracle's jdeveloper and netbeans. using oracle's jdev gives me weblogic as the app server. very powerful. apple's jvm handles multiple cores and is 64bit ootb. I can copy work from office to home and back without rebuilding. I prefer the apple user experience over linux as I don't have time to recompile tools I need. The UI doesn't work like windows or osx which is the THE computer/user interface these days. Linux has too many quirks. While I can understand a Mac App store not distributing java apps I need a jvm for development of server side and web apps. Both supporting Apple devices as the UI layer.

Posted by stever on October 24, 2010 at 03:02 AM PDT #

It would appear Apple does the very same thing as Microsoft with undocumented API. The Apple JVM port obviously uses the Graphics APIs, Cocoa, specific UI calls and that is fair enough. The rest of Java Runtime Environment does not depend on the Apple UI. The solution to my mind is 1) for Apple to release the port of the Graphics JVM 2) Since JDK 7/8 and JavaFX 2 are going to dependent on a new Java accelerated graphics rendering pipline API (PRiSM), which will talk directly with Graphics Processor Units (GPU) then it makes sense for Sun/Oracle to do the new work. For (2) it is, therefore, essentially that the new PRISM API can use public APIs in Apple that do GPU support.

Posted by Peter Pilgrim on October 24, 2010 at 04:12 AM PDT #

Maybe Oracle should just sue Apple and force the inclusion of Java the same way that Sun forced Microsoft to include Java: http://select.nytimes.com/gst/abstract.html?res=F60D13FD355F0C748EDDAF0894DB404482 although, I guess, that actually didn't work out in the end. After watching Microsoft have to pay Sun $1.6 Billion and now with Oracle suing Google over Android, I think Steve Jobs has a pretty simple argument that spending time and energy on Java does not make good business sense. Jobs pretty much believes the future of Apple is iOS anyway, and he has every reason not to want Java to be a part of that future. If Oracle wants Java to continue to run on OS X, it is pretty obvious they are either going to have to do it themselves or call David Boies.

Posted by Michael Pate on October 24, 2010 at 05:44 AM PDT #

"Sun also provided the VM for Linux because there was no one else to do it." Translation: GNU/Linux distros couldn't distribute Sun's (then) proprietary software. "In all the other cases, the platform owners wanted to do the ports themselves so that they could put a lot of energy into it" Business-speak gibberish. That's like saying "I fell down the Well, because I wanted to 'put a lot of energy' into climbing out of it." Nice spin, but the reality was somewhat different. The "other cases" you're alluding to, such as Blackdown, were necessary because of Sun's restrictive redistribution policies, which in turn existed because of Sun's restrictive (and deliberately anti-GPL) licensing (i.e. the CDDL) Things have changed now though, mostly, since Java (or at least forks like IcedTea) are available under purely GPL licensing. But the version of Java's history that you're portraying here is, quite frankly, nothing but deceptive spin.

Posted by Slated on October 24, 2010 at 06:29 AM PDT #

Look, the writing was on the wall in 2004/5 when Apple announced the deprecation of the Cocoa Java bridge. Apple (not Jobs; personalising an organisation like that is hackneyed and a touch asinine, be it Gates, Ellison, Ballmer, McNealy, Schwartz or Jobs) are merely deprecating their JVM implementation and looking to Oracle to pick up the batten - it is in Oracle's interest more than Apple's to make sure Java is made available on the Mac platform. You have deliberately obfuscated the issue by suggesting that HP and IBM's implementations are anything like a desktop JVM in what looks like a cheap (FUDdy) shot aimed at Apple. In terms of Apples interests (ie; the desktop market!) Sun/Oracle do all the work for Apple's competitors for them, why shouldn't it be the same for them? Note, Eugenio Segura: Ruby absolutely does not run on a JVM!

Posted by Simon on October 24, 2010 at 06:57 AM PDT #

For the all the Java 'tards - sorry fans, posting here in defence of your beloved language -- yes, we know it is not dead. We just wish it was. No one will mourn the passing of Java except the so-called enterprise Java-jockeys, too scared to embrace real languages, too busy fighting their class-path issues to notice the world has moved on.

Posted by Aspect oriented NetBeans Null pointer exception on October 24, 2010 at 10:03 AM PDT #

Aspect, Care to suggest an alternative that scales to the needs of enterprise development? Yeah, I thought so.

Posted by Luke on October 24, 2010 at 11:31 AM PDT #

@Aspect oriented NetBeans Null pointer exception: why do you need to troll? And what is a "real" language for you?. Only C and C++? then you are really living in a fantasy world.

Posted by Herve on October 24, 2010 at 01:13 PM PDT #

yes! oracle needs to be bashed silly -- instead of grooming & growing talent, they rip apart mature platform -- the ONLY reason "sun servers" were popular was because of their ability to do JAVA -- so oracle in all their SQL wisdom (btw PL/SQL is as scalable as COBOL! in a multi-core era) insult all their new talent pool -- anyone heard of Greenplum or Netezza or AsterData -- they all wiped Oracle off the SQL floor -- without JAVA there is no FUSION -- talk about the mktg genius of throwing engineers who built the platform out -- Oracle did the same thing that Apple did when they got rid of Jobs -- so they've a long way to go in learning their lessons

Posted by ram on October 24, 2010 at 08:34 PM PDT #

[Trackback] Apple hat in der vorigen Woche zwei sicherheitsrelevante Entscheidungen veröffentlicht: Die Einführung des App Store für Mac OS X und den Verzicht auf (die eigene Version von) Java. Während der App Store die Sicherheit ...

Posted by Dipl.-Inform. Carsten Eilers on October 24, 2010 at 11:53 PM PDT #

Interesting post, though back in the 90s when Java 2 (1.2) was released, it took Apple over a year to do the update from 1.1.7 (or .8 ?) - I had been using the Metrowerks IDE on Apple and had to ditch it for Windows rather than be left behind. I was left with the impression that Apple were not to be trusted for serious cross-platform development. The unanswered question in all this is what are all the trendy developers with MacBooks going to take to conferences??

Posted by Graham Phillips on October 25, 2010 at 05:45 AM PDT #

> Sun also provided the VM for Linux because there was no one else to do it. Well, I remember that differently. I remember Blackdown. Sun treated Blackdown very badly, and they finally gave up. But they had a Linux VM out, based on Sun source code, before Sun and Imprise announced one. IIRC the Sun/Imprise release was even based on the Blackdown Linux port. In December 1999 Sun had to publicly apologize for this. The apology is no longer to be found on the Oracle web page, but here is an news clip about it http://edition.cnn.com/1999/TECH/computing/12/10/sun.apology.idg/index.html

Posted by Harald on October 25, 2010 at 06:27 AM PDT #

Well, that has a simple answer, when Oracle java owner of this company trying to promote projects based on their profit expectations. And of course, discontinued projects unprofitable.

Posted by Edwin Contreras on October 25, 2010 at 06:38 AM PDT #

Simon, HP and IBM do the java browser plugins and web start support for HP-UX, Linux Power and so on. OpenJDK don't provide Java Plug-in or Web Start. IBM releases and supports their JVM based on Hotspot for Linux x86, x64, Power, 31-bit Z-Architecture/S390 and 64-bit Z-Architecture/S390X, besides that it's built into AS/400/i5/OS/IBM i series Power servers, and also supplied for AIX and z/OS. HP releases for HP-UX, OpenVMS and NonStop. Look for Oracles Itanium implementation instead, there you have no desktop intergration to speak of, no Java web-plug-in or Java Web Start. That's for both Windows and Linux. As for those developing in other languages do you not use Eclipse based IDE's, other Java-based IDE's? Netbeans, JDeveloper and so on. Most do I would guess. A good runtime is essential. Even the web designers would move away otherwise. Many commercial CMS-systems is Java based.

Posted by Penti on October 25, 2010 at 09:14 AM PDT #

Jobs should rethink his position on Java. Numerous Java programmers use Apple computers. I know it is a drop in the bucket, however, these same programmers are leaders of technical innovation. If Jobs starts pissing off all of the programmers and trying to lock them in a box he could find an increasing movement of people moving to other platforms. Apple's future may end up becoming a lot like Microsoft is today. Steve needs to give his head a shake.

Posted by Barry Kreiser on October 25, 2010 at 09:47 AM PDT #

It is interesting how polar the views are here: from those dead against Java due to their experiences with it, to those die-hard Java is the one true way programmers. Overall it does seem like a case: of: java.lang.programmers.bit.anal unhandled exception. The middle of the road view? Gosling had a chance to do something revolutionary with Oak, but in trying to create a dumb-dumb C++, and persisting with it, he had condemned a generation of rote-programmers to further boredom and problems in their "enterprise business apps" jobs. I agree with the earlier posting sentiment - Apple by dumping Flash and Java are removing the cruft - cutting out the dead flesh before it infects the rest of the body.

Posted by Greg Thompson on October 25, 2010 at 10:01 AM PDT #

James, Java and the JDK is also still living on OS/2 without IBMs and Snoracles hands. NeXT|Apple|Streve is loving since decades NEXTSTEP/OPENSTEP and the ObjectiveC language. See the interface builder which came from NeXT. It is just a decision and no religion to support or not to support a programming language.

Posted by Jogi on October 25, 2010 at 12:01 PM PDT #

'Sun also provided the VM for Linux because there was no one else to do it.' No. Work on Free VMs (e.g. Kaffe, GCJ) date back nearly as far as Java. But they were never going to use the Sun class libraries which were only available under a proprietary license until OpenJDK appeared in 2007. That's why GNU Classpath (1998) and then Harmony (2005) were developed. OpenJDK is now packaged for many distros. There's certainly a willingness to do Java on GNU/Linux. There's little willingness for proprietary licenses though. This move by Apple is showing the exact problem with such licenses; if they decide to no longer support it, that's it. No-one else can take on the job because the code is proprietary.

Posted by Andrew John Hughes on October 25, 2010 at 03:34 PM PDT #

Any descent application will have a pres layer well defined. Either Oracle/IBM decide to support the pres layer in Windows/Linux/OSX so they can sell more easily their server stack, or they don't and have to ask dev to developers to have a pres layer for each platform (Windows,Linux, OSX, iOS, Android, ...). It could be a mix bag with only support for the major one (Windows, Linux) and having to develop custom for the rest. My problem is that I bough Apple hardware to develop my Java code. If Oracle does not take the bucket, I'll install Windows on this hardware.

Posted by Alex Dubois on October 26, 2010 at 05:37 AM PDT #

> Sun also provided the VM for Linux because there was no one else to do it. There were people there interested. It's just Sun that on their volition. http://en.wikipedia.org/wiki/Blackdown_Java And then *BSD. Sun flat out refused to *allow* people to port JDK to *BSD. I think you should get your facts straight.

Posted by Dummy00001 on October 26, 2010 at 06:21 AM PDT #

Take that Java Tards! Heh.. stick to your heads first how books on how to codez teh java, and cut and paste from google, whilst the rest of us use modern tools, languages and frameworks. I know you are itching to reply, but you have to wait till Eclipse finishes thrashing the system and other general java suckage before you can even begin to type your responses.

Posted by Ruby Coder on October 26, 2010 at 08:10 AM PDT #

[Trackback] AT&T is finalizing a content download manager that is designed to cater to the rapidly increasing demand for controlled electronic software delivery. This feature is designed to accelerate the download process and give customers distributing large file...

Posted by business blog customization on October 26, 2010 at 09:01 AM PDT #

Well, I liked the Mac as a Java development platform. So it looks like in the future I will have to use it only to run a Linux virtual machine! Steve Jobs, don't count on me to develop proprietary Apple applications.

Posted by Aldo Laiseca on October 26, 2010 at 11:21 AM PDT #

It's a pity this forum must be littered with the garbage of retarded C# users.

Posted by Cal on October 26, 2010 at 02:27 PM PDT #

IT forks can't be just stupid enough to believe in what Oracle and Apple's Drama. They teamed up with one single mission, (Beat Google's Android and lower Java community's morale, they will have the final say). James was right, SUN forks should start to plant at somewhere else with great SUN technologies and Java(Sorry james, you didn't do it in your time). Nothing to loose! Apache, Spring Source, JCP are well formed enough to get Java moving forward. I'm still believe, IBM and Oracle will make Apple happy. HP also having mobile business and the vision is No 1 in mobile phone. Yeah...I see.

Posted by jose on October 26, 2010 at 08:13 PM PDT #

Java was good language for the its time. But now, with new requirements and standards, Java not efficient and its UIs are horrible. So, I think, Java's death is logical step in an evolution of programming.

Posted by Marat Dyatko on October 27, 2010 at 12:18 AM PDT #

What's all these new / modern languages you deserters are talking about. They dont even dare mention the names of the so called languages against java. I remember when i entered the enterprise industry some 6 years ago. There was a bombshell: "Code ruby on rails in 10 times less lines of code than j2ee". I just started my java career then and i felt hit by a moving train. I thank God i didnt quit like others. People just scratch the surface and they jump the boat when they encounter a little difficulty in something. Today, I am indeed happy, that i didnt quit. From, monetary gains, brighter prospects to job security, mention it. That is what has come to characterise my j2ee, now jee career. All the hype of those days just fizzled out. Java has an evolution strategy which many youngsters dont understand. Hence, java will also trounce your so-called new / modern languages to oblivion soon, just wait and watch.

Posted by new Color(1.0f, 1.0f, 1.0f, 0.5f); on October 27, 2010 at 01:12 AM PDT #

Post a Comment:
Comments are closed for this entry.