Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
The "public outcry" was perhaps a good way to demonstrate to both Apple and Oracle(Sun) the demand for Java on the Mac platform.

This announcement is great news for anyone doing Java work on the Mac.
 
happy to hear definately. i still find it funny though apple's disdain for businesses. every move they make is like utter suicide in the business realm but only they it seems can go on not giving a crap. must be nice to be them and have no one in business to answer to.
 
Of course, since its on the internet it must be a fact! Just like when you pretended to have worked for Apple.

Your reason for argument is rather Pointless.

You mean he doesn't do that anymore ? :eek: All his posts still reek of "I'm pretending to be affiliated or close to Apple". Bugs the hell out of me.

When you work at a great company or let's just say Apple then you'll understand. I still have relationships within Cupertino I DO NOT WORK THERE.


By the way, IF YOU KIDS ARE SO MUCH AGAINST WHAT EVERY LITTLE THING APPLE DOES, WHY BUY OR CONTINUE TO USE THERE PRODUCTS???? WHY??? ALL OF THOSE WHO WINE AND COMPLAIN AND CONTINUE TO USE AN APPLE PRODUCT ARE NO DIFFERENT FROM SOMEONE WHO HATES HOOKERS BUT YET SLEEPS WITH THEM.

Bruce
 
Yes, on top of any OS might be a bit broad. But, I'm thinking the licensing terms specifically mentioning VMWare solutions might be a bit limiting. Something more along the lines of allowing OS X Server to run on top of any bare metal hypervisor would allow other competitors to VMWare to offer solutions while avoiding Linux or Windows hosts.

The license already allows bare metal hypervisors.

http://www.parallels.com/products/server/mac/baremetal/

Apple would have certainly sued them by now if it didn't. ( It has been out for several months. I don't think it would take their lawyers that long to draw up papers. )

So it is not a special license for ESXi/ESX or this parallels product that is needed. Nor Xen . All VMWare or Citrix/Xensource have to do is work with Apple so can directly boot on EFI. However, what they also have to do is turn off the VM migration/motion mechanisms for Mac OS X VMs. Or convince Apple they have some undefeatable mechanism so that migraiton only occurs on Mac only clusters.

What Apple has not given up and is extremely unlikely to give up on is running on non Apple hardware.

ESXi/ESX would still be useful just running VMs in place on a single Mac. VMWare didn't always have the migration feature and folks found it plenty useful. They also had restrictions where had to run on similar x86 implementations (couldn't mix Intel x86 with AMD x86) for a long while too. So folks who will inevitably yelp that similar-hardware clustering for migration is unusable are blowing smoke.

I think the bigger problem for VMWare is lack of expected volume and perhaps the increased costs to put the limiters in (although something should be there from when did have phyiscal limiters). The Mac Pro is bigger volume (than the XServe ) and lots of folks are going to be interested in squeezing 5 VM servers into 5U worth of physical space. They may move now.

Virtualization isn't completely hardware independent if you want high performance out of apps on the OS. Nor can you make it float to random locations ( without some twisted networking path and quirky storage issues. ). There are clusters of machines you can easily float between, but there are some physical limiters too. Apple will just make it more confining to just one box at a time.
 
When you work at a great company or let's just say Apple then you'll understand. I still have relationships within Cupertino I DO NOT WORK THERE.

Please, stop pretending.

By the way, IF YOU KIDS ARE SO MUCH AGAINST WHAT EVERY LITTLE THING APPLE DOES, WHY BUY OR CONTINUE TO USE THERE PRODUCTS???? WHY??? ALL OF THOSE WHO WINE AND COMPLAIN AND CONTINUE TO USE AN APPLE PRODUCT ARE NO DIFFERENT FROM SOMEONE WHO HATES HOOKERS BUT YET SLEEPS WITH THEM.

When did I say I hated Apple ? When did I say I was against every little thing they do ?
 
I wonder how this OpenJDK Mac support will be implemented? Will OpenJDK directly release binaries for Mac or will it be like Apple's WebKit and XQuartz support, where they contribute to the open source code, but split off internal branches and develop their own applications bundled in OS X, so the "official" implementation will still be released through Apple?


The better way to put this is what kind of binaries?

Snapshots of the milestones or of the finished "Java 7" ? I think Oracle is going to release the finished version which will be slightly different that. There was a link to an Oracle blog about the Apple-Oracle annnouncement.

If you go to his previous blog entry on Oracle's Approach going forward to the JDK/JRE/JVM release chain:

http://blogs.oracle.com/henrik/2010/11/oracles_jvm_strategy.html

You'll see that the binary only version that Oracle is going to drop as the "official" java that most regular people will use, will have some closed source bits sprinkled on top because of some entanglements. It is kind of unclear if the Mac OS X version will just be purely OpenJDK or there might be some Apple closed source special bits in there to.

How much sugar the Mac OS X gets seems to be an open question.

Oracle is likely going to release the binary version. From the press release
"The best way for our users to always have the most up to date and secure version of Java will be to get it directly from Oracle."

That's likely what part of the the hang up has been. If Oracle is distributing any augmented versions of OpenJDK or a straight port of the closed source version then they are the ones who have the bits.

The developer note was and is correct. Apple isn't going to release another java after JE6. The ones you get that are Java 7 will be Oracle ones. Apple is just contributing to OpenJDK they won't be releasing any binaries.
 
As much as I like cocoa for writing gui apps you are sorely mistaken when you try to compare the two. Nowadays frameworks make the language, case closed and objective-c doesn't have nearly as many frameworks for it as java does. It doesn't even have anything like jdbc available(let alone advanced frameworks like hibernate), ditto for messaging and the list goes on.

I work in an all mac shop and if we need a quick and dirty application then we write it in cocoa/obj-c but if we need anything more than that it's java because i don't have all day to be reinventing the wheel. Plus the code will work on other platforms, always a plus.

I actually wasn't the one who originally made the comparison, and I wasn't trying to pit them against each other head to head. However, you're setting up a straw man fallacy yourself. It's easy to make Cocoa look like a terrible choice for solving problems that it's not intended to address; the same could be said of Java or most other languages.

It's true that there are tons of libraries for Java, and that the same functionality often doesn't exist for Objective-C. However, the frameworks you mention are typically used in database-centric server applications. Arguing that a language is unsuitable "because you can't do ___" is untenable if such functionality isn't interesting. There is plenty of functionality that you get in Cocoa, Obj-C, and OS X / iOS, but are weak or missing in Java. For example: GCD and Blocks, categories, localization, bindings, and NSNotificationCenter.

I work in an all-Mac shop myself — an IT organization. Our application servers are all Java and JBoss/Tomcat. If we need a quick-n-dirty client application, we write a web app, perhaps even using JSP. However, if the goal is a polished and high-performance user experience, we turn to Objective-C and Cocoa. The right tool is all a matter of what you need it for and where your expertise lies.

What I was trying to express is that Objective-C and Java largely live in two different worlds. Suggesting that one should replace the other (or even that Apple should support Java for tasks where Objective-C is dominant) is silly. Java support on iOS makes about as much sense as Microsoft adding support for building .NET apps with Java or Objective-C. That is to say, very close to none at all.
 
problem not solved

The problem is still there, are we going to have native java support on Mac OS X? If people have to install java runtime themselves, then applications written in java will not be allowed in the upcoming mac app store.

For iOS, developers are happy with ObjC/Cocoa, because there are too much unique features that can't be put into a general language/framework; For desktop apps, Java is definitely a great option because desktop apps share a lot similarities between platforms.
 
That's likely what part of the the hang up has been. If Oracle is distributing any augmented versions of OpenJDK or a straight port of the closed source version then they are the ones who have the bits.

No, that is incorrect.

What is happening is that Oracle is creating a paid version of the JVM. That will have closed-source content in it. OpenJDK is entirely open source and all of the code is visible and anyone should be able to compile it. The only restriction is the Field of Use. Which essentially states that you can't use the JVM in ways that Oracle doesn't want you to... (e.g. you can't put it your computer in a cabinet and run it as a Kiosk).

The Oracle JDK/JVM which is closed source and has performance optimizations will likely have less restrictive FoUs.

The problem with Apple's commitment, if you read it carefully, is that Apple will not contribute the current graphics code:
and the foundation for a new graphical client.
The graphical client is the most important part for desktop java. Apple uses private APIs and does not want to release them, so they will only release parts of a graphical client, the rest will have to be coded by the community.

The thing is, the graphical client is the hard part. We already have a build of OpenJDK called Soy Latte that runs without the graphical client.

It is unlikely that Java7 will be available on OSX at the same time it is available on other platforms. There is simply too much work to do from scratch.
 
The "public outcry" was perhaps a good way to demonstrate to both Apple and Oracle(Sun) the demand for Java on the Mac platform.

This announcement is great news for anyone doing Java work on the Mac.

Umm Oracle knew it could easily not do anything with Java and it would only be Apple that would suffer. More software would go Apple only. Java devs would leave Apple completely.
 
Its not difficult to announce the deprecation and this together, one gets delayed, simple. Apple screwed up the communication on this one, just accept it and get over your "Apple can do no wrong" line..

Customers, particularly business / pro customer's base their decisions on Apple's actions and communications...

Again, you make the assumption that these two bits of information could have been announced simultaneously. Unless you are privy to inside information that actually proves that the Oracle / OpenJDK agreement was a done deal before the deprecation was made public, it's foolish to assume and publicly assert that the timing was a mistake rather than intentional.

You're correct that customers base their decisions on Apple's actions. However, wise customers also base their decisions on facts (not rumors) and how things actually play out (not how they appear at first blush).

I'm not claiming that Apple can do no wrong ... only that their communication on this was very likely intentional. You can choose to be upset about the way Apple chose to handle things, but > $20B in quarterly revenue suggests to me that they know what they're doing and have things well in hand.
 
However, if the goal is a polished and high-performance user experience, we turn to Objective-C and Cocoa.
I'm guessing the point you are trying to make is that you use Objetive-C because it has access to the Cocoa framework, and therefore allows a native user experience that you don't get with anything else.
Of course providing Cocoa bindings for Java you could get the same features.

Java support on iOS makes about as much sense as Microsoft adding support for building .NET apps with Java or Objective-C. That is to say, very close to none at all.
I'm not entirely sure why that is out of the question. The CLI does runs j# code and Microsoft would love to be able to incorporate a JVM if Oracle gave them a license. I don't see why iOS wouldn't run J2ME. It's an artificial limitation imposed by Apple to make sure developers only write for their platform and no one else's.
 
With such a narrow mind, I'd never hire you... :rolleyes: There are plenty of ObjectiveC developers that aren't that good either, and who are incapable of learning another langauge too. I've seen plenty of ObjectiveC ( Java and .Net ) crapware... the language doesn't automatically make an application great.

The skill level of developers in any langauge varies.. I've known great developers in Java, ObjectiveC etc, and the reverse is true - they should rethink their development careers ( and move onto Project Management instead :D)

Java and .net have their place, as does ObjectiveC. For example, I'd *never* develop server side applications in ObjectiveC, I'd probably use Java. Likewise, I wouldn't write an OSX app in Java, but instead use ObjC.

My apologies for sounding narrow-minded. It was not my intent to suggest that Java or .NET have a corner on the market for remedial programmers. I completely agree that a language or framework is only one factor of application quality, and crapware can be written in any language. There are plenty of developers I would hire — it depends mostly on their skills, less so on their preferred programming language. I personally write in both Java and Objective-C regularly, for server-side and native apps respectively, just as you suggest.

Talk about the uninitiated talking about things they have no clue about.

I wouldn't classify myself as uninitiated. I'm a computer science graduate (who had to learn at least 8 programming languages to just graduate, and several more for fun on the side) and a software engineer at a Fortune 100 company. Not trying to toot my own horn, just suggesting that I actually do know what I'm talking about. I value flexibility and being able to learn something new. People who whine that learning Objective-C is too hard cause me to be concerned what else might be too difficult for them to learn, and that's a tough gamble to take when hiring programmers.
 
Last edited:
However, if the goal is a polished and high-performance user experience, we turn to Objective-C and Cocoa.

I'm guessing the point you are trying to make is that you use Objetive-C because it has access to the Cocoa framework, and therefore allows a native user experience that you don't get with anything else. Of course providing Cocoa bindings for Java you could get the same features.

One might think Java bindings would be a good solution, but the Cocoa-Java bridge (deprecated in 10.4, removed in 10.6) tells a different story. Java and Objective-C are very different languages, and many of the killer features of Objective-C and the Cocoa frameworks just don't line up with Java. Without a translation layer like JNI, they just don't really play well together. Lamentable, perhaps, but there it is.

Java support on iOS makes about as much sense as Microsoft adding support for building .NET apps with Java or Objective-C. That is to say, very close to none at all.

I'm not entirely sure why that is out of the question. The CLI does runs j# code and Microsoft would love to be able to incorporate a JVM if Oracle gave them a license. I don't see why iOS wouldn't run J2ME. It's an artificial limitation imposed by Apple to make sure developers only write for their platform and no one else's.

I never suggested it wouldn't be technically possible, I only said it wouldn't make much sense. I'll clarify by saying it wouldn't make sense for Microsoft, regardless of how smart it seems to developers or users. Even though adding Java support to .NET would potentially attract new developers, it would diminish the allure of using C# (Microsoft's preferred language, and a pretty good one at that) and require Microsoft to support Java forever after (or face backlash). In short, it would attract adopters, but not converts, which any platform needs to become/remain viable. Cross-platform is nice and all, but it doesn't help differentiate any given platform for either developers or users, which is kind of the point.

I believe iOS will never run Java (J2ME or otherwise) because it makes no business sense for Apple to support it. The supposed motive would be to draw developers to the iOS platform, and Apple seemingly has no problem doing that without Java support. So, Apple could spend a lot of time, effort, and money to support Java on iOS, but practically speaking, there is little they would actually stand to gain from doing so.
 
No, that is incorrect.

What is happening is that Oracle is creating a paid version of the JVM. ...
That will have closed-source content in it.

"Oracle will continue to distribute free (gratis) JDK and JRE binaries which includes some closed source goodies "
http://blogs.oracle.com/henrik/2010/11/oracles_jvm_strategy.html

Oracle already has several paid versions (Jrockit , the one in the DB , etc. ) then don't need to create yet another one. They need to drop down to just two (maybe three).


OpenJDK is entirely open source and all of the code is visible and anyone should be able to compile it.

The OpenJDK has cleared most of the issues. However, there are still apps that depend upon the old stuff from the pre-open era. OpenJDK gets you "a" Java. It doesn't get you the Java that more folks interact with on the desktop ( browser plug-ins , sound , etc. )

The problem with Apple's commitment, if you read it carefully, is that Apple will not contribute the current graphics code:
.

There is a post a while back in this thread where there is a plan to replace the ATW functionality. It just isn't implemented. It appears they are going to leverage OpenGL to "redo" all the of the native widgets look.


The thing is, the graphical client is the hard part. We already have a build of OpenJDK called Soy Latte that runs without the graphical client.

Again not really true. Soy Latte has X11 bindings. You may not like X11 windows and widgets but they are graphical. That is exactly what the first drop of this new Oracle/Apple OpenJDK is going to give you.




It is unlikely that Java7 will be available on OSX at the same time it is available on other platforms. There is simply too much work to do from scratch.

They don't have to redo from scratch. However, merging code will take a long time. There are subsections that will need full replacements but that is actually not the bulk of the work. Lots of parts where Apple put an extremely thin veneer over native cocoa calls , eAWT , will port over quickly because they really aren't Java ( in a the multiplatform sense ) they were purely Apple creations anyways and were completely non portable Java code.



This bigger issue is that there are also mainstream OpenJDK version 7 updates that will be coming in from Oracle , IBM , etc. Those too have to be merged. It is not practical to keep all platforms on the bleeding edge. There is always one or two out front and the others absorb the changes from the core development.

Java7's timeline is jacked up anyway since the lots of "pure" open source folks bickering about "Field of Use" restrictions and the JCP process. By the time that gets straightened out and Apple releases 10.7 .... Java 7 won't be too late. The Mac port isn't going to be first out of the gate but shouldn't be too far behind.
 
"Oracle will continue to distribute free (gratis) JDK and JRE binaries which includes some closed source goodies "
http://blogs.oracle.com/henrik/2010/11/oracles_jvm_strategy.html

Oracle already has several paid versions (Jrockit , the one in the DB , etc. ) then don't need to create yet another one. They need to drop down to just two (maybe three).
Yes I know. If you read my post that I stated that Oracle will support two JDKs, a free one and a paid one.


The OpenJDK has cleared most of the issues. However, there are still apps that depend upon the old stuff from the pre-open era. OpenJDK gets you "a" Java. It doesn't get you the Java that more folks interact with on the desktop ( browser plug-ins , sound , etc. )
Please stop. You don't know what you are talking about. The OpenJDK platform gives you the APIs and a VM. The reason it is called OpenJDK is because that is where the reference implementation of the JDK is being built, but the project also will build a VM and Runtime Engine.

There is a post a while back in this thread where there is a plan to replace the ATW functionality. It just isn't implemented. It appears they are going to leverage OpenGL to "redo" all the of the native widgets look.
Again what are you talking about? AWT is not the graphical client, it is simply a UI kit that has been deprecated in favor of Swing.


Again not really true. Soy Latte has X11 bindings. You may not like X11 windows and widgets but they are graphical. That is exactly what the first drop of this new Oracle/Apple OpenJDK is going to give you.
Soy Latte does not have X11 bindings. It is a work-in-progress. Again, you don't know what you are talking about.

They don't have to redo from scratch. However, merging code will take a long time. There are subsections that will need full replacements but that is actually not the bulk of the work. Lots of parts where Apple put an extremely thin veneer over native cocoa calls , eAWT , will port over quickly because they really aren't Java ( in a the multiplatform sense ) they were purely Apple creations anyways and were completely non portable Java code.
The graphical client will be re-written from scratch for OSX.

Look, I don't want to be disrespectful, but you don't know what you are talking about and you are obviously not a Java developer.

Also, if you were a Java developer, you would understand the implication of FoU. It isn't just some "open sourcers bitching". The FoU restricts how you can use your VM. For example you are specifically prohibited from using the OpenJDK VM in a Kiosk. For that you would have to pay for an embedded license from Oracle.

Please keep to what you know.
 
I wouldn't classify myself as uninitiated. I'm a computer science graduate (who had to learn at least 8 programming languages to just graduate, and several more for fun on the side) and a software engineer at a Fortune 100 company. Not trying to toot my own horn, just suggesting that I actually do know what I'm talking about. I value flexibility and being able to learn something new. People who whine that learning Objective-C is too hard cause me to be concerned what else might be too difficult for them to learn, and that's a tough gamble to take when hiring programmers.

I have to agree. Programmers who are not willing to learn a new programing language speaks volumes about them and tells me that they will not last in industry. I remember when C# was brand new and that was less than 10 years ago and now they are looking for people in it for jobs.
I can see in 20 years Java might go the way of COBAL or FORTRAN replaced by something newer and better. Yes it will be good to know it but it might be a dieing language and not very actively developed for any longer.

It is always a good idea to keep learning. Now every program is going to have a preferred language to program in. Nothing is wrong with that but they should be able to read and write in multiple ones if they want to stay relevant. I am in school right now and I have already figured out learning things in one language helps me out in others because it sometimes gives me a new idea about how to do something. From their I go digging around in the other language to see if their is anything like said task that I can pull off in it.

To me the hardest thing about programing is learning how to think like a computer and understand how the code is doing something. After that it is more heavily syntax based and littler things between them but the basic foundation is there.
 
The "public outcry" was perhaps a good way to demonstrate to both Apple and Oracle(Sun) the demand for Java on the Mac platform.

This announcement is great news for anyone doing Java work on the Mac.

I not only want Java on the Mac platform but also on the iOS platform as well.
 
That Oracle now handles all development of Java clients for the Mac instead of Apple doing it and being a version or two behind. At least that's how I understand it.

I think the relationship is a little more integrated than that. From by reading, Apple is contributing technology to the OpenJDK project. Specifically, I think they'll probably be contributing all the hooks that will be necessary to prevent Java from feeling any less "integrated" into the OS than it does today.

Oracle, for their part, will be taking snapshots of OpenJDK and using that as a basis to create their official JDK 7 releases for all of their supported platforms, including (eventually) OS X.
 
"planning to deprecate"

Not to be nitpicking but since when:
This is deprecated as of NOW !

means

planning to deprecate

X sw may be crap but you do not put messages of the type (This is deprecated as of NOW !) if you "plan".

Or maybe all this "planning hoopla" related to sw was just a joke (it will be ready when it is ready), if so please deprecate all sw planners and bean counters worldwide as of NOW! Sw will be a better place :cool:
 
I not only want Java on the Mac platform but also on the iOS platform as well.
While I think the opportunity persists for Apple to work with Oracle to make the iPhone/iPad the premiere mobile development platforms for Java (and helping Oracle with their lawsuit against Android in the process) - it does not appear Apple is going to take that road at the current time.
 
Not to be nitpicking but since when:
This is deprecated as of NOW !

means

planning to deprecate

X sw may be crap but you do not put messages of the type (This is deprecated as of NOW !) if you "plan".

Or maybe all this "planning hoopla" related to sw was just a joke (it will be ready when it is ready), if so please deprecate all sw planners and bean counters worldwide as of NOW! Sw will be a better place :cool:

I'm not completely sure what you're saying, so sorry if I'm not addressing it but...

To deprecate an API/SDK/etc. means nothing is happening to it now but that the API/SDK/etc may be removed, unsupported, or may no longer function at some point in the future. The purpose of deprecation is to warn those that use something that they need to start making alternate plans.
 
You mean he doesn't do that anymore ? :eek: All his posts still reek of "I'm pretending to be affiliated or close to Apple". Bugs the hell out of me.

I know, I called him out for speaking like hes a spokesperson for Apple. Now hes pretending he used to work for Apple. :rolleyes:
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.