Gosling Reacts To Apple's Java Deprecation
Kurofuneparry writes "Apple has announced that Java is deprecated as of the most recent update to OS X. This shot across the bow is getting some responses. To Jobs' claim that 'Sun (now Oracle) supplies Java for all other platforms,' James Gosling is quoted as saying that 'simply isn't true.' Much talk of a coming turf war is to be had. This certainly can't be unrelated to statements from Jobs recently covered on this website and is sure to make waves. Apple has enjoyed significant success recently accompanied by a widespread sense that they can do no wrong in business or design. However, is deprecating Java a mistake? It doesn't take much insight to connect the dots and see that Apple has starting marking friends and enemies relative to the increasingly heated fight for mobile and other platforms."
Overly-dramatic summary aside, isn't this just because the cost for Apple to support Java on OS X is greater than the benefit it provides?
at least link to the corresponding blog:
http://nighthacks.com/roller/jag/entry/steve_jobs_comments_on_apple
Or maybe Jobs cut a deal with Oracle for them to port to OS X. Though IMO, with Oracle in charge, Java's days may be numbered anyway.
This would be a non-issue if the new Mac Appstore could distribute low-level software, libraries, third party software and frameworks just like linux distributions. In particular, if Apple isn't interested in Java anymore, but someone else would maintain it, everybody would be fine.
The side-effects are that Java developers won't use Macs. (Since I use neither Java nor Apple products, I don't really care that mcuh, but I think Apple might be shooting itself in the foot.)
Of much more concern is the App store for Mac OS X idea. Apple is turning Mac OS X into a closed iPhone-like system. I guess my anti-Apple rant will soon apply to Mac OS X as well as the iP* systems.
The mistake isn't necessarily deprecating Java, if that is the way forward then that is the way forward. The big mistake is deprecating it without ANY concrete plans on a way forward. Corporate types hate uncertainty and Apple fails to realize this it seems. I mean we don't even know if Oracle will provide a JVM for mac, and if they do what will become of the Apple-specific technologies(such as launching with the Java application stub, using Cocoa instead of X, the Apple specific Java extensions etc.)
Where I work we use a lot of Apple Java and now we have absolutely 0 idea on whether we should invest any more in Apple at all. Buying new hardware and transitioning to a new platform is expensive, but at least the other major platforms(Windows and Linux) do at least provide some certainty as to the future of those products and the platforms they will support.
Basically Steve is treating major software platform updates the same we he treats iMac hardware updates, and that just doesn't sit well with a lot of people.
Monstar L
It seems to have become trendy again to hate Apple no matter what, but this is getting ridiculous. Why is it that Apple is expected to be the only platform vendor that has to maintain their own version of the JVM for free? Jobs is quite correct in saying that Java under OS X has long lagged behind the latest official Sun release. I wish it was more common for Apple to leave more components to third parties now that they've got more market share. Another example would be graphics drivers, which lag tremendously in both performance and features. I don't understand why on Earth any Java dev would want to be stuck indefinitely with Apple's outdated implementation that by definition would never be a major priority rather then get a version from the main organization behind it. For that matter I blame Sun's longstanding ambivalence toasted FOSS. If we had a fully open GPL edition of the JVM that was best of class like we should have gotten years ago, this never would have been an issue in the first place. It's yet another tech Sun's BS has screwed us on, with their insistance to out ZFS under the CDDL rather then Apache/BSD/LGPL being another major example. Anyone still have that old sun strategy wheel, from before 'acquisition' became their final exit?
No Eclipse, which is used in a vast number of development tools (including non-Java ones), especially for embedded systems. No NeoOffice, which (at least last time I used OSX, which was admittedly a LONG time ago) is the only way to make OpenOffice on the Mac usable. And plenty of business applications are in Java, either as applets or standalone applications - they'll break too.
Ordinarily, their would be praise in the streets for Apple "deprecating" Java. They've done a consistently late and shitty job of keeping their port up to date, with only the benefit of having it be part of "system update" to show for it.
Given that their marketshare has grown, and Sun/Oracle does a decent and/or better than Apple did job of keeping it updated for other supported platforms, it seems likely that support will actually improve.
However, in the case of Apple, it isn't hard (or, typically, incorrect) to view anything that they do as being in service of their single-vendor-golden-cage control freak ideology. On the mobile, it is cryptographically enforced. On the desktop, the intent seems fairly clear to start with the soft sell "The Apple Store isn't the only way, just the best one" saith Jobs, and abrupt terminations of distribution of 3rd party technology are likely part of that.
Server/corporate users of OSX, rare but not nonexistent beasts, should be celebrating right now, since they'll now have actual Java, not Apple half-assery; but it is also likely the case that this is an attempt to make java an even more obscure and peripheral aspect of the OSX experience in general(in the same way that x11 is available; but is considered about as "un-Apple" as firing up Parallels, and probably less common).
I kinda summed up the consequences, OK i was pessimistic but I also had forgotten apple used to have offerings in the server market. A server that can't do tomcat natively? hmmmm.
---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
"Apple has enjoyed significant success recently accompanied by a widespread sense that they can do no wrong in
business or design."
Don't forget the "Just blame Steve for all the issues" that the media uses.
Having flash and java coming directly from the developers its what I'm use to and seems to be the best solution in order to get always the latest securest version.
Get my e-mail after a captcha test in: http://tinymailt
They use Java exclusively for their management interface..
Oh that's right.. no one uses OSX in the server world anyway.
They already did. If I'm not mistaken, Windows 7 does not include Java.
Microsoft has never supported a JVM for Windows in the first place; at most, Apple is now in the same position, not worse. Besides not having a control of the market like MS does.
I'm not an Apple apologist, but it's not comparable at all.
Dilbert RSS feed
There seems to be a lot of confusion in this thread so let me make this as clear as I can - Apple isn't blocking Sun/Oracle's ability to ship Java for the OS X platform, what they're doing is dropping internal maintenance for the platform from within Apple themselves. Up until now Apple has been porting Java to the OS X platform, and they're now discontinuing that and consequently removing it from their update system.
If someone else, including Sun/Oracle want to start maintaining a Java for OS X release they absolutely can - it just won't be available via OS X's automatic update scheme any longer (and won't be something Apple is paying for).
Say good buy to hope of any java app in the new mac os app store And maybe even in web browsers in the app store.
Can't run OO.o (or LibreOffice) for a start.
There are still open source equivalents of the JVM such as SoyLatte and the like. Plus, I really don't believe Gosling on this. I imagine we will be seeing an Oracle branded JVM for the mac in the next year or so. The apple audience is just too big to ignore. It won't have first class citizenship like it used to have with the OS, but then again, Apple has been gradually pushing Java to the side. Java updates have always been incredibly slow for the mac and trying to make a Java app look native takes a tremendous amount of work that sort of goes against the spirit of Java and also creates compile headaches.
To play advocate of the devil here, since I care less about either Apple nor Java, isn't the side effect that Apple's competition in the phones world got a boot from the platform that is owned by the owners of iPhone?
I do not know what the implications are on the longer term but on the short term it causes their competition to spend time setting up new development environments, and diminished looking over the shoulders into the Apple technical world as developers are not going to keep up with that if they can't work from that platform anyway.
Open-source JVM's on OSX are highly incomplete and typically use X11. This is not ideal behavior, at all.
That's nice, but Apple is deprecating their port of *Java* and the *Java Virtual Machine*. Has nothing to do with the (unfortunately named) Javascript, which they are NOT deprecating.
I am going to imagine the praise that would have gone to Steve if he opened up the source of his java implementation instead. Then leave it to the community and if it lags simply tell people: java is dying, use (technology X) instead.
SAME EFFORT, better image overall. This saddens me as I attacked apple but also appreciated their tech for a few happy years.
No antitrust lawsuit IMO. Instead be honest and put a sticker on apple products saying "warning, the producer has the means and the will to control what you put on this device".
---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
Javascript have nothing to do with Java. Java and javascript are 2 different languages. This article is about Java, not Javascript. Anyway blaming Javascript for evercookie is like blaming C or C++ for the millions of viruses written in those languages.
Then Oracle should get right on that if they want to truly be a common platform for all OS.
The ball is now in Oracle's court. It's their responsibility to provide a JVM for Mac, just like they have the responsibility of providing it for Windows, Linux and Solaris. Instead of people blaming Apple for slowly bowing out of their 2000 commitment, it's time to step up the pressure on Oracle to treat OS X like they do their other platforms.
And, yeah, I know that AIX and HPUX are exceptions, but OS X is a much larger platform that Oracle can't afford to ignore if they want to follow through on their JavaFX 2.0 commitment.
This space left intentionally blank.
This is not a big deal really.
Software developers aren't really all that important to Apple market share anymore as they have been moving toward becoming more of a source for trendy tech gadgets rather than a major force in computer driven software for some time now. They intend to phase out of computers completely as there is more money to be made with iPhones, toy tablets and other trendy gizmos. They see no future in the business world of databases, web-development and science-based applications, but rather in the end-user market phone, games and entertainment space. Apple intends not to compete with Microsoft or Linux. With OS X, their primary targets are increasingly Sony, Nitendo, Nokia, Samsung and the like.
Lets face it modern American youth are really no longer receiving the kind of educations that they would need to remain current in the computer-tech world. Jobs is just adapting to market realities and the fact he has a captive market of folks who recognize that they can't really be "cool" unless they buy Apple products.
Huh? What history are you reading from? Microsoft very much did have their own JVM implementation for many years, then Sun started anti-trust litigation against Microsoft regarding it. Sometime in 2001, Microsoft settled and agreed to stop distributing it.
Basically, Sun never supported Java on the Mac, Apple did. Apple provided the developers, the tools, apple did all the work, and then paid Sun for the privilege. (it costs money to make sure your JVM was approved).
With oracle now suing every other Java implementation out there that wasn't approved Apple probably thought it just wasn't worth it. Expensive to do, costs money to do it, and unless your sending money up to oracle yearly, now a patent nightmare mess.
Look at it this way a side effect might be that Oracle stops suing non oracle approved JVM's, including Davik. The Bad press might be more than they realize.
i thought once I was found, but it was only a dream.
There are perfectly fine versions of both LibreOffice and indeed OpenOffice.org for the Mac, and many people haven't used NeoOffice in an age (and I don't think it depends on Java anymore anyway). Whatever the consequences of Jobs ditching Java might be (and I assert they are significant) they don't include a threat to open source office productivity apps.
They came first for Flash,
and I didn't post because I wasn't into broadcasting a webcam.
Then they came for the Java,
and I didn't blog because I wasn't a programmer.
Then they came for OS X,
and I didn't tweet because I wasn't a Mac Pro owner.
Then they came for the keyboard.
and by that time no one was left to bleet.
Domestic spying is now "Benign Information Gathering"
I think Gosling is correct.
Why would Oracle care to port JVM/JDK to Mac on their own, especially now, when so many developers that used to work on Java are gone from Sun/Oracle after the buyout deal?
Actually Oracle doesn't care about Mac platform, it cares about its money making business - databases, ERP software etc. and what percentage of that runs on any Mac server exactly?
The only single reason for Oracle to care is to try and preserve more Java developers, which they probably do care about, because so many of their own products use Java. But do they really care about developers on Macs? I don't see it.
You can't handle the truth.
Openoffice 3. Is full compatible and native with the Mac with intel processors.
You don't have to be smart to use a Mac, you just have to be smart enough to buy one
The issue here isn't Java itself but the fact that this is a prelude to treating Java applications like some sort of pariah by being excluded from the "Mac Store" and being excluded from Apple's new answer to apt-get.
This is about treating Java-in-general as a second class citizen on MacOS.
A Pirate and a Puritan look the same on a balance sheet.
IntelliJ, Netbeans and Eclipse products may cease to work on Macs so it will be more than just Java developers. Unless of course everyone decides to use Xcode or Vim/Textmate.
Call me when Apple takes root access away. Until then don't get your tinfoil panties in a bunch.
It's too bad; Macs really caught on at my workplace since OS-X was released. Our software targets Windows and Linux, but since we're mainly a java shop developers can run Macs on their desktops if they like, and since OS-X. almost half of them have chosen to do so; they all have 8-core power macs with 8 gigs of RAM etc. If java doesn't keep up on the Mac, OS-X won't be a viable option for us any more.
Except Davik is not a JVM. You can't download java *.class file and run it on Davik.
As the island of our knowledge grows, so does the shore of our ignorance.
I will determine if a app is purchase worthy based on its function not on someones conjecture that it is a "Good Buy".
And is it a coincidence that Eclipse is the tool used to develop Android applications? This will make it more difficult to cross-develop applications using only a mac. I'm sure there will be other Java implementations for Mac OS X so I'm not that worried, but it still makes you wonder.
This is about treating Java-in-general as a second class citizen on MacOS.
It is and has for a long time been a second-class citizen on Mac OS X. I can think of no major (or even many minor) applications for the OS X platform that are written in Java. It hasn't proven itself necessary. It's costly and difficult for Apple to maintain for no tangible benefit when they can simply provide the hooks for the actual owner of Java to implement their own package if they so desire.
Where's the beef?
It's a Unix system - I know this.
Hardly. This is a move to crush anyone that wants to use Java to build a cross platform "app" that would work on Blackberrys, windows, linux, iphones, osx, etc. Apple was officially licenced to produce their own JVM. To say they were worried about a lawsuit is horribly naive. Apple is an evil, exclusive company that has forever been secretly trying to go 1984 all over the personal computing industry. Once again their true colors are showing.
If it ain't broke, don't fix it.
I develop Java on Windows quite well thank you. Yes there was a dust up, when MIcrosoft tied to grab a hold of the language through proprietary VM, but they lost that suit and Windows remains a great platform for Java development and likely to stay that way, otherwise many customers like me will simply migrate to Ubuntu or another system capable of running Java, which would further erode Windows market share, particularly in the business applications market.
Thats why Apple wants to kill Java. They don't believe in end-users having that kind of choice. For them software and computer gadgets are all about closed and captive, rather than open markets. Just check out the dearth of really useful, but incredibly expensive stuff in the iPhone apps market that only do things that are Apple-approved. For many end users thats fine as they just want a cool app or gadget that works. They have no real technical understanding beyond pressing "buttons". They do other things with their lives.
Apple has become the trendy tech for the non-technical. Apple sees their market there rather than in general purpose computer manufacturing. Its a good move for Jobs. In his lifetime, things are likely to pretty much stay that way. For people who expand the boundaries of what you can do with computing technology Apple is becoming a closed, shrinking market, except for those developing games and trendy gizmo, entertainment software. For them in the long run Apple is increasingly becoming a dead market for significant technical innovation. For folks who are primarily interested in web-centric technical computing, Apple is really longer "cool" and really has no future, which is not the same thing as saying they won't have a sizable market or profits for some time to come. Look at Sony and Nintendo, they are still making money, but no one would claim they serve as development platforms for innovate software other than games and video entertainment.
Still wrong. The JVM Microsoft created for Windows (until they embarked on their fateful "embrace & extend") was a port of the Sun JVM.
Apple already lagged behind Java releases, especially large ones like going from Java 5 -> 6. If Oracle picks up the slack and develops an OSX JVM Java on the Mac could end up being in a better situation.
I do agree that if Java is left to whither on the Mac it's going to hurt Apple in some way, although it's still hard to quantify how much.
Don't you anticipate that Oracle will start shipping java for OS X? I mean, really.
Just wanted to say that I enjoyed your "Why I Don't Like Apple" post. It didn't over-dramatize things, and is a good argument against the long-term effect of making things hard to peek inside.
So which OS treats Java as a first class citizen?
The reasoning SJ gave for dropping it though was precicely that it wasn't keeping up – if apple maintain it, it's constantly one version behind as they get the new source and patch it into their JVM... If oracle do it, it stays nice and up to date all the time.
You an run the core product, but only a few of the modules that really provide the power to the OO platform, like highly integrated database-document interaction. But the vast majority of Apple users generally don't have those kinds of technical skills anyway.
Open office is a basically a business application designed to serve as an open alternative to the basic Microsoft suite of business products. Apple sees its future in the trendy gadget, cool phones and vido-games markets, not in general technical/business computing. As a percentage of their sales, developers are just a tiny fraction of their user-base, so why go through the extra expense of catering to them, when you can develop a closed-shop end-user general consumer market instead?
Yes they do because many of their enterprise Java GUI products run on Mac. They've also made a major commitment to JavaFX 2.0, and ignoring 20% of the desktop market would make no sense to them.
The question is whether Apple will give them their OS X Swing implementation, or whether Oracle will have to write it themselves.
This space left intentionally blank.
That's it!
Make a service called Bleeter! "The Voice of the Sheep!" You can get modded if other Sheep like your Bleet!
Maybe we can get Yasmine Bleeth to advertise for it.
My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
The side-effects of course are that Apple users will no longer enjoy the benefits of attractive looking, quick starting, super fast applications that run (at least) 500% faster than their C++ or even hand-crafted assembler counterparts. It's all due to the latest clever 'Just-in-time' JVMs that are to be released any centu^H^H^H^H^H day now... they'll be able to dynamically compile and optimise the program in the background, without any performance impact what-so-ever.
Apple code quality will also likely suffer, as programmers are forced to move from modern 'type-safe' languages like Java (except for that bit where you have to cast from Object to your desired type every few lines) that strongly enforce modern techniques like exceptions (except that bit where people just catch them and do nothing) to dead languages such as C++ that have all manner of dangerous features like unsigned types.
Thus... Macs as a platform? Unlikely to last another couple of years
I was going to use a server farm of Macs to run the middleware for my enterprise business application. Guess I'll need another solution ...
Honestly ... if you're so paranoid, don't buy Apple products. Or don't upgrade. Problem solved. But as a former Java developer who worked exclusively on a mac ... I can say that the Apple has slowly been distancing themselves from Java for awhile now. The fact that it took them two goddamn years to release Java6 was pretty telling and when they did release it, it was only for 64bit machines. It was truly maddening, especially considering how opaque apple can be.
But this fear of lockdown? That's just traffic driving sensationalism. And if it isn't ... if we do reach a day when you can't install an application on your macbook without apple's permission then that will be the day OSX itself becomes deprecated. That will probably be the year of the Linux desktop. Go knows, I wouldn't stick around.
...some time after they got sued by Sun for trying to "embrace and extend" it by adding incompatible extensions.
But then:
I know that's technically only one reason but it is so important that I thought that I'd mention it three times. If Oracle or IBM doesn't pick up Java support for Mac then you get to vote with your feet and switch to Windows or Linux. It'll even run on your Mac hardware. Not so easy if you're pissed off with MS and work in a sector dominated by Windows, MS Office or Internet Exporer.
In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
I don't think you are using the word "deprecated" correctly. I think you mean "obsolete" or "old", but not "deprecated".
Objective-C is not deprecated because neither Apple nor its original developers have deprecated it. Deprecation is the act of marking a software as having been superseded, and recommended that its use be avoided. It requires an agency to have denoted it so. Whereas "obsolete" is simply an adjective that does not require an agency.
If you tried to develop native apps using the current default Apple setup, you'd realize it's hardly ideal as well. And by way, the open source JVMs are not as incomplete as you imagine, considering they are being used by the majority of Disney's internet engineering team to develop the infrastructure. I'm speaking of SoyLatte in particuliar)
The Eclipse ecosystem is probably the easiest of the bunch to get running with good results on an open source jvm because it does not use AWT/Swing and would not have to use the X-Windows subsystem that the open source jvms use at the moment. SWT Libraries are native Cocoa, more or less, connected via jni.
Apparently you can translate them though and they'll "run".
They didn't make their own JVM, it's HotSpot.
The side-effects are that Java developers won't use Macs. (Since I use neither Java nor Apple products, I don't really care that mcuh, but I think Apple might be shooting itself in the foot.)
Of much more concern is the App store for Mac OS X idea. Apple is turning Mac OS X into a closed iPhone-like system. I guess my anti-Apple rant will soon apply to Mac OS X as well as the iP* systems.
Keep ranting. Nobody gives a shit.
Users want to be able to install apps with one click and have them just work, whether they are native apps or Web apps. Apple has done a ton of work to enable that on both their own Cocoa platform and the common HTML5 platform, which they have done at least as much as anybody else to realize. Apps that depend on Flash or Java don't fit this model. Not only are there various versions of the runtimes which may or may not run the app you're trying to use, and not only are there various security issues that come up regularly, the user is expected to play I-T guy and sort that all out.
If you are a Java developer, you can run Java on your own server and provide an HTML5 interface on the client, or a Cocoa interface on Apple platforms. That is how Apple themselves use Java. Cocoa and HTML5 both have auto installs and auto updates built-in, and are therefore consistent with consumer use. Whatever is on the server can be as nerdy as you like, but what is on the client has to be consumer grade. Flash and Java are not consumer grade.
Understand that Apple makes consumer products. Would you expect a TV or DVD Player to have Flash and Java and expect the user to update them regularly? That is insanity. So you're not going to have those runtimes on iPads and MacBooks either. These devices don't have I-T support people. The users don't know what Flash or Java is.
So you missed the point entirely. Apple's App Stores are not about being closed, they are about working for consumers 100% of the time with absolutely zero I-T work. Apple makes very, very little money from App Store. The incentive is not to close it, but rather to make it work perfectly. Same with Apple's Web app platform, which is 100% open it's pure W3C HTML5 and ISO MPEG-4 media so that it works 100% of the time for consumers with zero I-T work. You don't need various browsers you switch to for some sites, you don't need to update your Flash or Java, you don't need to download codecs, the one in your GPU is the only one you need. Flash and Java don't make the cut in consumer computing. Blaming Apple for that is just denialism, a way to put your nerd head in the sand and wish the clock would turn back.
they all have 8-core power macs with 8 gigs of RAM etc. If java doesn't keep up on the Mac, OS-X won't be a viable option for us any more.
But those are only the minimum system requirements to run java!
Blog + Tweet = Bleet
Domestic spying is now "Benign Information Gathering"
I know of one significant difference between the jvm: I made a scheme interpreter in java for a BSc project and when my interpreter ran on a mac I could evaluate 10000!, it would take a long time but I would finally have a result but on a pc or linux or even a SUN server it crashed around 4000! with a stack overflow. This difference was caused by the JVM, the one on from apple would optimized tail call recursive JITed methods into loop. The one from SUN would not....
Jehovah be praised, Oracle was not selected
You can translate anything to run on any computer. It's called the Turing Tarpit.
Higher Logics: where programming meets science.
It would be nice if Oracle did support Java on Mac. I work in a large dev organization that is heavily Java-centric, and the wonderful thing about Java is that we can have developers on Windows, Linux or Mac - their choice. Quite a few choose Mac. But Oracle (and Sun before them) has never really made money off Java on the client, or dev tools. The big money is in server-side Java apps, for which the preferred Oracle platform is Solaris now. So they may not care to invest in this project.
Apple has made PLENTY of bad design decisions. Plenty of lists: here, here, etc.
-- Barbie
nope, in 1995 or 1998 MS Java was bundled with the os. The SUN vs MSFT lawsuit was the result of the half-assed bundling.
Jehovah be praised, Oracle was not selected
>>>The apple audience is just too big to ignore.
Is it? According to web statistics, Apple Safari users are only double the size of Opera users, and Opera routinely gets ignored. I'm not convinced ignoring Apple Mac users will be a travesty.
"I disapprove of what you say, but I will defend to the death your right to say it." - historian Evelyn Beatrice Hall
The Microsoft JVM was a completely Microsoft written implementation if you're refering to the actual virtual machine - If you're referring to the VM and class libraries then I'd say you're wrong but closer to the mark.
Microsoft built the virtual machine from scratch and they had started building the class libraries when management decided it would be faster to license the class library code from Sun. So it wasn't a port but instead running the common Java classes.
Those classes were then extended but, up until Sun added specific non-compliance tests for the Microsoft native interfaces, it was the most compliant JVM and library implementation available (it was more compliant at the time than the Sun JVM).
That all stopped around JDK 1.1.4 ish time and a key argument in the lawsuit was over the native extensions with Microsoft saying the contract gave them the right to create the Windows native extensions and sun saying it didn't (hence the whole RNI/JDirect/JNI thing).
As an aside the fact that the Microsoft implementation of the VM not being based on Sun's came as a complete surprise to Sun - They thought they had MS locked onto the software roundabout where they'd always be able to control the direction by changing their source.
This is about treating Java-in-general as a second class citizen on MacOS.
It is and has for a long time been a second-class citizen on Mac OS X.
Java has been third-class for a LONG time, on pretty much every platform. Even flash gets WAY more attention.
You could remove Java from most people's PCs and the only side effect would be more disk space.
And on that "universal" platform known as the web browser? When's the last time you used a java applet? Is anyone who doesn't live in mom's basement even writing them any more?
-- Barbie
And by way, the open source JVMs are not as incomplete as you imagine, considering they are being used by the majority of Disney's internet engineering team to develop the infrastructure.
It depends on whether they're doing the GUI parts. The non-GUI parts of Java are relatively easy to keep in synch, as OSX looks enormously like other Unixes. But the GUI parts are difficult, as the OSX GUI model is quite different to that used in both classic Unix/X11 and Windows. That wouldn't be a problem for an internet engineering team - GUIs aren't needed for doing servers - but it does mean that the incompleteness is likely to be patchy; some apps will be much more heavily affected than others (and GUI apps will probably bear the brunt).
"Little does he know, but there is no 'I' in 'Idiot'!"
Oracle is targeting the business and general-purpose computer markets, whereas Apple is targeting the cool tech gadget, entertainment, tunes and games markets. This will simply reinforce the realization that you really can't use a Mac for business and scientific-technical computing for in the long run, what you do is only OK if its approved for sale in the Apple store. Apple's OS is more along the lines of the Sony and Nintendo approach of developing for captured markets.
Although you are right in the short term, the onus will really be on Apple to develop its own developer tools if it wants to compete at all in the business/scientific technology space. My guess is that they don't as they are making quite a bit of money selling "cool" tech to the non-tech, users who wouldn't know how to use an OS even if it were fully open. Apple will have to decide to either maintain their own JVM or leave their JVM in legacy mode and watch developers, scientists, and engineers move to non-Apple development platforms. This is the dilemma people who use a proprietary OS face in every app they build. For those who just use apps they buy this is fine. Those whose businesses must interact with java on the server side must look beyond Apple to stay competitive.
In reading a comment by a computational biologist, who evidently develops on an Apple platform, he thought the Apple announcement represents trouble. He should have more carefully investigated Linux to begin with since science can not utilize a close-platform because of its primary need of allowing other scientists to see precisely how results were achieved, which requires a sufficiently open platform. Fortunately, for him, Java on Linux is getting so good that he will hardly miss OS X, at least for his application development needs.
Apple is rapidly becoming a dead platform for applications development anyway, unless you are developing for the captive end-user markets they serve, which is fine as they are quite large and popular for those primarily directed toward entertainment, end-user experiences rather than general purpose computing or web-development, where increasingly switches and routers are being configured using java rather than C as they are much easier to develop and maintain for interfacing multiple platform environments.
While I don't care for the direction OS X appears to be headed, your statement is just fear mongering ( or you really don't get it).
All of my banking website depend heavily on JavaScript, but not a single one uses java.
In fact, I have a bank app on my iPhone, and I promise that uses no java...
Java is a second class citizen on Mac OS. This is simply about recognizing that.
The first class citizens on Mac OS are Cocoa and HTML5. That is it. Both platforms have automatic installs and automatic updates and zero configuration, which is what Apple's users demand and pay for. Together they offer a developer a yin yang of options. Proprietary or open, native or Web, Mac-only or cross-platform, App Store or your own server.
Java is Oracle's in the same way Flash is Adobe's. If you have a complaint about either, take it up with them. Apple has no responsibility to work for those guys for free. Apple's users have no responsibility to do I-T work to enable you to develop with either of those platforms. HTML5 is the standard common platform. Cocoa, Java, Flash are all entirely optional.
It's amazing how much of the geek community is completely at a loss for why Apple is so successful. Somehow it's impossible that the user experience they provide is what people want so it must be their marketing.
Apple and various others these days seem to be teaming up with Microsoft to attack their common 'threats'. So you see Facebook and MS going after Google, Oracle going after Android (to the benefit of Apple, and incidently MS), Apple ditching Flash (to the benefit of MS and Silverlight). And now Apple ditching Java. Who benefits from that? Well, anybody that's threatened by truly cross-platform stuff.
Here's where my paranoia kicks in. I think Apple only hates cross-platform stuff when one of those platforms is Linux. For all the talk about Microsoft being afraid of Linux, Apple actually has more to fear. Microsoft's various lock-ins are pretty secure, but Apple doesn't really have any lock-in beyond customer loyalty. If you're not locked in to Windows, then you're more or less equally able to use OS/X or Linux. That's why Linux's market share is pretty much comparable to Apple's. What's good for Linux is ultimately good for Apple, in that it helps break down Windows lock-in. But Jobs may be either short-sighted or cocky enough to ignore that. He's learned to 'succeed' in Microsoft's shadow, and maybe he's grown comfortable there.
Meanwhile, Apple has deals with Microsoft to produce versions of most of MS's stuff for the Mac, including Office and .NET. And .NET and Silverlight is where MS wants to go for its next generation of lock-in. Apple, in ditching Java and Flash, is making Silverlight seem more cross-platform than either of the others, since Linux success aside, Windows and Mac are the 'only' desktop OS's the general public is aware of (it was lots of fun seeing KDE as the standard desktop in 'The Social Network', though). So is Apple doing Microsoft's bidding, or are they just fighting for their survival. No matter, whichever way, Microsoft comes out the winner. Oracle had better pay attention to this stuff and produce a first-class OS/X Java port themselves (and lay off of Android while they're at it). Otherwise, they're unwittingly helping a little software company with its own sights on Oracle's core database business...
Posted from my Android phone. Oh, I can change this? There, that's better...
They came first for Flash,
and I didn't post because I wasn't into broadcasting a webcam.
Then they came for the Java,
and I didn't blog because I wasn't a programmer.
Then they came for OS X,
and I didn't tweet because I wasn't a Mac Pro owner.
Then governments made Apple way the only approved way to own a computer.
and I was pwned.
---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
"With oracle now suing every other Java implementation out there", oh please, Oracle is suing one company over Java, and it isn't even clear Google has implemented a Java. You cannot patent a language, it is an abstract idea. They did a clean room implementation, so Oracle can take their (bought) implementation and stick it where the Sun don't shine.
I love how tech nerds want to have it both ways with the Mac. On one hand they will tell you the Mac is insignificant and has minimal market share, yet on the other, everything Apple does that they don't like is a cause for anti-trust monopoly remedies.
Solaris of course.
Change is certain; progress is not obligatory.
Mac OS is a standard Unix. Your warning label is bullshit. There is absolutely nothing preventing Oracle or any Mac user from running anything they want on Mac OS. If Microsoft wanted to port Win32 to Mac OS they could do it. And in fact, Windows itself is supported on Apple hardware.
I bet you could get a patent on a combination of a blog post and a one-line status. I bet it would work too. A tweet that you can click on and turn into a full blog post. Surely it's no different from clicking on the summary of an RSS feed, but the patent office won't know that.
Hmmmm.... installing Linux on my shiny new MacBook Pro that work gave is starting to become more and more attractive.
I agree with a lot of others on this. My group (at a fortune 500 company) has recently started allowing engineers to use Macs and many have chosen to do so. Many other groups in our company have been opting for macs as well.
It's disappointing to see Apple hyper focus on shiny gizmos. One risk they are taking is that the cloud computing revolution hasn't fully panned out yet. If they have all of their eggs in one basket with the mobile devices and some killer apps in the cloud come out that eat into that market share somehow, then they'll be screwed.
However, a more likely scenario is that Apple has been enjoying a lead in the gizmo arena because they've been the first to do it "right" from the consumer's point of view. Unless they can keep innovating to keep ahead of the market catching up with them so that they are viewed is "The" device, they risk losing their market share to the ubiquity of other high-quality devices. Which is why they are so adamant about things like exclusivity and closed platforms.
Faith is a willingness to accept something w/o complete proof and to act on it. Reason allows you to correct that faith.
Not only that, any Oracle software interfaces I've seen in Java sucked ass. They don't get small machines in the same way Sun never got small machines. Java AWT and Swing is what happens when you take a company with essentially a big iron (well, in Sun's case, medium iron) mentality and expect them to produce an interface suite. It's like asking an elephant to perform a ballet.
So, yeah, we might get something out of Snoracle which will be an alleged JVM for the Mac, but I'm willing to bet it will be crap. They cannot even write good Java interface code, there's not a chance in hell of them being able to write good internals.
One has to wonder if this is the first step of several. The App Store for the iThingies effectively disallows all interpreted languages. Will they make the same choice for the Mac store? What happens to, for example, python and perl for OS X?
Maybe it would help if you rewrote that in English.
Although it was a while ago (~1993) I had dinner with both Steve and Larry at Larry's house in Ateherton. At that time they were on very good terms with each other and I see no reason for that to have changed since then.
Yes. Mark my words. You will never see Larry speak out against Steve on this one. I guarantee that they discussed this off-the-record before Steve started mouthing off (as he seems to be doing quite often these days, but as I'm sure, no less calculatedly ;) *They* have a plan, and in this case the plan is probably that Oracle will take over releasing and supporting Java for OS X. If anything else happens or this turns into a public falling out between the two of them, I will be very surprised.
Apple has maintained Java on Mac for the last 15 years. I don't know if that's because Sun didn't do it or because Apple did it anyways. Chicken and egg problem. Now Apple isn't removing Java, merely no longer providing new JVMs and updates. You can look at the move by Apple in two ways:
These two reasons are not mutually exclusive. For the most part, the existing JVM and updates will work for a while. The basic functionality of Java is there but there may be obscure bugs that need to be addressed. I would guess that this is okay for 98% of people who use Java on Macs.
Well, there's spam egg sausage and spam, that's not got much spam in it.
Its not really about root privileges but rather what API's you can hook to in for applications development (expect for those coders who are so good, they do all their net apps in assembly language). Who cares what you keep in your root directory for what apps you give root privileges, most markets are focused on who can control how entire systems interface with other systems and software developed on those systems.
With cloud computing and open service oriented software technologies web-mediated applications become more and more predominant on the bigger iron and multi-sever environments, primarily because of maintenance and development costs associated with supporting multi-platform systems and where Java thread execution and remote method invocation become increasingly more important, what goes on with entertainment, the latest tech gizmos, and cool iPhone apps is of limited concern to all but end-users.
Apple is simply announcing in a subtle way that it is no longer really targeting the general, all-purpose computer market, but has decided on carving out a highly profitable niche market, as the Nieman Marcus or Sharp of the CPU-based tech world, much like Sony wanted to do but not as successfully as Apple. That is the vision of the Apple store. See a cool application you like at your store buy it and you pay for it. Since their market is for non-developers they don't care if it is closed source at the level of the OS.
Apple has pretty well given up on the business applications side of computing, except in the productivity suites for end-user area. It has no sever technologies and is rapidly diminishing as a significant software development platform for general-purpose computing. This is just a subtle way of making the announcement without making their end-user customer base nervous. Yes, this will largely drive developers of scientific-software and other technical users from the Apple platform, but they are such a small fraction of their market share and expensive to cater to, so Apple really doesn't see it will loose much.
Save this post. It is the first legitimate use of over 9000!
anon
Open-source JVM's on OSX are highly incomplete and typically use X11. This is not ideal behavior, at all.
I don't see X11 as a problem. For the most part when you write Java stuff for desktop computers, you are aiming for a cross-platform application, and you don't really care if it has a native look-and-feel (especially since you can't really get a native look-and-feel anyway).
Does Oracle maintain Quicktime for Solaris? Should Apple be responsible for Silverlight on OSX? Then what's the big hang up with either Oracle or OpenJDK folks taking up Java on Mac. Now that it's Intel, the only port-specific part is UI and Open Source communities have potted UI toolkits to Mac before - see GTK+ and Qt.
If its not Apple approved, don't look at the Apple store for your product as you won't find it. For those, you will need to turn to the general purpose computing market rather than the increasingly closed Apple platform.
If they don't care about OSX then why do they release their database server for it?
The real question is why your code was computing factorials recursively
When are people going to wake up and realize that Java has become a proprietary platform that is only as open as Larry Ellison decides it should be?
Apple, Google and Microsoft have all had run-ins with the owners of Java now. That makes all three of the market leaders. Something is going to have to give before long.
When Java first appeared, the reason it was interesting was that it was the first language you could teach a course in structured programming for that was actually useful as a development platform. Before that you had a choice of Pascal which was broken as designed or C which was dressed up assembler. C++ was and still is a poorly designed hack. Objective C only ran on one machine that cost $10,000.
Since then Java has been increasingly confined to server applications. You can't write a good Windows application in Java and you can't write a good OSX application either. So that pretty much confines its use to Linux or server code. Apple stopped their rackmount server product some time ago.
I gave up Java for C# after the Microsoft lawsuit. It was clear to me then that it was a matter of when not if similar suits would be filed against others who might threaten the interests of Sun. Now that they are owned by Oracle, it is clear that we are not going to see the emergence of any data binding technology that might threaten the industry position of SQL.
It will take them some time to realize it, but Apple, Google and Microsoft could make common cause here and develop a next generation language that could superset C#, Objective C and Java and serve as a common platform for the whole industry. This is of course what Microsoft has been attempting with C# anyway. They have even started to take features from F# and the functional programming world.
There would still be major user interface differences of course.
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/
You're horribly out of touch with reality
Not sure if the GP is one, but that would just be par for the course for Apple fanboys.
You do realize that the entire front-end of Oracle applications is written in Java? So no Java on the Mac in a corporation using Oracle, means no Mac sitting on that corporate desk..
He said that Microsoft never supported the MS JVM so essentially: he is right.
"I see undead people" Warcraft III - Necromancer
http://www.merriam-webster.com/dictionary/prophesy
"Slow down, Cowboy! It has been 3 years, 7 months and 26 days since you last successfully posted a comment."
Merriam-Webster lists it... prophesy
Rule of Slashdot #0: You and people like you are not representative of the larger population. - A.C.
Nah, shouldn't be that hard. As far as I know the OSX-ification of the Java UI is done via an implementation of a PLAF (Pluggable Look and Feel). In that respect Swing is well designed.
The apple audience is just too big to ignore.
Not for Oracle. If you're writing an app meant to be used by consumers or artists, then you may need to worry about Apple users. If you're writing databases or "enterprise" applications, Apple is irrelevant.
My company produces software that runs on Linux and UNIX-like servers. We had one customer running it on Mac OS, but after fighting with all the weird differences between Mac OS X and all other UNIX-like systems, we said "screw it" and dropped support for Apple.
Apart from that one customer, no one has ever asked about our software on Apple.
IMO, Apple is in danger of losing even the artistic community. If enough critical creative apps also have Windows equivalents, it'll only take one killer app to go Windows-only to hurt Apple badly. I think artists use Apple because it has all the creative applications, not because Mac OS is so wonderful.
You could evaluate it using the Windows or Linux VM, but you'd have to use -Xss.
In what universe does dropping support for future versions of Java stop existing products from running?
The eclipse developers know that a very large fraction of their users are Mac based. It would not surprise me if a majority of their users had a mac laptop. When I go to IETF these days over three quarters of attendees have MacBooks.
So why would the eclipse maintainers switch to a version of Java that stops people running on the Mac?
Jobs knows that he has the market power here. If Oracle wants future releases of Java to be viable they are going to have to support the Mac platform. So either they are going to have to put more of their own money into it or they are going to have to open up the Java platform with a genuinely open license, not this license that claims to be open but lets them sue people.
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/
Sun sued Microsoft remember? Java is a powerful technology that evidently wants to be owned and profited from. Oracle does need to be careful of how it handles the Google suit however as it has the potential to fork Java, which for them would defeat the purpnose of buying Java in the first place. Remember, just before it died, Sun open-sourced much of Java, so a fork remains a very distinct possibility if Oracle does a heavy handed job of screwing rather than supporting the Java community process.
We shall see how this all plays out, particularly now that many foreign governments have moved to open-Linux based systems and software for their development needs. If Oracle, mucks it up too badly, they just might have government funded competition to contend with going forward with Java, most notable China, Brazil and some countries in the Eurozone. Analogous to the situation the US faces in being dependent on foreign oil, many countries find themselves overly dependent on US-based technology. As with everything in life, there are advantages and disadvantages of doing anything in any particular way.
I wish you could be modded above five.
Did you ever release your scheme compiler?
The side effect is that Apple just fucked themselves even further out of enterprise and large business. Do you know how much enterprise software is written in Java? A lot.
You are delusional if you believe Apple's ditching Flash is a sign of its supporting Silverlight.
blog
I don't know about that. I suspect we'll see a lot of projects simply not using Java anymore.
I'm not saying Java will die (it's too useful for that), but any new project will likely try to steer clear of Java for the time being due to the legal turmoil.
Bigger projects will start to suffer due to the limited availability of developers, and new/young developers will shy from it due to litigation. "Which language should I learn?" will probably not be answered with "Java" as frequently in the past.
That said, Oracle/Sun's JVM isn't the only one out there.
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
Here's where my paranoia kicks in. I think Apple only hates cross-platform stuff when one of those platforms is Linux.
That's nonsense. I'd say the opposite is true, if anything.
If I can think of one thing which Apple has benefited from Linux, it's the early adopting geeks. Many, many Linux types were early iPod adopters. Many more were early OSX adopters, and still many more have stayed that route. Roughly 1/2 to 1/3 of the "Linux" or "BSD" guys I know area also Apple snobs now.
Now, I can see an argument for disliking Linux on the basis of Apple's BSD-based kernel. Linux has taken some interest away from the BSDs, to be sure. As a result, their kernels don't scale as well, have quite poor context switching, and a myriad of other faults - faults with Apple has inherited, to a large degree. If Apple were able to stomp out Linux a bit, BSD might gain more traction... in which case they'd get more attention to their aged kernel. This would only be a good thing for them - though, of course, it's conspiracy and has no supporting facts or suggestions. :)
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
You mean like phonegap(http://www.phonegap.com/) or jqtouch(http://jqtouch.com/)? Both of which are approved for use in the applications in the App Store?
Atlas stands on the earth and carries the celestial sphere on his shoulders.
Actually Oracle doesn't care about Mac platform, it cares about its money making business - databases, ERP software etc. and what percentage of that runs on any Mac server exactly?
0%. And if there actually is an Oracle product marketed/sold for the Mac, that percentage remains constant: MacOS database performance (context switching, SMP, etc.) is so abysmal compared to Windows, Linux, or Solaris, it's not even worth it.
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
OS 9 was the last time we had an easy OS to tweak and customize. It was the last time Apple allowed you to just put anything on the machine and give it a go.
What the hell are you talking about? OSX in every incarnation is far more open and tweakable than OS9. You do realize that under that pretty Aqua layer is a full UNIX system with all the infinite flexibility and customization that brings? I've tweaked and run all kinds of services and tools that Apple never intended on OSX, but was impossible on OS9. Try doing real filesharing on OS9 with fine-grained permissions. Try running a web server. Try running a wiki, a chat server, a real calendar server, an email server, a managed login server... And that's not even counting what user-land applications can now do because there's a clear API and modern resource management underneath. Hell just fire up Automater and look at all the amazing things you can do linking programs together without even touching terminal. It makes Applescripting look like a child's toy.
It's mentatlities like yours that kept my office 4 years behind on hardware and software updates....and we're really paying for it now.
I'm out of my mind right now, but feel free to leave a message.....
I seem to recall reading that Microsoft's JVM actually ended up becoming the JVM for all of .NET after Sun decided to not play nicely, and Microsoft wanted more control.
THAT was probably quite the surprise to Sun, too.
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
Mac OS X is a certified Unix. If you're having trouble running whatever you like on it you need to go to school.
Apple switched to Intel and provide an emulated BIOS and drivers for MS Windows. It may be that every currently shipping application in the world can be run on current Apple hardware.
In addition to deprecating Adobe's Flash and Oracle's Java recently, Apple also deprecated their own Carbon. That is progress, not politics. They also have done more to advance W3C HTML5 than any other vendor, and more to advance ISO MPEG-4 than any other vendor (in spite of their own QuickTime platform), and they are the largest Unix vendor by volume. So that is progress again, not proprietization.
Java recently eclipsed Flash, http://arstechnica.com/business/news/2010/10/microsoft-sees-unprecedented-wave-of-java-malware-exploits.ars. If I were an OS vendor, I would consider eliminating these unmanageable platforms that do more to commoditize the platform than add value to my product. Let'em move to Linux. This isn't the second millennium anymore.
I think Apple want's to level the playing field when developing for the mac and using the Mac App store. They wan't everyone to program in c (and direct derivatives). The fact that the jvm isn't bound to one programming language is, I think, one of the reasons. When you see that a dev team can develop faster with a language like Scala than for example ObjC, you can see what kind of advantages that might have.
Mac App Store is part of the Cocoa platform. Why you would expect apps from other platforms to be supported is beyond me. Apt-get does not install Cocoa apps. HTML5 app caching does not install Cocoa apps. If you want a Java app store ask Oracle.
Do you know what Scheme is?
I don't believe in time. It's a grand conspiracy designed to sell watches.
and what is the percentage of their users actually USE oracle GUIs on Macs?
It just maybe unprofitable to address these users when compared to the cost of maintaining Java for yet another platform.
You can't handle the truth.
This Java developer is using a Macbook Pro, and will continue to do so, as this announcement means little to me. I won't go into the details of why I prefer Macs, other than, I find the alternatives less useful to me.
My server development is done using the Sun/Oracle JDK, Eclipse, Tomcat and other open source frame works. My server apps run just fine with the Sun JVM, and the WAR/JAR executables can be copied to Linux or Windows Server, where they run just fine, with no problems.
I did once develop a GUI client app using the Apple tools, it wasn't so hot.
The only thing that will make me abandon Macs would be the unlikely move of restricting what apps can be installed, as on iOS devices.
With current and emerging standards (e.g. html5), do we still need to encourage the creation or maintaining of web sites/applications that use plugins? Isn't Apple here just subtly (contrary to their stance with iOS) discouraging or dispromoting the use of 3rd party, proprietary plug-ins like Flash and Java?
I see Java as the new Cobol.
Really now, stop it with the FUD. Just one of those CPUs costs 568.58 - $683.66 CAD so you are looking at 1100-1300 for the CPUs alone then add the price of 8GB of ram, a 1TB SATA drive, Two Radeon HD 5770, a super drive, two 27" LED backlit display, a USB keyboard and mouse. That will add up to a lot of moola.
Sure, you could buy cheaper monitors, a pair of Core2Duos CPUs, cheaper ram, cheaper HDs, cheaper CD-ROM drive but then you would be comparing Apples to a piece of crap.
I have to ask you, why did not include a second ATI card when one could drive both displays and why would you need Apple Cinema displays for a "Workstation"? You artificially inflated the price. You could use a cheaper brand of monitor and only one ATI card.
Jesus was a compassionate social conservative who called individuals to sin no more.
"With oracle now suing every other Java implementation out there", oh please, Oracle is suing one company over Java, and it isn't even clear Google has implemented a Java. You cannot patent a language, it is an abstract idea. They did a clean room implementation, so Oracle can take their (bought) implementation and stick it where the Sun don't shine.
Sure they can but they cannot call it "JAVA" which is the problem. Google refers to Java all over the place in their documentation.
Jesus was a compassionate social conservative who called individuals to sin no more.
The fact that Macs now have a lot more market share is one reason Apple are doing this now. Oracle cannot ignore or neglect the Mac market any more.
A lot of comments here seem to agree or disagree with things they think Gosling said, because they only read the Slashdot summary or the article from The Register that quoted from Gosling's blog, rather than both to click through and read what he has to say: in particular he does not say whether Oracle will supply Java for Mac. The implication seems to be its not a big deal for them to do so in principal, as it was being discussed anyway, but there are serious problems such as Apple's secret APIs.
The Register article also quotes Simon Phipps who is lot more negative about it and points out some other potential problem.
To play advocate of the devil here, since I care less about either Apple nor Java, isn't the side effect that Apple's competition in the phones world got a boot from the platform that is owned by the owners of iPhone?
I do not know what the implications are on the longer term but on the short term it causes their competition to spend time setting up new development environments, and diminished looking over the shoulders into the Apple technical world as developers are not going to keep up with that if they can't work from that platform anyway.
Maybe it would help if you rewrote that in English.
You're probably 100% correct, that does read as if it was written by someone for whom English is not a first language (or even a second language; it looks very much like a babelfish translation).
I think what the GP is saying is that this could be an anti-competitive move by Apple, in an attempt to both get a 'competing platform' (Java) off of the iPhone, and keep rival developers from easily working out Apple's technical details.
I'm not entirely sure that I'm accurate in thinking that, but I'm not sure how much of that is due to my personal feeling that Apple is shooting themselves in the foot by removing cross-platform compatibility. I could very easily see this as an attempt to remove a competitor, but I keep thinking there must be a deeper motive... I'm absolutely certain that anything we can crowd-source here must have been the subject of a heated debate in a boardroom somewhere in the bowels of Apple HQ, so there must have been a darn good reason to push this through.
Then again, maybe Mr. Jobs is psychotic, and has just arbitrarily decided there are too many developers for Apple's platform; this would translate directly to "we have too many users". Not necessarily a completely crazy viewpoint, as we have all seen companies that folded because they couldn't keep up with demand, and Apple has enjoyed explosive growth for the past few years.
What keeps nagging at the back of my mind is that no other third-party platform has Sun developing a Java Virtual Machine for it; every other JVM implementation has been licensed and developed by a third party. This could just as easily turn out to be an attempt by Apple to strong-arm Oracle into doing the grunt work for them.
Regardless of the reasons behind the decision, telling a large number of developers that you don't want them on your platform is probably the fastest method of removing large portions of your userbase, as when you remove support for a language, you remove access to all of the applications written in it. This may even cause some legal troubles, as many developers who have paid licensing fees to write apps for iOS just had their products "deprecated", too.
This work is licensed under a Creative Commons Attribution 3.0 Unported License.
I think you've nailed it (both overly dramatic and mostly about costs/benefits.)
The 'outrage' in the media surprises me. Maybe I'm confused, but I don't believe that Microsoft includes java on any of their platforms. Why isn't the media wound up about that?
Suppose you were an idiot. And suppose you were a member of congress. But then I repeat myself. -- Mark Twain
When you boil it down, for most people it's just jealousy. I hate to sound like a smug asshole, but I'm at a loss for what else it is.
When Microsoft does something like a typical douche or even something geeks just don't like you get a very simple "M$ sucks" thread. When Apple does something geeks don't like... the reaction is very different. There's this weird mixture of entitlement, hurt and, "But Apple, I weewy, weewy wuv Macs! How can you do this to me!?" (Oh, and there's the crowd that's always hated Apple and Macs, but every platform has haters.)
Apple makes cool shit and geeks want it but often their business model is anti-geek. (Which, makes sense since targeting geeks is never going to pad your bank account with $50,000,000,000.00 in cash reserves.)
Until there comes a day that I have no other choices in platforms, I'm not gonna freak out about what Apple does. Frankly, I don't much care what MS does anymore because there are viable choices. My only real remaining hatred for MS is Internet Explorer, a product that sucks on virtually every level and has held back web development for at least 7 years.
I even recall one bug report we tried to submit about this and one developer said he couldn't reproduce the problem on his quad-CPU 4GB RAM machine with 4 striped RAID array disks... think about the sort of hardware the average user would have had four years ago. Is it any wonder the desktop sucked so much?
( http://apcmag.com/interview_with_con_kolivas_part_1_computing_is_boring.htm )
It's you!
One that hath name thou can not otter
So why would the eclipse maintainers switch to a version of Java that stops people running on the Mac?
because one day, maybe 5 years in the future, they will want the 'new cool' features the updated Java offers. Oracle doesn't have to give a shit about Mac, they make money selling horrible Java apps to enterprise customers who buy thousands of seats worth to run on their horrible windows desktops. Mac, really doesn't feature in 0.1% of Larry's sales.
"Which language should I learn?" will probably not be answered with "Java" as frequently in the past.
Quite possibly true. It's a shame about all those recent CS grads who only learned Java, but no one said you can win on the easy ticket, just that it was easy.
Interestingly enough, Java wants to update on this Windows machine as we speak... wonder if this is the "Apple can go suck eggs" update, or if that will be the next one...?
This work is licensed under a Creative Commons Attribution 3.0 Unported License.
If you guys are doing Desktop Apps in Java then just start using any the various X-Plat compilers that will make your apps look so much better and more then likely much faster.
The X-Plat libs have advanced so far that Java on the Desktop is really beginning to be questioned. It has become simply a compiler switch that builds the appropriate binary for the appropriate platform and the FULL support of native UI components simply cannot be compared to the rather awkward support that Java UI interfaces have.
I predict Java on the back end will be fine in whatever form it takes after things shake out, but the front end will not be gaining any more ground.
My 0.02 cents.
Hey KID! Yeah you, get the fuck off my lawn!
So why would the eclipse maintainers switch to a version of Java that stops people running on the Mac?
Uhm... so that the other 80%+ of their userbase doesn't stop using their product because it's out of date?
Just a guess, but I doubt anyone is going to freeze their codebase just because Apple is throwing a hissy fit.
Seems far more likely that any java developers will simply ignore Apple's platform, and develop for more developer-friendly ones (where their app's viability will be determined more by "does it do what the tin says" than "will Apple let it into their walled garden". I honestly don't know that this will be a bad thing; I would assume that Apple thought this through carefully before doing the press release.
My gut feeling, of course, is that Java on the iOS platform will die a horrible death, outraging developers and users simultaneously.
This work is licensed under a Creative Commons Attribution 3.0 Unported License.
If they want to crush cross-platform development, then why aren't they moving to crush C or C++? Since C++ apps will run on just about every desktop and mobile platform out there (besides Blackberry).
Ah, I was misled by the name. Generally I expect Foo-Base to be the core part of Foo which everything else depends on.
Perhaps he didn't know the whole history and realize that "scheme interpreter for a BSc project" meant "a naive scheme interpreter that probably lacked continuation support".
There is no reason that a Scheme interpreter would use host language recursion for recursion in the Scheme program. Any student setting out to implement Scheme in the time frame when Java was available should have encountered "tail recursion" and "call/cc" in their background reading and reinvented or learned one of the obvious idioms to implement Scheme semantics via iteration and a heap-based continuation store.
I know this for a fact, because I found out about all of those things on my own when I encountered Lisp and Scheme for the first time in college, before Java was even rumored to exist. And that was just my own interest to read about it on the web of the time (USENET, gopher, FTP, my local bookstore), when my course work was just to use the languages, not to implement them.
Turning? Apple has ALWAYS been a closed system company. Remember Power Computing and more recently Psystar?
Never say never. Ah!! I did it again!
It'll be nice if it plays out like he hopes... then again, we're talking Steve Jobs vs. Larry Ellison here, so anything could happen. The only thing that won't happen is either side admitting defeat and sucking it up to smooth things out for users of a free product.
I think Apple want's to level the playing field when developing for the mac and using the Mac App store.
They wan't everyone to program in c (and direct derivatives). The fact that the jvm isn't bound to one programming language is, I think, one of the reasons.
When you see that a dev team can develop faster with a language like Scala than for example ObjC, you can see what kind of advantages that might have.
Good sir, I beseech of thee to consider the purchase of either a cup of coffee or perhaps a book on punctuation. If I may paraphrase a certain Mr. Kurtz, "The apostrophes, the apostrophes."
this morning, idiot.
and then paid Sun for the privilege. (it costs money to make sure your JVM was approved).
Sounds like Sun App-Stored Apple.
LK
"Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
Let's lowball the estimate, and say that the engineer's cost to the organization (desk space, salary, benefits, hardware, networking costs, phone, electricity, everything else - TCO, in other words) is in the order of ~150k per year. You and I both know that's low (HR estimates at my company place the value of 1 engineer for a year at about 250k), but let's assume it's much lower.
Figure you get about 2000 hours per year of work out of that engineer (40 hrs / week, 50 weeks a year) - that means the company is paying $75 per hour the developer works.
Now let's say that that setup is $3000 more expensive than an equivalent PC - the equivalent of 40 extra hours worth of work (75/hr * 40 hrs = $3000).
So how do we determine the point at which the company would break even on this investment? Most hardware is depreciated over 3 years. So... they'd have to get the equivalent of 40 hours extra of work out of the developer over 3 years, or 13.33... hours per year of extra productivity out of the more expensive system, to break even - roughly speaking, a ~0.7% efficiency gain, assuming 2000 hours worked each year - in other words, do 2013.33... hours of work in the time it would have taken previously to do 2000 hours of work.
Do you think that a developer being given a Unix desktop environment that he prefers, and the Unix environment which he's familiar with, would be able to squeeze ~4 minutes worth of extra productivity out of each work day? Shit, I spend that long just booting my system up & signing in while all the virus scans and security settings apply in the morning. I regularly spend that much time waiting for files to transfer around to a UNIX system so I can work on the files on the remote system, because my laptop runs windows.
Obviously, there's other costs to the organization as well, for supporting these additional desktops... but let's be honest here - you can easily make a strong case that spending a little bit more money on a better quality tool is an *investment* in increased productivity & increased savings over the life of the tool. You can't look at sticker price in a vacuum, and say "Mac > Windows PC, therefore robbery."
I pretty much thought that Steve Jobs and Larry Ellison were/are on good terms/friends. It could be that Steve called up Larry and said, "Do you mind picking up Java development for Mac now that you own Sun?" and Larry probably said, "Sure."
Of course it also meant that no one else really knew or cared about it until Apple announced the decision to drop their Java development. Probably 2 or 3 engineers from Apple will be slaved to to Oracle and that will be it.
all those users who point their browsers to servers running Java distributed management systems whether they are produced by Oracle, IBM, Apache, Brocade switches, or others and expect to get a response.
Those without the JVM might at some point see their Javascript requests reach a server, which will go into a if or case statement that effectively says: if [your favorite Mac Browser environment here] {wait()} /[in low priority que until high priority Java requests are responded to first]; else {} /[continue at normal/high priority];, particularly those whose data is stored in Oracle databases, which is a lot of big corporation iron. In a sense this is what is happening now to Apple users on the client side by only having an older JVM technology at their disposal. If Apple wants leverage in server space and general-purpose computing they might be better off seeking a more powerful voice on in the Java Community Process. My sense is they are not interested and seek to build a closed Apple-oriented sub-net for Apple Store product purchasers, along the lines of Sony, Nintendo and other gaming platforms.
It will be interesting to see how this plays out going forward as Oracle, Apple, Microsoft, IBM, Google and others try to play one another's technology off against each other to dominate the business applications space.
But prophesy is one of the major functions of an oracle!
Stupid users want to be able to install apps with one click and have them just work, whether they are native apps or Web apps.
FTFY.
"Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
>All of my banking website depend heavily on JavaScript, but not a single one uses java. Don't make that bet that the bank's General Ledger transactions and their reporting don't use Java. I can assure you that they do. I'll go further and say that they probably use some SAP product or another, and have substantial parts of their customizations in Java. You are seeing "Java" strictly from the point of view of the end user on a web application, where it wouldn't even be appropriate to find Java. You're not considering the huge amount of business software that's deployed in JVMs. There's a whole lot of Java out there that you'll never "see". It's been moving into a space over the past decade or so that used to be dominated by COBOL which you also didn't "see".
-fb Everything not expressly forbidden is now mandatory.
You're stretching. Two 27" monitors and two graphics cards? And he didn't say the company wouldn't spend $6k for "your" machine, just that some of their developers use Macs. For all you know the non-Mac developers are using ridiculously expensive Sun workstations or something.
Besides, the extra $3k might be worth it if it makes the developers more productive. A developer making $70k a year can cost a company around $95k a year with benefits. If the Mac makes them 3% more productive, it's worth it. If the alternative is a Windows PC, a 3% productivity boost seems feasible.
If they're too stupid to use the Mac tools for central admin, they're probably too stupid to use the Windows and Linux tools for doing it.
Yes you are right for now, but my guess is that bean counters at Apple think that enough of them will be sufficiently satisfied with an Apple friendly orientation and part of the Apple Platform Store product line to serve their universe of users. Apple is moving progressively toward the Sony-Nintendo market model, not the Linux model of software development. Closed runtimes not open development and
If you are willing to pay for it and it suits your needs and you don't have a problem being dependent on Apple's way of doing things or how or if they may want to support your favorite app in the future, then Apple is a reasonable bet. They are moving away from general-purpose computing in the broadest sense, as they see more profits in more proprietary systems and captured [locked in] software audiences. Java poses a threat to that or addresses an entirely different audience.
If they're not using X11 under Windows, why would they under Mac OS X?
You are not alone. This is not normal. None of this is normal.
Given OSX's essentially unixy guts, it should be comparatively trivial to get one of the other unix java implementations going; but the Mac faithful are going to lose their shit if they have to endure X11.
I suspect that it is Game Over for Java as part of the "Mac" experience; but nothing barring the hypothetical cryptographic lockdown of the desktop mac will stop people from treating macs as unixy java dev environments that can also run word and photoshop if they want to.
You have obviously never worked with an Enterprise desktop. Java is everywhere in the Enterprise. Now go back to your StarCraft.
Sun was playing nicely. The terms of creating a JVM that uses the trademark "Java" is that the code had to be able to run on all platforms. Microsoft tried to embrace, extend, extinguish on Java and Sun took them to court. Microsoft lost because they violated the license terms. This was not Sun trying to shaft Microsoft for the sake of it (although no doubt they got a great deal of pleasure by it) but actually Sun were protecting their customers (who had been promised "run anywhere") and the Java brand. It was a necessary evil by Sun.
Shame you young folk never get told the truth of the matter (you are now!) and that the facts are getting obscured over time.
I suspect that the question is not "Will there be java for OSX or not?"(given OSX's unixy guts, it would be simple to get one of the other unix JVMs going, along with full X11 graphics) but "Will Java on OSX make any effort at all at looking like a part of the Mac desktop?"
Both because it is pretty simple, and because there is no reason for Oracle to deny themselves that market share, Java will be available; but it would be totally standard for an "enterprise" software company to completely ignore the sort of aesthetics-driven purism that the Mac guys go nuts for. Getting an X11 graphics version of the JVM working on OSX could probably be done by the end of the week; but would find a home only among people who use Java first and OSX second.
Maintaining a full native-look-and-feel-warm-and-fuzzy-and-Aqua-supports-all-the-stuff-that-makes-the-Mac-guys-crazy-about-anything-that-smells-remotely-cross-platform would be a much more serious effort.
There is nothing Java can do that can't be done without Java ... on the other hand, there are plenty of things Java is doing that should never have been done in the first place in an economy that hadn't started to go off the rails when they decided to replace the manufacturing centers with "the new economy", and making money out of nothing by shuffling bits back and forth. Take the quants out back and shoot them. Or don't. It doesn't matter in the long run - they damage they've done is permanent.
That's because no Turing machine is physically realizable due to the infinite tape, but that doesn't negate the truth of the principle. All physically realizable machines are finite state machines.
Sure you could, it would just be brutally slow, and you'll have to live with the fact that some programs will simply throw out of memory exceptions. Java or the JVM make no guarantees about the amount of available physical resources.
Realistically, you would use an external I/O interface to address a sufficiently large enough address space to run these programs.
So again, this doesn't negate the point that JVM opcodes can be compiled to any other abstract or real machine and executed. There's noting special about Dalvik doing this.
Higher Logics: where programming meets science.
[X] Operated by non-tech people
[X] GUI
[X] Multi-file / multi-directory select and upload
[X] Contents preview
[X] Auto-rename on overwrite
What would have been the big deal to give them a copy of filezilla set to the proper host and local directories by default, and proper access permissions so they don't do something stupid?
In other words, why re-invent (badly) the wheel?
-- Barbie
stupid can opener users want to just plug in the thing and use it. but smart geeky 1337 users like you can hone his own cutter and wind his own motor.
You could remove Java from most people's PCs and the only side effect would be more disk space.
This is pretty much my experience with Java. If I am Joe Q Ignorant User, and every now and then Java is updated, and every time it's updated it displays an ad for OpenOffice.org, I am going to conflate it with those cheesy pop-ups my tech-head son says I shouldn't click on.
To the end user, Java means nothing. And why should it mean anything?
Well, almost nothing. If anything gets in between me and my Minecraft, worlds will end. And I mean that as hard as I can.
Nobody gives a shit.
I care, even if the rant is hardly original. My preferred version is Zittrain's "The Future of the Internet -- And How to Stop It". I refuse to distinguish content from its conveyance. Nor do I abstract a loaf of bread from Monsanto's seed policy.
Interesting how Apple is redefining the user. The user as originally conceived has been replaced by the content consumer. The content consumer is used by Apple to make money. Apple is the new user. I suspect this is why Apple values ease of use so highly. The user is dead. Long live the user.
A large proportion of Ubuntu's usability problems stem from being a mouse in a minefield of corporate cross-fire. A ban on software patents would cut the usability problems by 80% Too often Apple gets credited for design what they achieve through control.
at most, Apple is now in the same position, not worse.
Except the part where the app store will not allow java.. where is the app store for windows again?
(and yes, you can release apps outside the app store. For as long as they will allow it. Good luck convincing people to install when the app store becomes the only place people look for software for macs)
that's just one kind of enterprise architecture, truthfully as of late JEE server (and jobs dealing with it) is in decline as lighter weight simpler solutions are being adopted. I and my friends used to make good money as J2EE based solution developer but that petered out five years ago.
And the really big-ass enterprise architectures don't have java on the back end, even though that option can be had for IBM-like, HP nonstop, and Unisys mainframes it's not the norm.
...or that, under Larry, it is getting significantly more expensive with no increase in benefit.
Honestly, it almost comes off as personal. Do a quick image search for "Steve Jobs and" vs. "Larry Ellison and." The first page of Steve are with Bill Gates, Woz, Eric Schmidt and others. The first page of Larry consists of nothing but Larry, his yacht, his wife and his McLaren.
Then do a google for "Oracle"+"Sues"+"Java."
Larry is being a dick and Steve is telling him to fuck off and takes his newly acquired toys with him.
Probably because they are using X11 under other Unixes, and it means there's only one windowing system to support other than Windows.
Can you tell I'm pissed?
I'm a java developer, but I much prefer the OSX platform over winders or linux. All of my desktops at home are macs, and I was just days away from buying a new macbook air. Well, not now. I'd regretted buying a PC laptop a few months ago. No longer. I often thought that if I decided to switch development platforms it'd be to OSX. No longer. I often scoffed at others grousing about Apple's "walled garden." NO LONGER. I was a satisfied Apple customer. NO LONGER!
not actionable in the real world, your "magic external I/O space to sufficiently large address space" doesn't exist and would only render a practically useless curiosity if it did.
Thus showing why engineers make operating systems and systems and computer scientists make failed attempts at ones.
I don't know. I can imagine Larry Ellison and Steve Jobs playing nice. They're in mutually exclusive industries other than the slight overlap between Xserves and Sun servers(well, and maybe Mac Pros and Sun workstations; however, given the slim niche nature of these products, I don't think they're fighting it out).
I don't predict another Apple/Adobe, I think it's more likely Apple/Google. Some tension, but, they're nice enough to each other. Given that Steve-o's loosened his grip on interpreted code on iDevices, I'm pretty sure the next step is a JavaTouch type API that would allow java devs to work in a multitouch environment ensnaring Javaheads to do work on iDevices making everyone happy. Oracle gets to have a direct hand in the form of a JDK that can target iOS devices running a real JVM(as opposed to Dalvik, Dalvik's nice, but it's strictly not a JVM), and Apple gets to have up to date java releases for the desktop freeing up their own resources for other duties.
Non impediti ratione cogitationus.
Whoa, there partner! Wipe the froth from your mouth, please.
Java is not responsible for the financial meltdown, it is simply a good platform for developing high-performance stuff on a wide range of hardware (eg. like brokerages). Greed (from corporates and ordinary investors alike) and a corrupt political institutions (lobbying is institutionalized corruption, which prevents proper regulatory action) are the cause of the US/global financial woes.
MacOS database performance (context switching, SMP, etc.) is so abysmal compared to Windows, Linux, or Solaris, it's not even worth it.
Anyone care to comment on this? Or maybe backup this claim with references? Sounds like hyperbole to me.
Some engineer you are. It's called a hard disk. C's read()/write()/seek() are all you need.
Being an engineer myself, I sure hope you aren't an accredited one, because if so, it shows a distinct decline in the quality of education.
Higher Logics: where programming meets science.
So how do you explain, say, the lack of Linux support for all those iPod owning Linux geeks. A winelib version would do. Or at least not bricking an iPod after loading music from a non iTunes app.
Either you're cross-platform or you're not and, BSD aside, Apple seems to be Mac and Windows only shop these days. I can only speculate why, and I did cop to paranoia. I just wish I knew I was wrong.
Posted from my Android phone. Oh, I can change this? There, that's better...
If you read the article, on page2 it says that OpenJDK is already ported to OSX. However, it is incomplete in the UI sense; it only uses X11 libraries and the Java integration with Cocoa/the native UI doesn't exist.
I was really disappointed to see this. It does feel like Apple is so hyper-focused on iPhone/iPad/etc technologies that they are completely neglecting the support that the developer community has provided for OS X as a developer platform.
I know that many, many devs like myself use Macs, and many of us either code in Java or a JVM-based language (Scala), or we use Java-based tools (NetBeans, Eclipse, IntelliJ). Honestly this comes across as a slap in the face to developers, and so many of us who have put our trust in the Mac as a development platform are really going to feel betrayed by this. We love our Macs, the bash shell, the quality and stability of the OS, and we love developing on them! Apple, please think about the ill-will you are spreading to the development community!!
Considering all that, I think all we can do at this point is hope that Oracle will be fast in getting their distro of Java ready for OS X. I wonder would there be any chance of native OS X Aqua support or would everything be relegated to X11?
In the meantime I will hope for the best while preparing myself for the possibility that I will have to move to Linux for my primary desktop environment. Having grown accustomed to the polish and quality of desktop apps for OS X over the last ten years, this will be a tough pill to swallow. Perhaps ChromeOS will evolve into a true competitor to OS X over the next few years.
> that's just one kind of enterprise architecture, truthfully as of late JEE server (and jobs dealing with it) is in decline as lighter weight simpler solutions are being adopted. I and my friends used to make good money as J2EE based solution developer but that petered out five years ago.
.NET is simply not a contender in the large heterogenous space.
I was talking about the enterprise desktop actually (please re-read my post). Where I am there is a ton of Java work and it is getting better, sorry to hear your own neck of the woods isn't doing so well.
Java is the only thing that can scale to mammoth development projects on heterogenous hardware (I'm currently on such a project) - but I was actually talking about Java applications for the enterprise desktop (bespoke stuff that most people are unaware of since they can't download it from SourceForge or buy it at a store, but it is actually everywhere).
> And the really big-ass enterprise architectures don't have java on the back end, even though that option can be had for IBM-like, HP nonstop, and Unisys mainframes it's not the norm.
I all BS on this. Governments, Big Banks, etc have heterogenous hardware with all sorts of Operating Systems and take decades to built their infrastructure. Quite often Java is run here - at least in my experience.
The 'lightweight' stuff usually is a different architecture for Java (eg. the Spring Framework), not the awful Enterprise Beans stuff. It is still Java though. More lightweight stuff than Java is only used for small things and
Lets feed the troll.
I'm a geek and I've never had any problems with runtime updates like Flash or Java. I've never heard any non-geeks complain about them either. Never needed to download any codecs. Never needed to think about updating. Never needed to use multiple browsers.
So lets get this straight. Having a customer go to a website an have a box saying "missing plug-in" is more customer friendly than the box actually work. Seamlessly. Without the user ever thinking about it. Right on.
Basically, Sun never supported Java on the Mac, Apple did. Apple provided the developers, the tools, apple did all the work, and then paid Sun for the privilege. (it costs money to make sure your JVM was approved).
With oracle now suing every other Java implementation out there that wasn't approved Apple probably thought it just wasn't worth it. Expensive to do, costs money to do it, and unless your sending money up to oracle yearly, now a patent nightmare mess.
Look at it this way a side effect might be that Oracle stops suing non oracle approved JVM's, including Davik. The Bad press might be more than they realize.
I was thinking the same thing. Oracle is becoming too lawyer-trigger happy with Java, and even if I was "safe" under some agreement I still would back out before they found a loophole to try to sue me over too. Besides, there is heavy chance their licensing agreement has ties to OS versions, and the upcoming Lion OSX forced revisions with terms Apple did not agree with.
On October 23rd, 2010, Apple Computers will deprecate Java. And you'll see why 1984 will actually be like "1984."
They came first for Flash,
and I didn't post because I wasn't into broadcasting a webcam.
Then they came for the Java,
and I didn't blog because I wasn't a programmer.
Then they came for OS X,
and I didn't tweet because I wasn't a Mac Pro owner.
Then governments made Apple way the only approved way to own a computer.
Good thing I have a huge collection of old computers like C64s, Amigas and 80386 PCs. And a gun to protect them and in bloodshed bind them.
- Raynet --> .
Except that Java isn't being "deprecated" either. I have no idea why nobody is pointing this out. All Apple is doing is halting updates to their implementation of the JVM, which often lagged behind official Java releases anyway. Other Java implementations are still free to be installed on a Mac.
I don't even think the latest OS X supports PowerPC, so why would it matter anyway?
Java isn't being "deprecated" on OS X. Apple is just not going to work on its native JVM implementation anymore. This isn't surprising since the Java-Cocoa bridge was deprecated years ago. Third-party JVMs, such as SoyLatte, will continue to work as usual.
I'm the developer of Flying Logic, a highly graphical planning application that runs beautifully on Mac, Windows, and even Linux thanks to Java. But I'm a Mac guy, and I do all my development on the Mac, and I use a number of other Java applications on my Mac including IntelliJ and MySQL Workbench. I also develop iOS software, and I've had numerous requests for Flying Logic on the iPad, which would require a binary-compatible JRE. So even though I'm an Apple fanboy and supportive of many of their moves, I'm quite disappointed that Apple has left a huge question mark hanging over the fate of Java applications on the Mac.
Trading stocks based on fraction-of-a-second price arbitrage does not increase the wealth of the nation - it just diverts resources that could have gone to more productive activities.
The US took a crap-shoot, trying to change to the "New New" economy, and it turned out that the "New New" economy was about as sustainable as the Dutch Tulip Mania. Germany, on the other hand, exports as much as China does, with about 1/20 the population - and they get 6 weeks vacation and less than 40 hours per work week.
"Enterprisey java stuff" doesn't replace production of actual goods - and the majority of the actual production capability still on American soil after 30 years of bleeding is now owned by foreign corporations. Thank Reagan, because it started under him.
Young folks? Yeah, that's me. I haven't been doing IT for long at all...
No, I just couldn't remember the specifics of how it transpired (my assumption is usually: Microsoft was doing their usual thing).
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
I wasn't aware of the capabilities of the card in question, so included two.
I'm sorry, but a 'cinema' display means nothing to me. I prefer a wide screen format display for many terminals and side/side windows. Two of them is better, and I'd rather have a good LCD than a crap one for a workstation. That's what makes sitting in front of one all day tolerable.
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
Wasn't j2me one of the few solid sources of income for Sun?
One that hath name thou can not otter
So how do you explain, say, the lack of Linux support for all those iPod owning Linux geeks. A winelib version would do. Or at least not bricking an iPod after loading music from a non iTunes app.
You misunderstood me. Those iPad using linux geeks moved over to apple as soon as they could justify the cost of an Apple workstation or laptop (around 10.3 or 10.4, I think it was).
I seem to recall early iPods worked just fine in Linux; I had a 2gig nano which I could sync with (I think it was) apod or similar. aptitude shows a number of ipod/iphone related tools, though I've never tried them (nor will I - I traded my iPod for a nice pair of boots).
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
The comment is from a poster who compared the cost effectiveness of Windows and OS X machines by using a Mac Pro specced with dual graphics cards to drive two 27" cinema displays (when one card will do, and the screens are optional anyway) in order to skew the results to make the price comparison more exaggerated.
Take anything he says with a pinch of salt so large, you need a truck to move it.
I agree with your economic sentiments - the service industries are an adjunct to manufacturing, not a replacement. Some degree of protectionism is required, just as some degree of market regulation makes sense (otherwise Goliath always wins and gets bigger, which has suited the US in the past but not anymore).
It seems to me you are implying Java is bad though. Certainly heavyweight Java is crap. No doubt about it. It is possible to do good Java designs in a way that is strategically safe (copes well with a changing environment and preserves your investment). Few technologies can do this. So I see Java as a good technology often misused, and without that many alternatives that can go from embedded system to massive heterogenous clusters of SAO systems.
Off-topic: I like your xmlsucks site. XML definitely has its uses, but it is a good technology that is *very often* applied inappropriately, and with heavyweight approaches (no human should be editing schema by hand IMHO, just as you shouldn't do assembler anymore except in specialized cases, they should be generated). Sometimes though XML is a good way to represent some stuff - provided it is the *simplest* solution. Good design chooses both simplicity and clarity.
http://www.anandtech.com/show/1778
It's a bit old at this point, but it proved itself true as of 10.5 as well (at least on PPC hardware). The performance is noticeably bad in many cases.
It's significant to the point where people running FileMaker on Mac workstations have moved to the Windows Server version, server-side.
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
Because then they run a much higher risk of JavaFX never gaining traction, more importantly among end users but also among developers. If Oracle gives up 20% of the potential JavaFX market, then their investment in that platform has less potential return.
This space left intentionally blank.
Do you have a point? You've essentially acknowledged that there's nothing intrinsically limiting the IBM 1620's ability to execute arbitrary programs, except the hardware limitations at the time. In fact, there's nothing intrinsically limiting any machine from becoming a real universal Turing machine, except the infinite tape requirements of said machine, ie. a true universal Turing machine is physically unrealizable.
These are all well known facts, and they in no way disprove any of my statements, in particular my original one which started this whole thread.
So if you have an actual, useful point, I'd like to hear it.
Higher Logics: where programming meets science.
Do you have a point? You've essentially acknowledged that there's nothing intrinsically limiting the IBM 1620's ability to execute arbitrary programs, except the hardware limitations at the time. In fact, there's nothing intrinsically limiting any current computer from being universal Turing machine, except the infinite tape requirements of said machine, ie. a true universal Turing machine is physically unrealizable.
These are all well known facts, and they in no way disprove any of my statements, in particular my original one which started this whole thread.
So if you have an actual, useful point, I'd like to hear it.
Higher Logics: where programming meets science.
Impressively low Slashdot ID though :) Nice to 'meet' you.
But we can assume a Java applet capable browser,
That's a big assumption.
If they can use a file browser, just have them drop the files in a per-determined shared directory and run a job to periodically check that directory for file drops. Ditto for any other stuff they need. You already know the directory name, so you know the user, etc. They can even fill in a form and save the plain text file to that directory.
Email also works. Or are your email clients incapable of selecting more than one file at a time?
Either way, you don't care what filenames they used - you have the actual files.
There must be dozens of ways to solve this problem, all simpler than a java applet.
Probably too hard for Oracle to grok; ever have to use their Java interfaces? Yeccchhhhh!!! I cannot get the taste out of my brain.
Since C++ apps will run on just about every desktop and mobile platform out there (besides Blackberry).
And Windows Phone 7. Which is what, 2 out of the major 6? (iOS, Android, WebOS, Blackberry OS, Symbian, WinPhone)
Think of it - Germany, with 1/16 the population of China, and with a much shorter work day and work week, and 6 weeks minimum vacation, exports as much as China.
The 40-hour work week in the US has to go. It is a job destroyer. Productivity gains over the last 30 years should have been shared with the workers who actually do the producing - they have not been, to the destruction of the middle class.
What would the unemployment rate be if the US were to adopt a 4-day, 35-hour work week? Half what it is now?
Throw in the energy savings by people only commuting 4 days instead of 5, and people being more productive because they can get personal stuff done on the floating/rotating "extra" day off, and the economy would see an immediate boost.
Fewer people would be losing their homes. Or having to choose between eating and meds.
Sure, your take-home pay would be a few dollars less, but you'd also pay less in taxes, spend less on transit, lose less to taking time off for "personal reasons", and deficits to cover things like unemployment would be lower, so you would probably end up with more money in your pocket at the end of the month.
It works for the Germans, and the French.
-- Barbie
The 'outrage' in the media surprises me. Maybe I'm confused, but I don't believe that Microsoft includes java on any of their platforms. Why isn't the media wound up about that?
It's because Apple's VM always used to be special in the amount of integration it provided, especially with respect to UI. On Windows, for a long time, users of Java software had to endure the fugly and non-native-looking Swing L&F. Even today it's still kinda meh - font antialiasing is quite different from how Windows does it, for example. On OS X, Apple did a lot to make sure that it doesn't look like complete crap, even if it's still not perfect - at least the menu bar is where it's supposed to be!. There is also no X dependency there, either.
And, apparently, all the code to do that is kept in-house by Apple, so for Oracle to come up with a VM that maintains the same level of integration, they'd have to do considerable work - which they will probably not bother with. End result, for Java users on OS X, is that, eventually, Java apps will look even more crappy than they used to be, and probably the most out-of-place of all desktop environments.
Actually, Eclipse is probably the least affected Java software here. Since it uses its own UI toolkit - SWT - which is native-widget-based by design, it doesn't really need all that fancy OS X Java integration that Apple has done. It should run just fine on a stock JVM, just so long as it's there. Which, given that OS X is still Unix, it will surely be.
It's a huge setback for Swing-based NetBeans, though.
I seem to recall reading that Microsoft's JVM actually ended up becoming the JVM for all of .NET
I have little doubt that experience (and probably some code) from MSJVM ended up in .NET VM implementation, but it certainly didn't just "become" it. The instruction set is quite different even for similar instructions, the metadata format is completely different, and so on. Even on implementation level - JVMs normally include both bytecode interpreter and JIT compiler, while .NET only has the JIT compiler.
You have a lot of points. I won't respond to them all. I don't think Jobs is psychotic, and I cannot imagine him doing this without first discussed it with Uncle Larry at Oracle...if indeed we are to believe they are good friends. So, let's take that as writ. I cannot imagine Oracle would be pleased unless Apple threw them a bone, maybe they turned over the Java codebase.
This doesn't address why. I'm mystified. The only explanation that makes sense to me is that Apple doesn't want a large software development department because it causes too many moving pieces. If they can remove one, Jobs might see that as an advantage in keeping a smaller, leaner software development effort. MS is classic example of what happens when the developing dept(s) get so large they are essentially disconnected. Jobs is very interested (from what I read) in clean development hoping it leads to clean products.
I do not buy that crap that Jobs is somehow a Stalinist in disguise. He's up against the MS juggernaut and the Linux push; Apple, pre-consumer products, could have easily been blown out of the water. Now, their income stream includes consumer products, and keeping a clear engineering direction is no easy task.
Perhaps ChromeOS will evolve into a true competitor to OS X over the next few years.
For running fat (when it comes to Java IDEs, this word doesn't quite do them justice!) client apps? Not bloody likely.
It's really not all that implausible that ChromeOS would be able to run Java and Java IDE's just fine. Google itself does tons of Java development.
:)
You don't think they would have some interest in being able to develop on ChromeOS? It seems entirely possible that Google could do what Apple has done going from OS X to iOS, but in reverse, to the point where ChromeOS can do everything Linux can do, only prettier
It's really not all that implausible that ChromeOS would be able to run Java and Java IDE's just fine. Google itself does tons of Java development.
You don't think they would have some interest in being able to develop on ChromeOS?
Absolutely. ChromeOS is clearly an "appliance OS" in the vein of iOS - in fact, even more so, with it being so web-centered. Underneath it's all just Linux anyway, so you don't really get anything from running full-featured Linux client apps on it. Just use any decent Linux distro. I would expect that's precisely what Google does.
One other aspect is that, so far, I haven't seen any plans for Google to even put ChromeOS on anything but tablets/netbooks and Google TV. And I don't know about you, but I like a beefy, dual-head (at least) desktop for development.
They didn't for the first four releases of OSX. For version 10.4, Apple made a release, after some community work to get the Sun FreeBSD JDK ported.
In short, once a JDK is no longer available from Apple, Java developers will need to move on to Windows for development. Which rather sucks.
I agree--the current picture of ChromeOS is that of an "applicance OS"--much like iOS is for Apple.
But as I said before, if they simultaneously take it in the desktop direction there is no reason why there could not be a "full blown desktop" version of ChromeOS *if* they do the reverse of what Apple did.
The reason this would be preferable to Linux for people coming from Mac OS X would be the better end-user polish it would provide and better windowing system (not X11).
I think there is a substantial number of us for whom Linux still is too clunky in a number of UI areas that even though we love using bash for development and sysadmin work, we want something a little more polished for everyday end-user stuff.
Just like with Flash...
Can you be Even More Awesome?!
Java can't do it.
Thing is, Google isn't really interested about the desktop. They've made it a point many times that they believe in the future being web-centric, with mainstream devices consequently oriented towards the consumption of web content... this doesn't really mesh well with the modern desktop OS concept.
Leaving Google specifics aside, I do think that this is indeed the approach where it will go, and the success of iPad is very much an evidence of that. I think we'll see the today's unified computing platform clearly diverge into consumption-oriented "appliances" with their respective OSes - which will be mainstream - and specialized content creation-oriented platforms that will evolve from thick clients of today. For the latter, many flaws of "normal" desktop Linux will disappear due to its specialized nature - e.g. you wouldn't play games on it anyway, and knowledgeable hardware picks would be the norm rather than exception for the target audience.
The Germans have a government that works for the people and a social policy program that is not constantly subverted by special interests (eg. corporations). How likely is it that each US State would relinquish power (put down those automatic weapons citizens!) to bring such a thing to fruition? zero? I'm not sure the US psyche would accept the solutions that work for the Germans/Europeans.
Yes, but although related, that's a different matter. Yes, if MS did an App Store and prevented outside installs they could probably be fined for antitrust, but that doesn't mean they have to support a JVM.
Dilbert RSS feed
Microsoft shipped their own JVM (MSJVM) with XP SP1.
Have you ever considered piracy? You'd make a wonderful Dread Pirate Roberts.
It will make the software industry so horribly unequal, one will again be able to tell the difference between mediocre software and truly horribly evil software again. As some NASA developers once put it:
"JAVA truly is the great equalizing software. It has reduced all computers to mediocrity and buggyness."
But in all truth, we wont get rid of Java any time soon, it has become the new COBOL that will haunt us fifty years from now.
"When in doubt, use brute force." Ken Thompson
The side-effects are that Java developers won't use Macs. (Since I use neither Java nor Apple products, I don't really care that mcuh, but I think Apple might be shooting itself in the foot.)
Of much more concern is the App store for Mac OS X idea. Apple is turning Mac OS X into a closed iPhone-like system. I guess my anti-Apple rant will soon apply to Mac OS X as well as the iP* systems.
Prediction: Even if, ten years from now, the Mac platform is still just as open and general purpose as it was prior to the invention of the Mac App Store concept, people like you will continue to make factually baseless comments like this and continue to be modded "Insightful" on a daily basis during the entire intervening ten years.
If Apple is actually stupid enough to try and lock down a general purpose computing platform that is competing with other general purpose computing platforms, I will be happy to eat my words. In the meantime, every idiot who thinks the entire Mac platform is going to suddenly turn into some sort of locked-down extension of the iPhone next summer is _severely_ deluded. The Mac App Store is just going to be a bonus to the platform, not a restriction, and will make a ton of developers very, very rich in the next few years.
Oh, and totally on topic, Oracle will put out their own JVM for Mac and by a year from now nobody will even be questioning Apple's decision to stop making their own JVM which Java developers were always complaining about anyway because it was constantly one version behind.
Maybe it's just me, but lately the Slashdot community really seems to be in the practice of making mountains out of molehills, even more so than usual. Perspective seems to be all but lost around here anymore.
There is no reason that a Scheme interpreter would use host language recursion for recursion in the Scheme program. Any student setting out to implement Scheme in the time frame when Java was available should have encountered "tail recursion" and "call/cc" in their background reading and reinvented or learned one of the obvious idioms to implement Scheme semantics via iteration and a heap-based continuation store.
yeah try do that in 3 week
Jehovah be praised, Oracle was not selected
no it was a piece of crap, it supported about a quarter of the scheme spec, it was a 3 weeks, end of trimester compiler theory project.
Jehovah be praised, Oracle was not selected
lets not underestimate the difficulty of writing a full Java implementation from scratch. The least apple could have done is release the source under some BSD (CCDL ?) or GPL license. I still can't quite imagine how to get things to display on MacOS without X11 or linking in Cocoa some how. Do you suspect they'll stop porting X11 to MacOS soon? do you think their Ease of Unix Portability is worth that much to them? I have my doubts. I may appreciate having a MacBook so I can do all my posix programming and play games but I don't know if I can keep up my objectivisim if they keep on this path. I get the "Why can't Oracle do it" but they didn't exactly make it easy..
If you are a Java developer, you can run Java on your own server and provide an HTML5 interface on the client, or a Cocoa interface on Apple platforms. That is how Apple themselves use Java. Cocoa and HTML5 both have auto installs and auto updates built-in, and are therefore consistent with consumer use. Whatever is on the server can be as nerdy as you like, but what is on the client has to be consumer grade. Flash and Java are not consumer grade.
Understand that Apple makes consumer products.
Yeah, but keep in mind that Apple has also been selling itself for years into the academic and research communities, and a lot of us are using Java for number crunching because it is reasonably cross platform and reasonably performant. This screws that community big time. HTML5 and Javascript are irrelevant for what we're doing. Yes, we can install OpenJDK, but at this point that involves turning on X11, JRF licensing restrictions, or building from source. As a developer that's feasible, for our end users its not. It's Apple's call if they want to keep serving that market or not, but I'm certainly going to point out to them that I won't be spending $10,000/5 years on hardware from them in the future.
It is confusing. Are you guys talking about Java programming language or JVM?
I'd like to buy homeland for our 10 million people. http://twitter.com/mahadiga
Whoever wins, we lose.
Forget magic. Any technology distinguishable from divine power is insufficiently advanced.
I must admit that i wasn't much of an apple fanboy before, but this tantrum throwing over a COMPUTER LANGUAGE is just too Steve. Barf...
That's beside the point of it being a large source of income...
Plus - I'm not sure if "irrelevant" accurately describes the most ubiquitous mobile app platform(s?...yeah, not nice enough to be strictly single one) on the planet; one which, for example, powers the #1 mobile web browser (on the side of the phones at least) - #1 by site hits, despite many of its users being rather frugal about number of sites visited / data costs (but then, many of them don't even have access to anything else, and won't have for some time to come; so perhaps it's best for j2me to not be forgotten just yet)
One that hath name thou can not otter
Total tangent though. Perhaps it was code to exercise a compiler's tail-call optimizer.
... and deprecating it on the Mac will remove one argument for allowing Java on the i-devices. Apple earns money via their app store and don't want a JVM there to compete with. Ergo skip java completely. For my company it means that our java based customer programs that now support Linux / Windows / Mac OS X in the future will support only Linux and Apple. We're certainly not going to reprogram them from start just to support Apple. What it means for our apple based customers is hard to say.
What the hell is "OS X"? Because the one by Apple is named Mac OS X.
I disagree. What I observe is that Apple is rapidly moving away from cross-platform development by limiting the choice of languages.
On XCode 3.2, Apple removed all Carbon project templates. Why would they do that unless they plan on discontinuing Carbon on the future? The same XCode release removed the Cocoa projects that used Python and Ruby. And now Java is no longer supported directly by them. So if you want to use Cocoa, your only safe bet is Objective-C. Give it 5-10 more years, and you will have a very tightly controlled development environment that is not compatible with anything else. This may be convenient for Apple, but it is certainly not good for software developers.
I know that there are Objective-C compilers for other platforms, but I do not know a single cross-platform developer that prefers Objective-C over C++, when having available an equally well supported OS framework for both.
this won't be popular to say on slashdot but really? NeoOffice and Eclipse? That's your negative consequences? The crossover of Mac users/OpenOffice fans and/or Eclipse developers has to number in the several dozens. And as far _business_ applications in java breaking - maybe you missed the part where we are talking about the Mac?
It's part of a platform that is supposed to be attractive to customers.
You might as well say they maintain their power adapter designs "for free".
you had me at #!
You're certainly getting warm with this comment.
It seems clearly connected with recently announced plans to start closing the Mac OS X application ecosystem. Apple clearly wants to discourage 3rd party platforms on OS X, as they so controversially did with iOS.
you had me at #!
John Battelle
you had me at #!
The NeoOffice UI layer is written in Java, and according to the developers, would have been difficult to implement natively. The Vuze (Azureus) BitTorrent client and InterMapper Remote are also implemented in Java. In fact, Java applications on the Mac can look just like native ones, so it's often not obvious when Java is being used.
I use PS3MediaServer.
it's written in Java and does a damn fine job of transcoding my media for my ps3.
I say bollocks.
Non impediti ratione cogitationus.
Indeed, nice to meet you as well.
I've been doing IT for a bit over a decade now, and starting to feel old. :) Been on /. since before the days of Slashdot Radio. :)
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
I'd mod you up if I had the points. A tool's a tool, and if your employees work best with one brand over another and it's such a small cost, you're wasting your time.
This all goes back to the post a while ago about specing out 1000 PCs for a governmental department, and some people earnestly thought it would be worth it to build your own. Insane! Find out what you really need and buy the right tool for the job and be willing to pay for it to work well. If you buy shoddy tools, expect them to hurt your bottom line in more ways than one.
Agreed. And it's something that a lot of FOSS advocates here lose sight of - in the grand scheme of things, "sticker prices" are a vanishingly small part of the total cost of ownership - choosing a piece of software *simply* because it's "free" doesn't make sense if it costs your organization 2x the cost to operate as you would have spent on licensing a 'closed' piece of software instead. You choose the best tool for the job you need to accomplish - sticker price should almost always be the *last* piece of the equation you look at - staffing & hardware costs to support the software in your organization will turn the purchase price into a rounding error in your total cost. If everything else is absolutely equivalent, then the free one should win... but I've yet to see an assessment come down purely to purchase cost (rather than functionality & ease of maintenance) - in the cases where the open-source tool has won out (Linux, apache, tomcat, perl, eclipse...), the 'free to use' bullet point has simply been an additional bonus above and beyond the other functionality & cost savings that drove the decision.
I am writing music notation and playback software using Java. The one code base is tested on OS X 10.3.9, 10.4.11 and Windows XP. It uses a powerful rule engine called Java Expert System Shell (JESS) via its Java API. I have a lot invested in Java and I will not search for another rule engine for Objective-C, if it even exists at all. If Apple kills and blocks the Java ecosystem in its products, I will dump the Apple ecosystem. Mr. Steve Jobs, you will have become worse than Bill Gates, vying for complete control over developers. I will sell off my Macbook Pro, my old G4 tower and iPod shuffle and cancel my planned upgrades of all three. Windows and Linux will be the new homes I have NEVER called home before. I used to own an Apple II long ago showing my support for principled companies I will encourage all those who bought into the ever closing Mac ecosystem, to leave it. I hope the Apple Board and Apple’s shareholders will stay awake at night because of the exodus until they support Java in all their products and help make it better. As a GUI API, Java works perfectly. It makes multiplatform development easy for the small business. Steve Jobs doesn’t care about small businesses anymore. He cares about his Objective-C like Bill Gates cared about his MS-DOS and Windows
You're comparing an applet (a plugin, necessarily limited by the browser) against a native application? really?
If a Java applet can't do it neither can a Flash app, neither can an HTML5 app and so on. In contrast, if a native app presumably written in something like C++ can, then so can Java SE as a standard desktop app.
You're simply not comparing like for like which is dishonest at best.
Besides, your example seems rather suspect anyway, to even achieve a mere 16 bit colour on those streams you're talking about ~366MBps of hard drive write speed would be needed, but even the fastest modern SSDs which would be much faster than an old P3 800mhz is going to support the throughput of cap out at about 220MBps:
http://www.tomshardware.co.uk/charts/ssd-charts-2010/Streaming-Write-Throughput,2360.html
So you'd need to compress down to around 0.6 of the video's original size and you'd need to do that on ~366mb of data every second in real time.
This is before you even factor in the requirements of audio storage of every single stream at which point the compression of audio must be factored in, and further compression of video would then be required to make room for audio storage, and all this is assuming the system could sustain that write constantly for the period of surveillance with no other writes to said disk causing a delay, and assuming the process can even be handled on a system with only 128mb of RAM meaning there'd quite likely need to be some paging. We've also assumed you're only using 16 bit colour too of course- it could very well be 24 bit.
Even if your example was true and I've missed something, then it's not like Java is in any way the limiting factor here.
If Java can't do it, then it's because your example is likely a fabrication and would seemingly require a breaking of the physical laws of computing to achieve.
Their own enterprise apps (like Oracle Financials) still use applets.
I'm not talking about the big back-end servers running Java (which they do, but that's not relevant), I'm talking about the end-user desktops requiring it. Oracle can "suddenly" lock Macintoshes users out of using some of their enterprise apps, they can port those apps to have a different non-Java front-end, or they can add MacOS alongside Linux and Windows as a platform they release Java for.
I'm betting that upon considering all the financial and PR trade-offs of those choices, they'll decide the last one is their best option.
I still have two of those cards (they sold for $3,000 apiece in the US). You could plug 4 dvds into each one and rip them all to h.264 video/audio on the fly. Amazing compression ratios while totally watchable. 100 minutes of movie shrunk down to 400 megs. So that's only 4 megs a MINUTE to stream to disk per video stream. If you wanted higher quality (pretty much the same as the original dvd, and way better than, say, svcd), you're looking at 600 megs for the same data. Again, only 6 megs a minute. A couple dozen simultaneous streams is under 3 megs a second.
Same thing with the displays - the hardware does it directly to the screen.
So no, java can't do it. For one thing, it doesn't have direct write access to the display. For another, you have to license the codecs - Java doesn't ship with them.
-- Barbie
Java couldn't do it on the hardware we targeted. c could.
Java is for people who can't write code that doesn't go senile - aka "leak memory." Call me when your operating system is written in java.
Long after java is dead and gone. we'll still have c, c++, and coders cranking out code in "the next java replacement". Besides, didn't you get the memo? You don't need java to target the JVM. And you don't need a jvm to run java.
Ah I see, so now you're changing the problem to suit your argument?
Effectively you're now changing from "Java isn't capable performance wise", to "Java isn't a system's language"- no shit, no one expects to be able to device driver level code in Java, it's simply not what Java is for.
Your argument simply doesn't hold weight as any negative slant on Java, it merely shows a lack of understanding on your behalf as to what Java is for, and you're trying to spin this misunderstanding of yours initially as some incapability of Java performance wise, and now as some limitation of Java where it's meant to be capable- it's not.
Then though, even here Java isn't completely out in the cold, if the drivers are written in C++ or whatever, there's no reason Java can't work with them through JNI or similar.
So there's still little about your exam that Java can't do, there's a lot it's not suited to, but ultimately all you've done is found a relatively fringe case which Java isn't really designed for (it's designed for apps and services, not drivers and operating systems) and have tried to spin this as an inherent flaw with Java - it's not, I don't think anyone in their right mind ever suggested Java was designed to solve every possible computing scenario ever. You similarly wouldn't use Python, PHP, the .NET platform and so forth for device driver or OS development, it's just not what they're there for.
The fact you later tried to throw licensing issues into the mix shows either how little you understand about Java and computing in general, or simply that you are just trying to troll. What it does not show is someone with a good understanding of the issues, arguing a reasonable and sanely thought through point.
And if you're using JNI, you're by definition bypassing java, so your argument is a failure on that score as well.
Java is a mess. Just look through the class library hierarchy. They make even perl look semi-organized. That's pretty bad.
But if Java is so great, how come it hasn't taken over everywhere? It's had more than 15 years ...
-- Barbie
"I made it clear that Java can't do the video - which isn't a "systems" problem."
It is if the "doing video" in question is communicating with bespoke hardware at driver level.
"And if you're using JNI, you're by definition bypassing java, so your argument is a failure on that score as well."
Well yes, you're bypassing Java for the things it's not designed for- systems stuff, and using Java to access an exposed interface to the systems stuff for the bits it can do well. You're still using Java for what it's suited to.
"Java is a mess. Just look through the class library hierarchy. They make even perl look semi-organized. That's pretty bad. "
If you think Java's class library is problematic then you're obviously fairly poor at programming. It's not exactly difficult to work with. Even graduates deal with it okay being the most taught language in university still to this day.
"But if Java is so great, how come it hasn't taken over everywhere? It's had more than 15 years ... "
Because, although you seem incapable of comprehending this point, it's not designed to take over everywhere. I'll repeat again, because you don't seem to get this point- it is NOT a systems language.
It has however taken over in many other areas where it is suited to, it's used for most business systems, it's used for a lot of scientific computing, it's used on a lot of portable and embedded devices.
It's still the most taught, and most sought after skillset, it's still the single most prominent language around today. So yeah, of course it's not taken over everywhere, but it's more succesful than any other language to date except perhaps C/C++ which are very much systems languages, and are generally used to get a Java environment running. I'm not sure what else you expect it to achieve? it's still far more prominent than the likes of Ruby, Perl, Python, the .NET languages, Lisp, and so on, and so on.
Reading through your posts, the actual problem seems to be that you just don't actually know anything about Java, so I'm not sure why you feel the need to comment on it when you clearly know nothing about it. I guess you're one of those people who just has to have an opinion, even if it's completely uninformed and hence wrong.
Java is dying. And I was building classes back before java was even a thought in anyone's mind. The java class library structure is awful.
The original design idea - making everything a class - was too simplistic. Anyone doing c++ learns that very early on. "Classes if necessary, but not necessarily classes." I had already gone through that learning experience 20 years ago.
The original design is flawed. Seriously flawed. As is the "stick all the gui painting in a single thread." We're not back in the days of minimalistic video ram - java should be redone, including save-unders and multiple paint threads. Other toolkits do it.
"Showing video is not "systems stuff.""
Of course it is if you're communicating with bespoke video hardware at driver level which is precisely the scenario you cited in this case.
"Java is dying. And I was building classes back before java was even a thought in anyone's mind. The java class library structure is awful."
Yes, just not as fast as C++, and look how prominent that is still. I think Java developers can breathe a sigh of relief that dying means they've got at least a good 20 years left in their skillset yet, and that's assuming Java doesn't start improving over that period and increasing marketshare of course again. The point is, because more developers are trained in it than any other language, even in decline it's still growing it's developer base faster than any other language.
"The original design idea - making everything a class - was too simplistic. Anyone doing c++ learns that very early on. "Classes if necessary, but not necessarily classes." I had already gone through that learning experience 20 years ago."
Ah I see so you're one of those funky old school programmers who gets thrown by things such as "object orientation" then?
That would explain your site that's dedicated entirely to not having a clue what the fuck XML is all about too I guess. Good way to keep yourself irrelevant I guess.
Otherwise, you'd have to consider "hello world!" to be "system level stuff".
And no, I don't get "thrown by object orientation" - I still write my own classes rather than use pre-made ones. Why should I use someone's generic bloatware approach when I can write one that does exactly what I want, and ONLY what I want? (and btw, you can write classes in straight c - no need for c++ - just use an explicit "this" as the first parameter - though I usually use c++).
Go play with your toys. Call us back when you've got a couple of decades real-life experience (and no, 1 year's experience repeated 20x doesn't count).
-- Barbie
"Your ignorance is showing. Communicating with a driver is not "system level stuff." Writing the driver is."
Exactly! This is precisely what JNI can do, yet you stated that if you use JNI for this you're not using Java which implies you're suggesting you need to write a piece of code in Java at systems level, quite clearly you don't. There's no problem with ignorance here, the only issue is you wriggling and constantly redefining the problem to suit as you realise how stupid your comments are- the fact is you're trying to troll about Java and when your arguments are demonstrably wrong, you change the problem to suit your troll. You are wrong, your example was terrible, get over it, stop trying to change the problem to suit your argument, you're now at the point where you're simply contradicting your earlier statements in doing so, this makes you appear stupid, not smart.
"And no, I don't get "thrown by object orientation" - I still write my own classes rather than use pre-made ones. Why should I use someone's generic bloatware approach when I can write one that does exactly what I want, and ONLY what I want?"
LOL, you really don't know what the fuck you're doing do you? you write everything from scratch? Not only do you struggle with object orientation, but you have absolutely no concept of code reuse? Christ I hope you're not developing professionally currently, I'd hate to think you're building any real world code right now. It sounds Tom, like you're one of those people who fits your latter description- 1 years experience 20x over, due to the very fact you're doing things in a very antiquated way, using antiquated technology for the task at hand, and doing things that whilst might have passed as acceptable some decades ago, no longer have a place in modern good practice software development. Clearly you have no understanding of the way software development has moved on in the last 15 - 20 years or so at least. Clearly you have no concept of understanding a wide variety of tools such that you can use the best tool for the job.
Still, as I'm feeling like a good samaritan, I'll try and help you and answer your question, the answer is because we're so long past the days where every clock cycle matters that spending days, possibly weeks redoing something just to save a few clock cycles, at the expense of having more poorly tested and hence less reliable and less trustworthy code, and because using common code rather than reinventing the wheel each time makes it easier for other developers with experience in using that common code to jump in and maintain your product. If you really reinvent the wheel as you say then you must be grossly incompetent, your code must be horribly unmaintainable and your productivity must be painfully low. Just because you can reinvent the wheel, doesn't mean it's a good idea, and certainly doesn't mean you should.
And no, we are FAR from past the days when every clock cycle matters. As energy becomes more expensive, both for cpus and for cooling, programs that use fewer resources are not just welcome, they're needed.
Or look at the mobile, embedded, and laptop spaces - oh, don't bother - Java isn't licensed to run on mobiles without paying Oracle to license JavaME - and it needs to be customized for each device (so much for write once run anywhere).
But that's okay, because in YOUR world, nobody buys laptops or servers ... just WinBlows, where you're already so bloated that a bit more won't make a difference.
When I can switch from a generic framework to my custom one, and go from a few pages a second to 400 a second on the same hardware, it means something. Among other things, it means that the generic code is bloated and almost useless. It also means that mine is quicker to debug, because the code paths are much more obvious. It also means that when we put it on the outside-facing server tomorrow, the client is going to be blown away by the fraction-of-a-second responsiveness.
It's also why I'm teaching the others in the company to use my framework for current and future development.
The same techniques work whether I'm coding in assembler, c, c++, php, python, or any other language - well-designed, well-written code wins.
And re-inventing the wheel is how we do things - or we'd all be driving Flintstone-mobiles. Or are you using punch tape and a telex terminal to post?
Seriously, get your head out of your behind and look around you a bit - people want longer battery life, and that only comes from smarter code,and desktops are a dying market. Laptops and netbooks have outsold desktops since last year, and next year smartphones will sell more than desktops as well. So code bloat is going to be more of an issue, not less. People like you will be the dinosaurs.
And speaking of code re-use - that has never been the way to advance this industry. Continuous improvement is what pays dividends. Blindly re-using code just allows crappy code to become firmly embedded. When I get my hands on code, *nothing* is sacrosanct. If you're not throwing out code whenever you refactor, you're not doing it right.
It's why programming is a form of art. It's where you get to express your creative vision in a concrete fashion. So stop being such a drudge. If you don't, or can't, write your own classes, explore new ways of doing things, etc., don't criticize others who enjoy doing so and have managed to convince employers to pay them for the privilege.
-- Barbie.
"Please grow up and stop being such a fanboy. The reality is that if you're using JNI, it's because Java doesn't cut it."
Or as mentioned, simply because you're interfacing with something that isn't suited to being developed in native Java, a point you're still apparently entirely unable to comprehend.
"And no, we are FAR from past the days when every clock cycle matters. As energy becomes more expensive, both for cpus and for cooling, programs that use fewer resources are not just welcome, they're needed."
Energy isn't so expensive yet that a handful of clock cycles outweighs the massive extra development cost of achieving that saving. Developer time is still by far the more costly factor.
"Or look at the mobile, embedded, and laptop spaces - oh, don't bother - Java isn't licensed to run on mobiles without paying Oracle to license JavaME - and it needs to be customized for each device (so much for write once run anywhere)."
Not really, the only thing that changes are things like the UI, core code can be reused- a concept you still apparently just do not understand.
"But that's okay, because in YOUR world, nobody buys laptops or servers ... just WinBlows, where you're already so bloated that a bit more won't make a difference."
What are you on about? The server space is an area where Java has really made it's mark used by everyone from banks to Google to run their back end processes. I guess you just don't have any experience in developing backend software otherwise you'd know that.
"When I can switch from a generic framework to my custom one, and go from a few pages a second to 400 a second on the same hardware, it means something."
Yes, it probably means you don't know what the hell you're doing.
"it means that the generic code is bloated and almost useless."
Or it means you simply picked the worst framework possible, or picked a good framework and aren't smart enough to understand how to implement it properly.
"It also means that when we put it on the outside-facing server tomorrow, the client is going to be blown away by the fraction-of-a-second responsiveness. "
Which you could also achieve in a fraction of the time with a good framework, which will have been tested and optimised far beyond anything you could do in the 24hrs you've got to get it on the server tommorrow.
"The same techniques work whether I'm coding in assembler, c, c++, php, python, or any other language - well-designed, well-written code wins."
Yes, and the chances are, for most problems, that code has already been written.
"People like you will be the dinosaurs."
I'll take the chance thanks. Meanwhile you can continue to actually be a dinosaur with your 1980s write everything from scratch leading to poorly tested buggy code with a long development time ideology.
"And speaking of code re-use - that has never been the way to advance this industry."
Yes it has, because if you start from scratch every time you have no hope of ever getting round to doing anything new, and you run the risk of constantly reintroducing bugs and security flaws simply because humans aren't perfect- repeat the same thing a hundred times and they'll still do it wrong some of those times no matter how experienced.
"Blindly re-using code just allows crappy code to become firmly embedded. When I get my hands on code, *nothing* is sacrosanct. If you're not throwing out code whenever you refactor, you're not doing it right."
No one said anything about reusing crap code, just reusing good code.
"It's why programming is a form of art. It's where you get to express your creative vision in a concrete fashion."
No actually, it's an engineering discipline, that's probably why you're getting it so very wrong. People want solid, well structured applications, not arty farty bullshit.
"If you don't, or can't, write your own classes, explore new ways of doing things, etc., don't criticize others who enjoy doing so and have managed
1. No server runs java as an operating system - because java simply can't do it. You might want to check and see what language java is written in - hint - it's not java :-)
2. Code re-use is that semi-mythical beast that looks good from far, but in reality often ends up costing more than it's worth.
Two projects that other people are working on are being scrapped and redone from scratch because the code is now an unmaintainable piece of crap, thanks to "code re-use."
Blind code re-use is a case of the blind leading the blind.
3. Programming is an art, despite what you claim. If you think it's only engineering, you're doing it wrong. And you're probably boring as well. On second thought, please remove the word "probably".
4. "Arty-farty bullshit" applies to java more than any other language in the world. Making everything a class was a perfect example of a design decision that was suited for the ivory tower arty-farty types.
-- Barbie
Carry on sucking Tom, don't come crying next time the redundancies come around and you can't find anyone else gullable enough to pay for your incompetence though.
Each post you make demonstrates more and more that you simply don't know what the fuck you're on about.
http://www.burlingtontelecom.net/~ashawley/gnu/emacs/ConText-Kelty.pdf Page 2 ... nice reference to "Donald Knuth's monumental work The Art of Computer Programming [Knuth, 1997])" ... I'll take Knuth's opinion over yours any day, and I'm not the only one http://en.wikipedia.org/wiki/The_Art_of_Computer_Programming
Others:
The Art of Unix Programming: http://www.catb.org/esr/writings/taoup/html/
Or this: http://onlamp.com/pub/a/onlamp/2005/06/30/artofprog.html
Einstein:
Quotes from RMS, Brookes, etc. Programming is art when done right. You obviously are incapable of seeing that by your own words - must be the brain-damage from too much Java, if you have to write stupidity like this:
I'm the one who got called in to rewrite the server at one company when nobody else could complete the project (note - this is a server, not just an application) - it spawns 400 threads at startup, each one waiting for work, does the task, then goes back into the pool. It responds to 1,000 requests per second, without ever having a memory leak or killing and re-spawning a thread to retrieve memory. It's not impossible to write leak-proof c and c++ code, but it is an art, one you will never be able to achieve, because you are no artist.
-- Barbie