Slashdot Mirror


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."

40 of 160 comments (clear)

  1. Now maybe we can get a decent JDK with yum by antifoidulus · · Score: 2, Interesting

    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.

    1. Re:Now maybe we can get a decent JDK with yum by CynicTheHedgehog · · Score: 2, Interesting

      Not trying to be facetious, but this is the #1 reason I'm using Ubuntu instead of FC or OpenSUSE. (Not just Java specifically, but Java, restricted codecs, Flash, etc.) It also updates all of the relevant alternatives for me, as part of the package install, which is also very nice.

    2. Re:Now maybe we can get a decent JDK with yum by Bill,+Shooter+of+Bul · · Score: 3, Informative

      openjdk is in FC's yum repositories. It seems to be decent enough for my uses ( and red hats).

      Its passed the certification test for Java .

      What else, besides your companies policies, would have to change for you to consider it a drop in replacement for the official JDK that is available in mainstream yum repositories?

      --
      Well.. maybe. Or Maybe not. But Definitely not sort of.
  2. And Nothing(?) Was Gained by mpapet · · Score: 2, Interesting

    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
    1. Re:And Nothing(?) Was Gained by TheSunborn · · Score: 2, Informative

      Oracle have so much existing software written in Java that they kinda need to keep Java alive.

    2. Re:And Nothing(?) Was Gained by SanityInAnarchy · · Score: 4, Insightful

      I don't see the economic incentive for Oracle to keep this project,

      Maybe because Oracle, being enterprise-y, has an absurd number of applications which run on Java? Improving Java performance means nearly all Oracle applications run faster. Making Java more flexible as a language and as a VM means they have more powerful tools and better techniques going forward, which they can use for developing things which plug directly into all that legacy Java code they've got.

      And while Oracle certainly has the rights to close as much of it as they like, hopefully even they realize it's in their best interests to collaborate with the community (including IBM), rather than trying to go it alone.

      I'm guessing the bulk of the Dev work is transitioning to IBM.

      And why do you think IBM has a better incentive than Oracle?

      --
      Don't thank God, thank a doctor!
    3. Re:And Nothing(?) Was Gained by Kenneth+Stephen · · Score: 2, Interesting

      This is an uneasy truce where two competitors agree to not put pressure on the swords that they have at each others throats. Oracle invested considerably in Sun, and knows that the biggest asset that Sun brings to the table is their Java related people and knowledge-base (and not Sun's proprietary hardware). Java is incredible valuable to Oracle since they have also bought up BEA Systems (who produced WebLogic - leading J2EE container) and are using this acquisition to position them as a vendor that can do everything and anything in software space (like IBM). IBM can jeopardize this by splintering the Java brand and developing OpenJDK further. Conversely, IBM doesn't want Oracle to spike its Java food pool with Oracle poison, and sees this initiative as a way to not expend resources on an all-out war with Oracle. If anything, IBM is much more invested in Java, and stands to lose a lot more with Java splintering.

      Of course, both these companies don't want the open source world to take Java away from them either. This is also a "both of us against the rest of the world" posture, which seems to smack of anti-competitive behavior.

      --

      There is no such thing as luck. Luck is nothing but an absence of bad luck.

    4. Re:And Nothing(?) Was Gained by CynicTheHedgehog · · Score: 5, Insightful

      This is some of what Java has going for it:

        1. Massive standard class library covering everything from smartphones to distributed application servers
        2. Huge amounts of third-party support. If you can think of it, someone somewhere has written a library for it, and chances are it's open source
        3. The best IDEs in existence. NetBeans, Eclipse, IntelliJ, etc. all come with built in support for unit testing, dependency management, source control (mercurial, SVN, git, you name it), profiling, local and remote debugging, etc.
        4. Agent support for instrumentation and runtime redeployment. Using tools like JRebel I can edit code in my IDE and see the results instantly in the application server, and *still* take advantage of strong typing, etc.
        5. Object-Relation-Management (ORM). Tools like TopLink and Hibernate mean that you can reverse engineer a class model from a DB, or generate a DB from a class model, and use the ORM API to effortlessly add optimistic locking, transaction management, and object based queries to your app
        6. Application servers support distributed transaction management (XA) and messaging (JMS) on top of a generalize connection management framework (JCA) in which any vendor can provide a standard connector (resource adapter) to their systems and participate in global two-phase transactions
        7. Open driver support for virtually every data store; lots of choices for embedded in-memory SQL/RDBMS databases
        8. Container-based pooling, caching, and transaction management
        9. Dependency management and build systems like Ant, Maven, Hudson, and Sonar that enable you to very easily configure scheduled builds with static code analysis, automated unit tests, and concise reports of errors with references to changesets included in the build
        10. Perhaps the largest collection of forums, blogs, and online documentation for any platform
        11. Strong typing, API contracts, and runtime introspection identify issues at compile/deploy time, rather than runtime
        12. Strong industry support from multiple vendors (Google, Oracle, IBM, RedHat, etc.)

      So, if you're writing a little GTK widget for managing your MP3 collection, maybe Java isn't for you. But if you are a medium-to-large business chances are you either develop or administer an enterprise-scale Java application.

      Another thing to consider is that the vast majority of Java tools and libraries are open source, and many of the specifications are formed once an open source toolset reaches a certain level of maturity/popularity. For example, Hibernate did most of the legwork for JPA; JSF was initiated largely due to the success of Struts; and WebBeans is a formal spec defining the basics what Seam provides. So all Oracle really has to do is keep the JCP going and publish the standards while RedHat (JBoss), IBM, the Glassfish development team, and everyone else provides the implementations. Oracle stays competitive with IBM and RedHat by offering a development stack (based on Oracle DB, Oracle AS, Oracle JDeveloper, etc. all of which use Java) *and* continues to collect licensing fees from the other players. Plus they have a little more say in the JCP process, which gives them a slight advantage when ratifying new APIs.

      Not to mention that Java is installed in over 2.6 billion handheld devices, each of which pays a royalty fee to Oracle.

      What surprises me is that Oracle is partnering with IBM on this venture. I wonder what IBM has on Oracle?

    5. Re:And Nothing(?) Was Gained by gtall · · Score: 2, Interesting

      "I wonder what IBM has on Oracle?" Business respectability. No one in their right mind trusts Oracle further than they can spit a two-headed rat. IBM is similar. However, if you have two two-headed rats, you, as a PHB, can buttress your choice of Java + Database + business application software as being dual sourced. Without IBM, its Oracle and their dumb lawsuit against Google. Few organizations would attempt what Google has done with using the language but not the infrastructure. But yer basic PHB won't see that, they'll see Java + lawsuit. Oracle's lawyers convinced the idiots at Oracle, errr....Uncle Larry...that Beeelllions can be made by knackering Google or that Google, left to its own devices, might find a way to supplant Oracle's DBs with Cloudiness. Put yourself in Uncle Larry's position. You see the world in us vs. them. The bigger the Them, the bigger the threat because they might just find a way to stick in a pin in your revenues and suck them dry. Yeah, I know, it isn't a particularly nuanced view, but then Uncle Larry didn't get Oracle to be in the position it is in by being nuanced.

      So about now, Oracle realized they've probably screwed the pooch deep enough and are attempting to pull it out a bit...just for aesthetic purposes.

    6. Re:And Nothing(?) Was Gained by Eskarel · · Score: 3, Insightful

      Because if Java fails, .NET takes over, and .NET integrates a lot smoother with MS SQL than with Oracle(not that you can't access Oracle, just that the built in frameworks are all based on SQL). MS SQL is essentially the number one threat to Oracle's business in the short term, since for the vast majority of cases it's a perfectly viable solution, generally costs less(presuming you already have any MS products in your organization), and to be honest, Microsoft are a lot nicer to deal with than Oracle.

      IBM and Oracle both desperately need Java to survive, that's half the reason that Oracle bought Sun in the first place.

    7. Re:And Nothing(?) Was Gained by Rexdude · · Score: 3, Informative

      And why do you think IBM has a better incentive than Oracle?

      Disclaimer: I work for IBM's Java Technology Center.
      Because IBM also uses Java as the core component of all its software brands - Rational,Lotus,Websphere,Tivoli - all of them run on IBM's Java. Also IBM provides JDKs for its own platforms (AIX, z/OS and Linux on System p/z) to support the same brands. Essentially,Java is crucial to allow modern enterprise applications to run on mainframes and legacy OSes like System p/z without having to code native applications for them, and which can benefit from the traditional stability and processing power of large mainframes.

      --
      "..One hosts to look them up, one DNS to find them, and in the darkness BIND them."
  3. Re:Here's a question ... by Mongoose+Disciple · · Score: 4, Funny

    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.

  4. So will they stop suing Google? by SanityInAnarchy · · Score: 2

    No? Then I don't know that I care.

    --
    Don't thank God, thank a doctor!
    1. Re:So will they stop suing Google? by jernejk · · Score: 3, Interesting

      Do you remember when MS had their own JVM and then started adding "extensions" to java? Yeah, that was bad. It was MS's embrace, extend, extinguish strategy. Id bound whatever you implemented on MS's java to Windows platform. Which is exactly the opposite of what java is all about. And yes, Sun sued them and MS discontinued it's own java and tarted .Net. Sun was considered to be the good guy and MS the bad guy.

      Now please explain to me how Google, doing exactly the same as MS did, is now the good guy?

    2. Re:So will they stop suing Google? by Anonymous Coward · · Score: 3, Informative

      Because Microsoft called it Java, and Google doesn't?

    3. Re:So will they stop suing Google? by Joehonkie · · Score: 2, Informative

      Only if you please explain how Davlik (which does not claim to be Java, although that is the language it uses) is "doing exactly the same thing?" especially since their complaint is that is has LESS features than normal Java, rather than more. I have never seen Google make any claims of 100% cross-compatibility between Davlik and Java.

    4. Re:So will they stop suing Google? by TheSunborn · · Score: 2, Informative

      Google is not doing exactly the same thing.

      The big difference is that Microsoft and Sun made an contract where Microsoft were given a license to use suns source code to suns java implementation, in order to optimize it for Windows. Provided that their implementation were a full and exact implementation of Java.

      What Google have done is made an independent implementation of the java language* and part of the class library which Sun ship java. It would be the same thing if they had choosen c# instead and then made a (partial) implementation of that.

      They might have used Perl,C++,C# or any other language. But they used Java. And the funny thing is that if Google for example had used a Perl instead of java they would most likely still have violated** the same patents as they do now.

      *But they may not call it Java, and sun fucked up the naming by calling the language, the library the vm for Java. Different names for different things, please.

      **I don't know if the current implementation google uses does violate any patents, but if it does then an implementation using Perl would most likely have violated the same patents, because they are general vm patents which are not java specific.

    5. Re:So will they stop suing Google? by Anonymous Coward · · Score: 2, Insightful

      Please turn in your programmer card. You've fallen for the deception that a language specification is the same thing as an execution environment, aka virtual machine, or -- even worse! -- an entire software platform. How did you become confused? Because common practice is to use Java as a cover-all term to mean Java the language, Java the JVM, and Java the platform. A programming language defines semantics, NOT the governing machine. A standard can include library details, but that is NOT the same as the core language itself.

      Android uses Java the language, the Android libraries (a DERIVATIVE of the Java libraries), the Dalvik virtual machine, which together form the Android platform. Why are the libraries derivative? Because they are based on the Java class libraries, not in completeness, and the behavior of the identical libraries are not guaranteed to be the same.

      Copying standard library specifications is not something new in the programming world. Look at D, which blatantly copies the C++ standard library. Why did D authors make that choice? Because the SC++L cannot feasibly be topped by recreating it; only by extending and improving on it can it be bettered. The Java class libraries were taken by Google because they are familiar to many thousands of programmers across the world, and because they have a long history of reliability and general design quality.

      A simple example may help to dispel the confusion. Let's build a compiler. I want to base it on C#. The goal is to produce bytecode that runs on my proprietary VM. Technically, we could make it produce Python/Java bytecode, or (perhaps) native binaries even. After I'm done, the syntax it compiles is exact and conforming to C#, and even behaves the same way. I might take a few .NET libraries and reimplement them to work with my compiler. Not all of .NET though; it's simply too large. The compiler successfully compiles pure C# code, and a varying amount of .NET-using C# code. See the resemblance to Dalvik? My compiler and VM are not .NET-based, and have zip to do with the CLR. It's a 100%-valid C# compiler, but is unrelated to .NET.

      Why is the above example easier to understand? Because Microsoft didn't name all its technologies the same: C# was never dubbed "the .NET programming language."

  5. It's a trap by wonkavader · · Score: 2, Insightful

    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.

    1. Re:It's a trap by DragonWriter · · Score: 4, Informative

      Not sure how, but it must be. OpenJDK is something Oracle doesn't make money on, as far as I can tell.

      Oracle makes money selling software that uses Java.

      People working on improving Java without Oracle having to pay them is, therefore, in Oracle's interest.

  6. What's wrong with OpenJDK? by SanityInAnarchy · · Score: 3, Informative

    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!
  7. Re:Here's a question ... by MrEricSir · · Score: 2, Funny

    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."
  8. Re:Oracle, OpenJDK?? Yeah Right. by metamatic · · Score: 2, Informative

    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
  9. Re:Oracle, OpenJDK?? Yeah Right. by zuperduperman · · Score: 5, Interesting

    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.

  10. Re:Oracle, OpenJDK?? Yeah Right. by zuperduperman · · Score: 2, Informative

    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).

  11. It's about bloody time... by c0lo · · Score: 4, Interesting
    And a good move, too... At a certain time, people wondered why IBM let the SUN be bought by Oracle: it would have been a more natural choice given that IBM is so much into Java.

    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.
  12. Well, think about it like this... by Cyberax · · Score: 2, Funny

    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.

  13. Re:What does this mean for Android? by Eil · · Score: 4, Informative

    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.

  14. Re:Here's a question ... by TopSpin · · Score: 5, Informative

    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
  15. Re:Too many cooks in the kitchen... by SplashMyBandit · · Score: 3, Informative

    > I really don't think bodes very well for OpenJDK.

    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. .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?).

    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, .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).

  16. Re:Here's a question ... by Lunix+Nutcase · · Score: 4, Insightful

    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?

  17. Re:Oracle, OpenJDK?? Yeah Right. by Lunix+Nutcase · · Score: 2, Insightful

    That's not gonna hold up if their implementation still falls under the Java patents.

  18. Re:What does this mean for Android? by KarmaMB84 · · Score: 2, Interesting

    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.

  19. Re:Oracle, OpenJDK?? Yeah Right. by devent · · Score: 2, Informative

    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
  20. Re:Oracle, OpenJDK?? Yeah Right. by HelloKitty2 · · Score: 2, Insightful

    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).

  21. Re:Oracle, OpenJDK?? Yeah Right. by Sir_Lewk · · Score: 2, Insightful

    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)
  22. Re:Here's a question ... by vux984 · · Score: 3, Insightful

    Well yeah, but it won't be cool to talk about it.

  23. Re:Not the same at all. by sourcerror · · Score: 2, Insightful

    "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.

  24. Re:Here's a question ... by TheRaven64 · · Score: 2, Insightful

    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
  25. Re:Here's a question ... by TheRaven64 · · Score: 2, Insightful
    Please stop repeating this nonsense. It uses a language which has:
    • Java syntax.
    • Java semantics.
    • A load of standard classes in the java.* namespace.
    • A different VM for execution.

    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