Jump to content

Bad news for Android!

Recommended Posts

dosxuk, respectfully I suggest that you read the decision first :)

 

There's no suggestion that Google have had access to, or copied, or included Oracle's source code.
Google admitted that they copied 7000 lines of code verbatim. Scratch my supposition about Easter eggs, not needed here.

 

Preamble excerpt -

With respect to the 37 packages at issue, “Google believed Java application programmers would want to find the same 37 sets of functionalities in the new Android system callable by the same names as used in Java.” Id. To achieve this result, Google copied the declaring source code from the 37 Java API packages verbatim, inserting that code into parts of its Android software. In doing so, Google copied the elaborately organized taxonomy of all the names of methods, classes, interfaces, and packages— the “overall system of organized names—covering 37 packages, with over six hundred classes, with over six thousand methods.”

 

Start at page 15 for the Court's rationale.

 

Excerpt -

It is undisputed that the Java programming language is open and free for anyone to use. Except to the limited extent noted below regarding three of the API packages, it is also undisputed that Google could have written its own API packages using the Java language. Google chose not to do that. Instead, it is undisputed that Google copied 7,000 lines of declaring code and generally replicated the overall structure, sequence, and organization of Oracle’s 37 Java API packages. The central question before us is whether these elements of the Java platform are entitled to copyright protection.

 

Court's summary decision:

We are mindful that the application of copyright law in the computer context is often a difficult task. See Lotus Dev. Corp. v. Borland Int’l, Inc., 49 F.3d 807, 820 (1st Cir.1995) (Boudin, J., concurring) (“Applying copyright law to computer programs is like assembling a jigsaw puzzle whose pieces do not quite fit.”). On this record, however, we find that the district court failed to distinguish between the threshold question of what is copyrightable — which presents a low bar—and the scope of conduct that constitutes infringing activity. The court also erred by importing fair use principles, including interoperability concerns, into its copyrightability analysis.

 

For the reasons that follow, we conclude that the declaring code and the structure, sequence, and organization of the 37 Java API packages are entitled to copyright protection.

which was my also initial reading of the question of law.

 

One core aspect of the rationale, which again accords with my earlier suppositions:

On appeal, Oracle argues that the district court: (1) misapplied the merger doctrine; and (2) failed to focus its analysis on the options available to the original author. We agree with Oracle on both points. First, we agree that merger cannot bar copyright protection for any lines of declaring source code unless Sun/Oracle had only one way, or a limited number of ways, to write them. See Satava, 323 F.3d at 812 n.5 (“Under the merger doctrine, courts will not protect a copyrighted work from infringement if the idea underlying the copyrighted work can be expressed in only one way, lest there be a monopoly on the underlying idea.”). The evidence showed that Oracle had “unlimited options as to the selection and arrangement of the 7000 lines Google copied.” Appellant Br. 50. Using the district court’s “java.lang.Math.max” example, Oracle explains that the developers could have called it any number of things, including “Math.maximum” or “Arith.larger.” This was not a situation where Oracle was selecting among preordained names and phrases to create its packages.

 

As the district court recognized, moreover, “the Android method and class names could have been different from the names of their counterparts in Java and still have worked.” Copyrightability Decision, 872 F. Supp. 2d at 976. Because “alternative expressions [we]re available,” there is no merger. See Atari, 975 F.2d at 840.

The core issue is that Google lifted Oracle's code wholesale, and is absolutely not about what interoperability Google's code provides. Edited by L00b

Share this post


Link to post
Share on other sites

So they copied the core api behaviour of java, package structure, class structure, class declarations, method declarations and even javadoc. They didn't rewrite it using blackbox principles (which would have been entirely possible), they just lifted it.

Share this post


Link to post
Share on other sites
So they copied the core api behaviour of java, package structure, class structure, class declarations, method declarations and even javadoc. They didn't rewrite it using blackbox principles (which would have been entirely possible), they just lifted it.
Correct.

 

Oracle's nose is out of joint because, according to the decision's preamble, they'd long been in talks with Google about a license for this code, but Google just walked away yet still lifted the code wholesale (which Oracle had paid its programmers to code originally (and/or paid to acquire relevant rights from earlier rights owner (i.e. Sun)). Google saved itself paying for the man-hours' worth of coding and a license fee, now Oracle wants their pound of flesh. Can't blame them.

Share this post


Link to post
Share on other sites

Oracle didn't pay anybody but Sun to be fair. But that's how it works.

Share this post


Link to post
Share on other sites

It's really bad news for Java, Java programmers & Oracle. They just killed it.

Share this post


Link to post
Share on other sites

It seems that intent is an aspect here. With Google deliberately making an incompatible Java implementation then naturally they have no right to steal bits of the official Java API.

 

I suspect if this had been an attempt to write a 100% compatible Java replacement then the ruling would have been different.

 

In this specific case it looks like the courts are right, Google were in the wrong.

Share this post


Link to post
Share on other sites

suppose they will need all the extra income to put into Americas cup sailing.

Share this post


Link to post
Share on other sites
So they copied the core api behaviour of java, package structure, class structure, class declarations, method declarations and even javadoc. They didn't rewrite it using blackbox principles (which would have been entirely possible), they just lifted it.

 

In which case it's as obviously a plain case of copyright infringement as I was wrongly informed. In this case, it's not about the API, it's simple code copyright infringement.

 

Apologies for my completely incorrect postings earlier.

Share this post


Link to post
Share on other sites
It's really bad news for Java, Java programmers & Oracle. They just killed it.

 

How so?

 

Google and Oracle have been fighting in the courts for ages, and will continue to do so for ages more. Nothing has really changed.

Share this post


Link to post
Share on other sites
In which case it's as obviously a plain case of copyright infringement as I was wrongly informed. In this case, it's not about the API, it's simple code copyright infringement.

 

Apologies for my completely incorrect postings earlier.

It is about the APIs which the code implements.

 

To be more precise, it is about the functionality of the code that has been copied and the relevance to it of the US-centric "merger" legal test (under which copyright protection in the US is removed from code that cannot be written in any different way for implementing a function (an API ;)) - this, to guarantee/safeguard interoperability).

 

No need to apologise at all, quite on the contrary that is what debate/open discussion is all about :)

Share this post


Link to post
Share on other sites

They rewrote the entire code base but kept the API naming convention.

 

They got caught out with 1 function that contained 9 lines of code as being same - see page 52 onward in pdf - http://www.groklaw.net/images/GoogleOpeningStatementSlides.pdf

 

There was one file, containing 7,000 lines of code, which contains the entire API declaration that was copied but looked as if it wasn't part of this court case. It is mentioned in the second grey box here http://www.groklaw.net/articlebasic.php?story=20130528214954679

Share this post


Link to post
Share on other sites
They rewrote the entire code base but kept the API naming convention.

 

They got caught out with 1 function that contained 9 lines of code as being same - see page 52 onward in pdf - http://www.groklaw.net/images/GoogleOpeningStatementSlides.pdf

 

There was one file, containing 7,000 lines of code, which contains the entire API declaration that was copied but looked as if it wasn't part of this court case. It is mentioned in the second grey box here http://www.groklaw.net/articlebasic.php?story=20130528214954679

John, with respect, the first link is Goggle's side of the story, the second link is an article analysing it (with some bias it seems).

 

I'd sooner take the word of the Court of Appeal which has considered your first link, and Oracle's own side of the story, and the legal basis and merit of both and applied relevant legal tests in the matter to come to their conclusion (their recent decision: your link dates back to 2013 when leave to Appeal had only recently been granted and Google then made their submissions at Appeal - which is what you first link is).

 

Google did not "rewrite the entire code and just keep the naming convention": the instruction by the (1st instance/District Court) Judge to the (1st instance/District Court) jury to consider Google's 7000 lines of code as copied (i.e. "barring" from considering that issue) was given because Google admitted to the copying. That is clear as day (and then some) in the Appeal decision.

 

Had Google not admitted to it, the judge would have had to instruct the jury to consider whether all 7000 lines (and not just the 9-odd ones) had been copied or not (and the jury would have found one way or the other).

Edited by L00b

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Ă—
Ă—
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.