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."
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
I'm sure this IBM-Oracle teamup will produce an amazing result with the reliability of LotusNotes and the developer friendliness of an Oracle database tool.
It'll also have... well, crap. You're going to get sued if you use it no matter which parent is dominant there.
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!
Java is the new Caldera Linux; buy it and you'll end up being sued by the very same people who sold it to you.
There's no -1 for "I don't get it."
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
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).
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.
The complaint with Google was that Google was infringing on Oracle's patents and copyrights via Android. Google's official and legal response was along the lines of, "WTF are you talking about?"
My own theory is that Sun (and now Oracle) liked the profits they were receiving via licensing royalties from mobile phones that shipped with an embedded Java environment. Google did an end-run around these royalties by developing their own third-party JVM, Dalvik. When it looked like Android would gain a decent foothold in the smart phone market, Oracle probably thought they needed to do something. Maybe they have this opinion that they "own" all parts of Java.
(My understanding is that Dalvik and Java(tm) are completely different, except that the human-readable source code for both happens to be the Java programming language. A programming language itself, so far as I know, cannot be copyrighted. Patented, maybe, but you would have a tremendously difficult time trying to find any feature of a "modern" language that doesn't have decades of prior art.)
As for OpenJDK, Oracle appears to be the copyright holder of the source code and are entitled to any Java copyrights or patents applicable to it. Whether they give it away for free or charge for it doesn't matter.
Can somebody more familiar with Java and the overall Java scene clue us in as to whether this is a good thing?
These joint announcements would appear to break the log jam that has prevailed over Java for the last few years. Sun simply didn't scale to open projects and gradually found itself at odds with the JCP on many fronts. Oracle and IBM have now slated specific items from the JCP backlog for future OpenJDK implementations, implicitly anointing both the JCP and the (open source) OpenJDK as the official future of Java. That is the closest thing to a 'plan' that has appeared in the Java world in about four years.
The Oracle vs. Google thing is very troubling. Google made Java work in a huge way on Android. Networked, mobile, embedded stuff was use case for which Java was originally intended. Java badly needs to inculcate that success. Otherwise it will assume the role its detractors have often accused of it; the COBOL of our day.
Lurking at the bottom of the gravity well, getting old
> I really don't think bodes very well for OpenJDK.
.NET rapid feature adoption is deliberate because Microsoft need to continually add features to Visual Studio to ensure you buy each release (which unfortunately can prematurely obsolete your investment in existing code - which is one reason enteprises don't always pick .NET - can you see how rapid feature adoption might be good for the desktop but as a result would be bad in the enterprise?).
.NET is designed to be great to build your desktop apps and moderate-scale webapps in, and Java is designed to run your bank and Internet-scale services (millions of simultaneous users). Simply different horses for courses with different advantages. It is not like the JDK team and Java users don't see some of the new stuff in .NET, but it turns out that what is good for .NET would not be good for the stuff developed in the Java space (although .NET devs don't always grok that).
Huh? How do you get that. Now you have the resources of *two* giants working on Java and ensuring it remains compatible and new features are added.
> 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.
Java users for large-scale projects doesn't generally don't want to adopt these things. They have massive existing investments and projects that take years to complete (due ot the sheer number of featiures being built). They can't throw that away every two years for the next coolest version of Visual Studio with new things in it. Enterprise software architecture is a different beast and has strategic considerations that don't correspond to tactical niceities (eg. LINQ). A lot of the Java feature conservatism is deliberate because you can get people with less experience to be *productive* in Java earlier.
The deliberate simplicity of Java means you can do *massive* projects with it (where you get a spectrum of developer abilities and the time scale is long where the people who start the project may not be around at the end). When you start to use more obscure features you limit how big your project can get, since not everyone will use the feature in the same way or be bug-free with it. I'm sure those C# features are nice, but it turns out Java already has a vast array of alternatives (some see this as an advantage, some as a disadvantage) and the features you speak of are significant for small projects but aren't a significant part of the code-base for *massive* projects.
In short,
Otherwise it will assume the role its detractors have often accused of it; the COBOL of our day.
So it will be wildly successful with billions of lines of code still in use powering a ton of the infrastructure that modern-day business relies on?
That's not gonna hold up if their implementation still falls under the Java patents.
The patents are for the inner workins of a VM for Java like programs. They apply to the JVM (obviously), MS CLR (which is probably more or less their old JVM with modified instruction set) and probably Dalvik. Oracle probably had the analysis done long before they launched their lawsuit. I think Google will have to go for the jugular and get the patents completely thrown out if they want to avoid having to pay the same kind of money Microsoft pays for .NET.
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
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)
Well yeah, but it won't be cool to talk about it.
"while the Google thing is a patent dispute, which would be as if they sued Microsoft for .NET."
They sued .NET for excactly the same reasons: VM patents.
Yup, and most of it will be written by people who have a lot of knowledge of the problem domain and a tiny bit of knowledge of programming, making the code very hard to maintain. It will then be used for about 20 years longer than the original designers expected.
I've likened Java to COBOL before. It's not a criticism, just a point that they both fill the same niche. Java was created as a language for average programmers (that was a stated design goal) and it's succeeded in this - people with little knowledge can write (often horrible) code that works in Java. And code that works is far more valuable to most businesses than elegant code that doesn't work.
I am TheRaven on Soylent News
Saying it's not Java is like saying gcj is not Java because it compiles Java code to native code rather than to JVM bytecode.
I am TheRaven on Soylent News