back to article Was Android moving to OpenJDK really a Google gift to devs?

While you were starting to think Christmas thoughts in November, Google quietly slipped out a pre-seasonal gift of its own: OpenJDK for Android N – the next edition of its smartphone operating system. Christmas is a time of surprises and Google's quiet move lived up to that spirit, because it was a profound change to its …

  1. Anonymous Coward
    WTF?

    Still doesn't address the stupid issue of copyrightable API's which the EU has rightly poopooed. If Google doesn't win on this it's a disaster for the software world, especially small to medium devs.

    1. Anonymous Coward
      Anonymous Coward

      In technology terms, it's moving from the sewer to the cesspit. Java is such a crappy, insecure and poorly performing solution.

      1. Anonymous Coward
        Thumb Down

        In technology terms, it's moving from the sewer to the cesspit. Java is such a crappy, insecure and poorly performing solution.

        My point was not specific to Java as copyrightable APIs puts lots of other projects at risk. If you want to rant about Java please go and create your own post rather than shamelessly latching onto mine.

        1. Anonymous Coward
          Anonymous Coward

          Java is a steaming turd.

          "please go and create your own post"

          I did.

          "rather than shamelessly latching onto mine."

          I didn't quote your post, didn't even read it before I posted and have no interest in the license. That Java is a crappy product is entirely relevant to the article.

          If you don't like it that others can post on the same thread then tough.

          1. Anonymous Coward
            Anonymous Coward

            Re: Java is a steaming turd.

            Quote: "I didn't quote your post,..."

            Irrelevant, the fact that you chose to Reply rather create a new thread implies your comment is in direct response to an earlier post.

            If you were not replying, then don't use the Reply button.

            If you do use the Reply button, then expect people to assume your post was a response to the earlier post.

            Try learning how forums work, you might find it useful in the future, there are quite a lot of them on the Internet!

            PS: I'm not the same AC as above.

            1. Anonymous Coward
              Anonymous Coward

              Re: Java is a steaming turd.

              Is this a case of irony? A commenter lambasting the idiocy of copyrightable API's then turning on someone else and lambasting them for "leeching"! That's the GNU way after all.

              I love you elReg commentards, don't ever change you contrary bastards.

              1. Anonymous Coward
                Anonymous Coward

                Re: Java is a steaming turd.

                STOP ambushing this thread!! Grumble grumble....

                ;-)

                1. jelabarre59

                  Re: Java is a steaming turd.

                  > STOP ambushing this thread!! Grumble grumble....

                  And GET OFF MY LAWN!

                  1. PatrickEB

                    Re: Java is a steaming turd.

                    It's not YOUR lawn, it MY lawn!

                    GITURFMYLURN!!!

              2. Anonymous Coward
                Facepalm

                Re: Java is a steaming turd.

                Original AC here:

                Is this a case of irony? A commenter lambasting the idiocy of copyrightable API's then turning on someone else and lambasting them for "leeching"! That's the GNU way after all.

                Erm in a word no as your GNU paranoia distorts your thinking. Castigating someone for changing the subject and leeching are semantically different entirely; I wasn't discussing the technical merits of Java nor intended to.

            2. Anonymous Coward
              Anonymous Coward

              Re: Java is a steaming turd.

              "you chose to Reply rather create a new thread "

              I can't see how the average punter would know, or why they would care. Both posts have no title set.

              "If you do use the Reply button, then expect people to assume your post was a response to the earlier post."

              Except when it clearly isn't like the above.

              "Try learning how forums work"

              How they work is that anyone can post anywhere, and in anyway they like regardless of what you tell them to do.

      2. Anonymous Coward
        Anonymous Coward

        Microsoft and C# are the cesspool of waste

        Are you sure you weren't talking about Windows? You know - that cesspool of viruses, malware and ransomware? Or how about that cesspool of a language C# that has only 4% adoption making it the windows phone of languages? Java is the #1 language according to the TIOBE index and it rules the enterprise space. No wonder a frightened and scared Microsoft had to open source everything in their last ditch effort to compete. But, they'll fail just like all of their other failures.

        1. Anonymous Coward
          Anonymous Coward

          Re: Microsoft and C# are the cesspool of waste

          "Or how about that cesspool of a language C# that has only 4% adoption making it the windows phone of languages?"

          .Net on the other hand (which C# runs under) is by far the most widely used development language framework.

    2. a_yank_lurker

      Actually this might hurt Leisure Suit Larry and his minions. OpenJDK, if the code is compatible with the JVM, will likely use the same APIs as regular Java. This undercuts one of the Oracle's arguments because Google can show the same APIs are already open source.

    3. John Brown (no body) Silver badge
      Happy

      To the USPTO from General Melchett

      "Still doesn't address the stupid issue of copyrightable API's which the EU has rightly poopooed."

      "You know, if there's one thing I've learnt from being in the Army, it's never ignore a pooh-pooh. I knew a Major, who got pooh-poohed, made the mistake of ignoring the pooh-pooh. He pooh-poohed it! Fatal error! 'Cos it turned out all along that the soldier who pooh-poohed him had been pooh-poohing a lot of other officers who pooh-poohed their pooh-poohs. In the end, we had to disband the regiment. Morale totally destroyed... by pooh-pooh!"

  2. Anonymous Coward
    Anonymous Coward

    What a fucking mess!

    I look at the shitfest that is Oracle vs Google and the complete fuck up that the US copyright law created.

    Whilst I have no love for Google, my loathing for Oracle knows no bounds. Anybody who buys Oracle products, who relies on Oracle products, who even looks at the oracle website needs a good kicking so they understand how Oracle works. On past behaviour it is likely that Oracle will deliver that kicking to the customer themselves and no doubt charge them for it.

    Thankfully I no longer need or use Oracle products, I can also let Larry know that I was responsible for depriving Oracle of a few million pounds of sales as I stopped a procurement going forward and moved our system to Postgres. Fortunately we didn't need some of Oracles very high priced extensions that may or may not work depending on the hardware revision level of the Ethernet card on the disk array which combined with the phase of the moon and which colour socks the DB admin was wearing that day.

    Every time I came into contact with Oracle I had to count my fingers and check they were all there.

    The sooner Larry does a Maxwell from his yacht the better.

    1. PlinkerTind

      Re: What a fucking mess!

      We all agree that Oracle products cost money, but Oracle products are mostly for large demanding customers that loose more money on going for an inferior alternative, than going for the best. For instance, Oracle Database is the best, the SPARC M7 is up to 10x faster than x86 or POWER8 on database workloads, and on many server workloads it is 2-3x faster:

      https://blogs.oracle.com/BestPerf/

      OTOH, IBM charges much much more for their high end POWER8 gear than Oracle, while being much slower. My point is that if you look at what you get for the Oracle price, it can be worth the price for customers with the largest demands. In that area, there are no competition and Oracle is the best. Show us one single benchmark where SPARC M7 is not the best. Likewise for the Oracle Database.

      1. Mikel

        Re: What a fucking mess!

        >We all agree that Oracle products cost money

        I feel it important to note here that Oracle didn't create Java. Sun did. Sun went bankrupt and Oracle acquired its stuff, including Java. Oracle doesn't actually have the vision or drive to invent anything new. They are all about extracting the maximum profit from old things.

    2. TheVogon

      Re: What a fucking mess!

      "Anybody who buys Oracle products, who relies on Oracle products, who even looks at the oracle website needs a good kicking so they understand how Oracle works"

      +1 from me. You would need to be insane to use them on a greenfield site these days.

      "depriving Oracle of a few million pounds of sales as I stopped a procurement going forward and moved our system to Postgres"

      Similar for myself and many peers but it's far more commonly moving to MS SQL Server in my experience. We need an enterprise ready and fully featured product we could run all our databases on as a clustered utility model and have support from the majority of our application providers and Postgres isn't even close to qualifying. Presumably it works for you with a single specific requirement though.

      1. Anonymous Coward
        Anonymous Coward

        Re: What a fucking mess!

        "We need an enterprise ready and fully featured product we could run all our databases on as a clustered utility model..."

        Then Postgres does quite fine as well. Was that a thinly-veiled advertisement for MS or something?

        1. Anonymous Coward
          Anonymous Coward

          Re: What a fucking mess!

          "Then Postgres does quite fine as well."

          You missed the most important bit - about supported by our application vendors. I can't name a single one of our top 100 DB using applications that's supported on Postgres as an option.

          Postgres isn't close to SQL Server for "fully featured" functionality either.

          See also Microsoft's position on http://www.intersystems.com/our-products/cache/intersystems-recognized-leader-gartner-magic-quadrant-operational-dbms/

    3. jelabarre59

      Re: What a fucking mess!

      The only reason I ever considered working for Oracle was because they were a significant competitor to IBM, and I was quite happy with the idea if helping ANYONE in the job of kicking IBM's ass.

  3. Paul Shirley

    oracle constrained by the GPL

    Openjdk may not be quite so easy for Oracle to exploit because they're bound by the gpl on any external contributions. Without reimplementing everything themselves and somehow convincing the rest of the contributers to accept that, they can't simply force new licence terms without forking Java.

    Any oem breaking the classpath licence deserves to be sued anyway but oracle probably have little scope to 'manufacture' infractions. Won't stop them trying. We're still pretty reliant on the courts deciding the fair use defence favourably and finally killing oracles case along with any future attacks they would inevitably make.

    1. wikkity

      Re: oracle constrained by the GPL

      Not really sure what you are getting at.

      However, Oracle are free to do do what they want with openjdk apart from revoke the GPL license.

      They own it and can license it under a different license at the same time to themselves or anyone else. They already do this with their own java distribution, an openjdk build is not the same as oracle's distribution, if they want to add non-gpl code to their build they are not obligated under the GLP to open source the extras. If you GPL some code you are allowing anyone to use it under the GPL, you however can do what you want with it, there are plenty of examples out there.

      1. Paul Shirley

        Re: oracle constrained by the GPL

        The point is they can only dual licence the parts they own copyright to and they cannot revoke gpl licencing except for individual cases of infringing the gpl.

  4. Anonymous Coward
    Anonymous Coward

    Google could have avoided Java wholly...

    ... but of course it would have had to invest much more money on a mobile-data-ripping-OS instead of taking advantage of somewhere else work. Same for Harmony, now that nobody develops it Google has no will to invest to develop it itself. Google deserves all the troubles for having used Java.

    1. Anonymous Coward
      Anonymous Coward

      Re: Google could have avoided Java wholly...

      Gary Kildall had the same argument.

    2. JLV

      Re: Google could have avoided Java wholly...

      First, language, not OS.

      Second, the spiel (not the reality) around Java has always been about standards and open-ness. I don't think it was unreasonable from Google not to invent another language, nor the OS, in its mobile venture.

      Thing is, calling J2ME a useless steaming turd is an insult to turds and Oracle got miffed that someone else got Java on mobile better. And probably also thought they could grab some $$$. This is all a result of Sun and Oracle's openness/control schizoism wrt their "open" language. Which has been going on since forever (remember the Java cert/compatibility tests being non-free to keep control of the "free" language).

      Now we have some nitwit judge granting IP protection to APIs.

      Oracle should have embraced Android as finally making Java relevant on mobile instead of this lawyer-enriching mess. If SUN had been better at making money off Java, and their other software, there'd be less incentive now for these shenanigans (and maybe they'd still be around).

  5. DrXym

    From a developer perspective

    It's probably a good thing since it means being able to use Java 7 & 8 enhancements and APIs from Android code. The Harmony code base was excellent and a clean implementation of the Java APIs as they existed at the time but they haven't kept pace with the language.

    Personally I consider it outrageous that Oracle has any legal leg to stand over an API. I also wish Google would start offering some other high level, performant language than Java for application development, preferably non proprietary and cross-platform.

    1. Nathan 6

      Re: From a developer perspective

      What other language would they use? Ruby? Scala (Oh that run on JVM)? Javascript/HTML (tried and failed x3). C# (and have to deal with MS)? So again, what other mythical language should Google use?

      Well maybe they should invent a new language that just like Java, but not Java, just to avoid potential paying Oracle? Am I am sure that would cost even more.

      1. Ogi

        Re: From a developer perspective

        Maybe they could have done as Nokia did with the n900, and let the developer use any language they wanted?

        the N900 had bindings/libraries for perl/java/python/ruby/C/C++ and possibly others, all the apps looked the same UI wise, and acted the same, just written in whichever language the developer felt was most suitable.

        You could even compile standard Linux software without modification on it. Sure it didn't follow the look and feel of proper apps, but the fact you could do it all and have something usable on the phone was impressive to me.

        (Used to write apps for the N900/Maemo, never went into Android app dev due to being forced to use one language, and one I was not particularly keen on. Also I felt Android to be a generational leap backward in mobile OSes)

        1. phil dude
          Coat

          Re: From a developer perspective

          As logical as that may sound, it doesn't promote vendor lock-in, and therefore will never happen.

          P.

        2. joeldillon

          Re: From a developer perspective

          Good news! You can write apps for Android in nice, sensible C++ with Qt :)

          1. DrXym

            Re: From a developer perspective

            "Good news! You can write apps for Android in nice, sensible C++ with Qt :)"

            Yes but you don't get the bindings. Even Google says don't use the NDK unless you have to. For starters you have to build a different shared lib for every architecture you wish to target - ARMv6, v7, Intel, MIPS etc. Throw in the weight of QT, icu etc and that's a lot of bloat and a lot of building.

            C++ development would be far more enticing if the NDK compiled to architecture neutral LLVM bitcode and had proper bindings.

      2. DrXym

        Re: From a developer perspective

        "What other language would they use? Ruby? Scala (Oh that run on JVM)? Javascript/HTML (tried and failed x3). C# (and have to deal with MS)? So again, what other mythical language should Google use?"

        Any language they damn well please is the answer. There are an embarrassment of modern languages that could serve their purpose, some of which they developed in-house. Swift, Dart, Go, Rust, Python, Ruby, Typescript etc. would all be viable languages.

        All it requires is formal adoption and bindings that provide the same functionality as exposed by their Java APIs. If Google wanted to win developer goodwill they would also ensure decent cross platform support and address the weaknesses of writing apps in Java.

        I should also point out that there are android apps written all the languages you talk of, including C# (e.g Unity) so I have no idea why dismissive of the idea.

        "Well maybe they should invent a new language that just like Java, but not Java, just to avoid potential paying Oracle? Am I am sure that would cost even more."

        I don't see why you make that assumption or why you assume a language has to be like Java but not Java.

    2. a_yank_lurker

      Re: From a developer perspective

      I wonder if Leisure Suit Larry and his minions are have problems maintaining their margins. Oracle is not the only relational database on the market and there are alternative NoSQL databases available for specific applications. Given that most who have dealt with LSL and Slurp despise LSL's minions more than Slurp is a sad commentary.

  6. jillesvangurp

    The premise of this article is that Oracle gained some level of control over Android. This is nonsense and it is based on a poor understanding of what really happened. 1) Google forked Harmony long time ago and it turned into Android. Harmony was a drop in replacement for Sun's java 5. OpenJdk is a drop in replacement for Google's Harmony fork 2) Oracle has an ongoing legal case against a limited set of Harmony related APIs. 3) Google just replaced these APIs with perfectly legal forks of OpenJDK. This means that this case is now about no longer shipping versions of Android. Still valid but Oracle will likely settle out of court eventually; if Oracle actually manages to make its legal case enough to ever get there. At this point Oracle is probably pissed off and angry; but who cares. Google is likely in no mood to give them anything for free. Their future product line is secured and disentangled from Oracle's looming legal case.

    The GPL license does not prohibit Google forking openjdk (rather the opposite) neither does it put Google under any obligation to take over any upstream changes from IBM, Oracle and others. So they have no direct influence over Android. Nor does it obligate Google to actively contribute back to the OpenJDK project. It merely obligates them to provide modified source code under the same license that it was licensed to them, which they have been doing with Harmony as well. So the only thing that changed is that Google forked OpenJDK instead of Harmony.

    They may choose to grab some recent goodies in openjdk, and they are probably considering to join the openjdk project properly to further their own agenda there. However, the success of Android is largely based on Google ignoring Sun's JCP and its J2ME cluster fuck and doing their own thing while the rest of the mobile industry was stuck in design by committee limbo. I seriously doubt this will change anything.

    1. Charlie Clark Silver badge
      Thumb Up

      Great comment. The article is largely FUD.

      Anyway, isn't Google moving more and more away from Java to native code? It can easily afford to sit out the court case with Oracle, pay any damages in the unlikely result that is found against it, and carry on regardless. Oracle needs people wanting to work with Java more than Google needs any particular programming language.

      1. a_yank_lurker

        The newer languages have one weakness, limited number of developers that know them. Also, some of the languages were not ready at the time Google was developing Android; about 10 years ago. Java was a well known language (still is) and available. Thus, using Java makes sense in context of the time. And lots of developers and readily available allows for a quick roll out of apps.

        Also, as noted, the language used for Android development is particularly important to Google. Google is getting money other ways, not from the language itself. But Oracle needs people to use Java for them to make money from it.

      2. Kevin McMurtrie Silver badge

        I still see a lot of Java in the AOSP projects. With a proper JIT (not Google's), the memory to performance ratio can be dynamically tuned for each code method. The other big feature that isn't talked about much is that the JIT not only converts generic code to a specific instruction set, but it also generates instructions that work around hardware bugs in a specific version of the chipset. It's exactly what's needed when 5 years worth of phones are running a dozen chipsets that are each upgraded every few months.

        The downside of syncing up to OpenJDK is that it may be difficult to prevent developers from draining the battery. Poorly performing "Reflection" and anonymous adapter classes are the secret sauce behind many popular frameworks. Lambdas are the new lightweight solution to anonymous classes but the implementations churn through a lot of temporary memory.

    2. DrXym

      I used to program set top boxes and J2ME was such a steaming turd that it was a blessed relief to use a clean room Java called Skelmir which was mostly analogous to J2SE 5.0. It didn't have the full API but it had most of it and most compiled Java code ran against it quite happily. I recall being told it was cheaper to license as well.

      Android would have tanked if they had used J2ME. It's questionable if it would have been any better using J2SE since the performance of JVM on a mobile device at the time would probably have been awful.

      Strangely enough Oracle hasn't sued Skelmir despite them doing what Google did (even more since their runtime executes Java bytecode). Nor have Oracle gone after GNU for its classpath project, or Apache / IBM for Harmony, or Kaffe or other projects that attempted to reimplement the API, or the JVM.

      1. JLV
        Thumb Up

        Funny how we both used 'steaming turd' for J2ME. I hadn't read your post yet when I wrote mine ;-). +1

  7. Anonymous Coward
    Anonymous Coward

    It will, though, be a tough pill to swallow. It will deny Android, and Oracle opponents, the clear legitimization a court victory against Oracle would surely have delivered and which they feel is theirs.

    Assuming that a court victory would come. It unfortunately seems that in the US, courts do strange things.

  8. Anonymous Coward
    Linux

    IBM and political battle over the control of Java?

    "IBM had backed Harmony as part of its political battle over the control of Java"

    I don't follow, how is IBM trying to take control of Java? I thought it was Oracle that claimed ownership of Java.

  9. Anonymous Coward
    Linux

    Kuhn reckons there is a threat to Android makers?

    "FSF chief Bradley Kuhn reckons there is a threat to Android makers who fail to comply with GPL, plus the Class path exception."

    My reading of the second linked-to document is that the ' Classpath exception' is designed to allow a developer to distribute a Java application without having to include the source code. I see nothing there in reference to 'Classpath exception' and Oracle. The 'way to extract revenue' quotes are from another document in relation to 'copyleft'. You seem to have added two plus two and come up with a five.

  10. Mikel

    Java was needed to bootstrap Android

    Now that Android is a dominant power in its own right, the legacy Java platform can be replaced with something more modern and - importantly - completely different. Certainly it *seems Oracle, who owns Java, would prefer that. So replace it with whatever homegrown API you like Google.

    * What Oracle really wants: Google made and sold pie with a recipe partially based on their recipe and people love the pie, so they want the pie. All of it. And all the future pies too. Recipes don't work that way.

  11. Alan Denman

    Cartels are US!

    This likely concentrates things more in the US, Andoid being frowned on by being world wide open.

    I simply see more difficulties for those embracing Java around the world, not forgetting that Sun/Oracle Java always rivalled Adobe Flash useless for bloat, .Net multi frameworks. Adobe Flash and Sun Java historically being the most PC crippling.

  12. Groklawzombie@mailinator.com
    Linux

    Wow OpenJDK that took a while :-)

    This a while ago but looks like they finally did that thing.

    lwn net Articles 400574

    Quote:

    Classpath Exception not included in the mobile edition

    Posted Aug 22, 2010 5:00 UTC (Sun) by paulj (subscriber, #341) [Link]

    It doesn't matter. Google are NOT using JavaME - they're using a subset of SE. So the OpenJDK GPL+CE implementation is there for their taking and should be acceptable - modulo the fact that Google don't seem to like the GPL much.

  13. Paul

    If found this article to be confusing, like it was written by someone who was very tired, by them dictating it to someone who simply spell-checked it and didn't bother to restructure it into simple clear english with good punctuation.

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like