It's been just over a month and a half since Oracle first sued Google for infringing various Java-related patents in Android, and the big G's just filed its official response to the lawsuit after calling it "baseless." For the most part, it's a pretty standard answer to a patent complaint: Google says Android doesn't infringe any of Oracle's patents, and even if it does, those patents are invalid and / or unenforceable for a variety of reasons anyway, so, you know, shove it. That's basically all Google -- or any patent defendant -- needs to say in the answer, and if that was it, we'd just note it and move on with our lives. But we were struck by the factual background section, which reads to us like Google's geared up for war: it basically accuses Sun and Oracle of not playing fair when it comes to Java's open-source license situation and directly implies that parts of Android are based on code that might require a patent license. It's a little wonky, but let's break it down:
  • Google uses a subset of the Apache Harmony Java implementation in Android.
  • Sun open-sourced Java Standard Edition under the GPL in 2006 and 2007, but didn't include a patent or copyright license with the code. In order to get that license, developers have to demonstrate compatibility with the Java specification.
  • The only way to demonstrate compatibility with the Java specification is to use Sun's Technology Compatibility Kit, or TCK, and Sun / Oracle and Apache have been bickering about the license for the Java TCK, or JCK, for years. (That's putting it lightly, actually. It's been more like a war.)
  • The only license Sun ever offered Apache for the JCK included significant "field of use" restrictions, including a restriction on mobile phones.
  • Because of these restrictions, Apache's never taken a JCK license to test Harmony.
  • Oracle used to be on Apache's side in demanding Sun loosen up the JCK licensing restrictions, but that changed as soon as it bought Sun out.
  • Google thinks this is very bad, and that Oracle and Sun are just big bullies who don't want Java to be open, even though being open is super amazing.
That's where Google stops, right at the part where unchecked corporate greed threatens to destroy a open-source project and your heart swells with sympathy. It's a good place to stop! But the logical and unstated endpoint to this narrative isn't quite as good:
  • Because Apache doesn't have a license to test Harmony with the JCK, it doesn't have a license for Sun's Java patents and copyrights either.
  • Part of the reason Apache wants a JCK license is to assure its users they have the necessary IP rights.
  • Google knew all this and used parts of Harmony in Android anyway.
Now, none of this matters if the court agrees with Google that Android doesn't infringe any of the seven patents in the suit or that they're invalid. But Google has to win all seven claims for that strategy to work -- losing even one of the claims opens the door to huge willful infringement damages since the Apache / Sun dispute has been so public. We'd also say this basically means Oracle will never grant Apache the JCK license it wants, since Google's put it at the center of the dispute. Yes, it's going to be messy while this gets sorted out, but when all's said and done we'd guess the state of Java on mobile will be very, very different -- and whether that's good or bad is very much up in the air.