IBM and Oracle To Collaborate On OpenJDK
An anonymous reader writes "Today, IBM and Oracle announced their intent to work together to accelerate innovation on the Java Platform, leveraging OpenJDK. IBM and Oracle will also collaborate to support the Java SE 7 and Java SE 8 schedules presented recently at JavaOne and to continue to enhance the JCP."
Can somebody more familiar with Java and the overall Java scene clue us in as to whether this is a good thing?
The higher the technology, the sharper that two-edged sword.
For work reasons we have to use the sun JDK on our linux boxes. However since Sun/Oracle doesn't set up a yum repository for the thing every time it's updated we have to go manually download the thing, unpack it and then put it in our local repository. It's a huge pain in the ass and I'm hoping that the OpenJDK will become a drop in replacement for the official JDK so it can be put into mainstream yum repositories.
Monstar L
I get that java is *the* enterprise-y choice for applications, but I still don't get it. I don't see the economic incentive for Oracle to keep this project, so I'm guessing the bulk of the Dev work is transitioning to IBM.
What is communicated as a collaboration is more a transition for what would have likely gone abandonware with a rats nest of Intellectual Property issues perpetually constraining re-use.
Please, correct me if I'm wrong because I never got Java from the beginning.
http://www.maxineudall.com/2010/02/should-economists-be-sued-for-malpractice.html
No? Then I don't know that I care.
Don't thank God, thank a doctor!
Not sure how, but it must be. OpenJDK is something Oracle doesn't make money on, as far as I can tell. Whenever Oracle touches something it doesn't make money on, it always makes an attempt to crush it between it's teeth.
It already is a drop-in replacement, unless you're dealing with software that makes remarkably stupid assumptions about the JDK it's running on.
Unfortunately, that may be a lot of software -- I know Oracle's own JDeveloper uses some internal Sun JDK stuff, when there's no reason they couldn't use the standard public API for the same thing which OpenJDK also supports.
Still, if it's in your power to do so, fix the app. If OpenJDK breaks it, chances are, a future Sun JDK will break it, too.
Don't thank God, thank a doctor!
I'm not really sure if this is good or bad. It sounds like it couldn't get much worse. The cloud Java has right now is will it become a language ment only for interfacing with an Oracle system or will it be maintained as a language for things outside of the database world. IBM at least has a stake in it being more then just a lang to interface with one kind of system. That being said they can't be any worse then Sun was since a lot of the new functions in Java 6 and Java 7 came from IBM anyway. Heck just give it to Google since they seem more focused on making things run fast. Oh, Oracle is suing them? Well I guess Java Devs are screwed ether way.
Sure, Not
If Oracle is actively supporting a free open source, implementation of the JDK, how does this affect their case with Google? how do they claim damages for a product that is available for free?
Um, Google created something that couldn't inter-operate with the rest of the Java installations out there. They claimed to be using the Java language, but didn't actually do anything other than use Java syntax and IIRC didn't include the standard libraries. The VM itself couldn't handle the normal class files, nor could the authorized VMs handle the files that the Google version was using.
This wasn't a matter of Google adding things to the language, this was a case of Google deliberately misrepresenting their implementation and harming Oracle's trademark.
I've yet to notice any standard SDK libraries missing from the Android SDK. Even stuff like BigDecimal is there.
Not that Google actually claim that the Android SDK is a Java SDK, of course.
[Opinions mine, not IBM's.]
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
Excuse me, when I go reread the history book on this.
Didn't IBM and Microsoft wrote a chapter together on one OS already? OS2?
What relation does OS2 have with Java?
Excuse me, but reading the history book myself, a bunch of relevant things emerge:
Questions raise, answers kill. Raise questions to stay alive.
Uh yeah. Because writing a desktop PC operating system in the late 1980's and continuing development of an enterprise-class programming environment in 2010 are exactly the same thing.
They claimed to be using the Java language
Actually the main plank of Google's defence is that Android does *not* run Java. The test of whether they succeed or fail is largely whether they can convince the court that Dalvik is *not* a Java VM. And sure enough if you scan the Android SDK you'll find just about nowhere that it says you are programming in Java. It's pretty weird and interesting.
I've yet to notice any standard SDK libraries missing
All of AWT and Swing are missing. That counts for a lot, especially since those APIs extend into a lot of third party libraries that have nothing to do with UI or even graphics (eg: the Rect2D class is commonly used for doing geometry calculations).
I really don't think bodes very well for OpenJDK. Both Oracle and IBM have tons of resources but often don't see eye to eye and aren't above using this and the JCP as a proxy for competitive battling. I see this drowning in politics and little in Java being improved in a timely manner. Meanwhile, things like .Net will accelerate with Microsoft firmly at the helm, and other open source options that are more agile (Ruby on Rails, etc.) and have more benevolent or open-minded stewards will become more popular as well.
I see less and less hope for Java adopting the positive language and library features from the C# and Ruby worlds. I am currently working on a C# project, and things like LINQ, anonymous types, extension methods (haven't used dynamic yet) and the functional/fluent programming styles they enabled enhances my productivity compared to Java.
Sometimes, I feel that Java is destined to become like COBOL, still widely used, but with the language mostly frozen in its current form, some codes with generics and annotations, some without, and with new features eschewed for backwards compatibility with older codes. I could even see codes that have generics taken out to match the Java 1.1 code to be better maintained or understood (that ? wildcard can be tricky to some).
The way I see, IBM is progressing now towards a stewardship role in Java, without bothering with all the SUN's hardware business (which would have been a dead-weight for it)... and this without spending a extra nickel, on top the strong investment in Java IBM already has.
Almost a perfect solution... the only drawback being the Imaginary Property in Java still being owned by Oracle (with known consequences... the minuet and other high society dances Oracle chose to drag Google into).
Questions raise, answers kill. Raise questions to stay alive.
Well, think about it like this - there was one giant slow mega-corporation working on stagnating Java development before.
Now there are TWO mega-corporations known for their agility working on a single piece of software. With strong commitment to committee-centered development.
It walks like a duck, quacks like a duck.. but it's isDuck() returns false, so duck it's not!
- language is _the same_, java
- some APIs are the same: java.*, javax.*... but some packages are excluded
- extended with android.*
- uses different bytecode, still called bytecode (but hey, this is totally different than java!)
- has java bytecode to dalvik bytecode compiler, agan, not java, it's totally different
Do no evil my ass.
That's not gonna hold up if their implementation still falls under the Java patents.
And your point is? JVM can be implemented as register vm code.licenser.net/rvm/trunk/etc/p153-yunhe.pdf
OS2 was much more than "desktop OS". It was what Windows NT only became much later.
I still don't understand how IBM let MS get away with what they did. There's a lot of OS2 know how and architecture in Windows.
Can you explain how not being Java defends them against being sued over patents?
Boffoonery - downloadable Comedy Benefit for Bletchley Park
Last time I checked, the Java platform is the dominant platform for enterprise applications. Unfortunately for OS/2, it never even came close. IBM and Oracle coming together is hopefully a good thing.
You're right, it doesn't help them with patents, but patents are not the only thing Oracle is contesting here. What it does do is it helps them avoid being sued for the same problem Microsoft was (successfully) sued for. If Google claimed Android was real Java then they would be in trouble because Oracle owns the Java trademark and use that ownership to ensure that anybody claiming to run Java must be running "real" Java.
If Google really did implement full Java then they could potentially claim they are covered by Sun's patent grant for JVM implementors - however that seems to depend on passing the compatibility test kit which they don't have access to and which only Oracle can give them access to. So even if they claimed they implemented Java it really wouldn't help, and since they don't it would just get them into a lot of hot water in other areas.
Google's defense against patents is simply that they are not violating them. It will be interesting to see if they are or not - it's entirely possible that Google did in fact work around the patents in their VM. Some of the patents are fairly fundamental in terms of how any VM would be implemented so it seems unlikely they can be completely clear (and neither can any other VM implementation).
Pure troll. The only thing still even remotely slow about java is Swing. Gui-less server-side java is damn near native speed, super fast. I really can't believe after all this time their are still so many misconceptions about Java. Probably just because a bunch of flunky PHP devs can't wrap their heads around real OO and Typing.
Google never claimed to make a Java for Android. You will see no Java in Android, no advertising about Java in Android and nothing similar. What Google did was to build a VM and use the Java syntax for the language.
Google is only guilty of re-using the Java developers and the Java tools like Eclipse. Oracle sued Google over specific technologies in a VM, it doesn't sued over trademark.
http://www.mueller-public.de - My site http://www.anr-institute.com/ - Advanced Natural Research Institute
IBM didn't "let" MSFT get away with anything, IBM shot itself square in the foot with OS/2. You see there was a lot of MSFT AND IBM code in OS/2, and MSFT was happy to let them have OS/2 because they knew they'd shoot themselves in the foot, which they did! They tried tying OS/2 to sales of IBM hardware, which at the time was more crazy priced than high end Macs are today. The public saw they could pay out the ass for slower 'big blue" hardware and OS/2, or pay a hell of a lot less and get cutting edge (remember IBM stuck with 286 for quite awhile after 386 and 486 was out) and Windows was "good enough" especially after Windows 3 came out.
So while I enjoyed OS/2 and thought it was better than Win9x, IBM killed that horse before it ever even got a chance to start the race by trying to tie it into their overpriced hardware. Personally I'm glad as IBM kept trying to go the proprietary route with their hardware (see MCA for an example) and I like the fact that the hardware, at least on the desktop side, is bog standard now. Now if we can only get the same thing to happen with laptops, which are so damned proprietary that often it is cheaper to shitcan than to fix, well then I'd be a happy camper.
As for TFA? I wish them all the luck. There is a hell of a lot of enterprise Java out there, and if they can make it run better I say great.
ACs don't waste your time replying, your posts are never seen by me.
The Microsoft tactic was to embrace, extend, and extinguish Java.
Google wants to use some of the Java stuff, build on it, and adapt it to their own platform.
Do you see the difference? Google isn't trying to kill portable Java, and isn't claiming that Android is a portable Java. Microsoft was pretty much deliberately trying to head off "compile once, run anywhere" by letting people develop what they thought was portable Java, discover it would only work on Windows, and then shrug and avoid other platforms.
There's an important legal distinction, also -- the Microsoft thing is a trademark dispute (they were actually pretending it was Java), while the Google thing is a patent dispute, which would be as if they sued Microsoft for .NET.
Oh, and by the way, I can do portable software in HTML5.
Don't thank God, thank a doctor!
Google is creating the same situation as Microsoft did with their custom HTML standards, once Googles implementation starts being used in other google products, and people start using that instead, it will create all kinds of problems for everyone (non-inter-operating libraries, for example).
LLVM has bytecode too. Completely different bytecode than Java. I suppose that's just java in disguise too though huh?
"linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
Umm... What about the fact that the Android SDK includes compatible implementations of the Java class library, using EXACTLY the same names and APIs? How can you both include core APIs named, for example, java.lang.Object while at the same time claim that it has nothing to do with Java? The Android SDK documentation has specific portions that describe what the specific differences are between it and a full Java implementation.
In the end, though, I believe that none of this has ANY bearing on weither Google is violating Oracle/Sun patents that are used in Java or not. As previously discussed, MS ran afoul of Sun's patents on Java while implementing a different API and VM from scratch. Sun put a huge amount of work into what has become an excellent VM that amazingly rivals the performance of a lot of C/C++ code. It did so by having a whole lot of clever people write a whole lot of clever code. Clever ideas are what patents were intended for. I have no doubt that Google as well as ANY other modern VM implementors have ran afoul of these patents, accidentally or otherwise. Google is a large target with deep pockets, as was Microsoft. It's hardly a surprise that Oracle is grabbing for this revenue stream, even though it appears to be a risky long-term strategic move to arouse Google's wrath.
Incidentally, James Gosling has a very clear opinion on the Google/Oracle patent issue, while having no love of Oracle. His opinion is that Google is unquestionably violating Oracle's patents. You can read that directly here: http://www.basementcoders.com/transcripts/James_Gosling_Transcript.html
As an aside, I still feel that software patents are a bad idea in general.
"BEA Systems (who bought WebLogic - leading J2EE container)..."
There. Fixed that for ya.
In the early days (around '98 or thereabouts) if you wanted to write Java code that talked to an Oracle database you went to download it from Weblogic's website (long before they were acquired by BEA). It wasn't so much the case that Oracle's driver implementations were crap, it was that they just plain didn't exist!
Weblogic had a bloody good app server; sad that they got totally borged and reborged.
New mod option wanted: -1 DrunkenRambling
Waaayyy too late, dude! The bloatware from IBM is already entrenched, and it's called J2EE. After all, they had to something with theat stinking pile of poo called the San Francisco Framework that came out of Taligent...
New mod option wanted: -1 DrunkenRambling
this was a case of Google deliberately misrepresenting their implementation and harming Oracle's trademark.
You mean by not doing crap they were harming Oracle's trademark ? Couldn't agree more...
"Freedom can only be the whole of freedom; a piece of freedom is not freedom." Max Stirner
They newer claimed it had nothing to do with Java. They just newer claimed it was Java.
And you think Microsoft will let that one through?
An unnamed source at IBM informed us that their primary goal with the joint venture was to improve Minecraft's performance
-=[ Who Is John Galt? ]=-
The difference in the context of this discussion is meaningless. The point is there are numerous languages that compile down to bytecodes, doing so doesn't automatically make anything Java.
"linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
Java = yes .Net = no
I'm not a big fan of java, but come on... Java is *everywhere* from a phone in your pocket to the mainframe in the datacenter, including windows, and .Net is nothing but Windows.
Really, it's a no contest/brainer.
Deleted
If you're talking about Web Services which is where things like Java and .NET are growing, the only thing which has to be Windows is the server you're hosting the application on, and .NET is sufficiently nicer for that to be a tradeoff you consider. Relying on any third party plugin to be present on your client's PC is really rather risky in this day and age anyway.