News for hackers. Stuff that matters.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by revelation on Monday May 07, 2012 @03:36PM (#3940593)
There have been enough comments on what this means, whats going to happen next, etc. Something that is bothering me. Juries are meant to infuse some common reasoning into the law. And still, you get decisions like this:

The rangeCheck method in TimSort.java and ComparableTimSort.Java YES, infringing....

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by thereallurch on Monday May 07, 2012 @03:56PM (#3940683)
From OpenJDK:

private static void rangeCheck(int arrayLen, int fromIndex, int toIndex) {

        if (fromIndex > toIndex)

            throw new IllegalArgumentException("fromIndex(" + fromIndex +
                       ") > toIndex(" + toIndex+")");

        if (fromIndex < 0)
            throw new ArrayIndexOutOfBoundsException(fromIndex);

        if (toIndex > arrayLen)
            throw new ArrayIndexOutOfBoundsException(toIndex);

    }
From Google:

private static void rangeCheck(int arrayLen, int fromIndex, int toIndex) {

        if (fromIndex > toIndex)
            throw new IllegalArgumentException("fromIndex(" + fromIndex +
                       ") > toIndex(" + toIndex+")");

        if (fromIndex < 0)
            throw new ArrayIndexOutOfBoundsException(fromIndex);

        if (toIndex > arrayLen)
            throw new ArrayIndexOutOfBoundsException(toIndex);

    }
}

Open and shut case. /s

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by gouranga on Monday May 07, 2012 @04:03PM (#3940723)
To be blatantly honest, that is exactly what I'd write. The implementation is trivial and obvious therefore the probability of them being the same is high.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by dminor on Monday May 07, 2012 @04:11PM (#3940761)
They were both written by Joshua Bloch, while working at Google. The first was for TimSort, which he donated to Sun/OpenJDK. He then reused the rangeCheck code in Android.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by krakensden on Monday May 07, 2012 @05:07PM (#3940979)
This sort of thing is a little scary. We can't know for certain whether he wrote the same code the same way twice, or if he copied and pasted it, but I can certainly imagine doing the former.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by duaneb on Monday May 07, 2012 @05:23PM (#3941030)
He copied and pasted:

Q. The rangecheck function: Did you copy the Sun code while working on Android?

A. I did that while working on Timsort, and it was during the period I was employed at Google, but not for Google. It was something I wrote on my own for OpenJDK.

[I had not heard of Timsort before; it's (apparently) a very efficient sort written by Tim Peters for Python (see Wikipedia), and ported by Bloch to Java.]

[Timsort will come up again later. I'm somewhat appalled by how much fuss is being made over the trivial "rangecheck" function.]

Q. Why did you copy the rangecheck function for Timsort?

A. It's good engineering to reuse the same function if possible [The context here was that he expected to fold Timsort into a public version of Java, and at that point it would make sense to call the existing rangecheck function from the new code rather than writing a different one.]

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by cullen on Wednesday May 16, 2012 @04:34PM (#3983895)
Oracle is claiming infringement and damages for something they (Sun) didn't even pay for? That's a lot of gall.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by ars on Monday May 07, 2012 @06:19PM (#3941226)
That's not the legal measure. If in fact they were both written identically, but independently there is no infringement. If it's totally obvious, but it was copied then there is infringement.

The takeaway is write it yourself - don't copy it without permission, even if it's so obvious. (And if it's so obvious then there really is hardly a reason to even copy it in the first place.)

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by myko on Monday May 07, 2012 @09:17PM (#3941724)
Of course in this case the person who wrote it is also the same person who copied it.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by fulafel on Tuesday May 08, 2012 @06:09AM (#3942963)
So you're saying that if I copy "for (i = 0; i < 100; i++)" then it's infringment, and there's no requirement of originality for copyright protection?
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by cullen on Wednesday May 16, 2012 @04:37PM (#3983904)
Oh dear, my freshmen are in a heap of trouble.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by __alexs on Tuesday May 08, 2012 @04:15AM (#3942732)
I thought the case was not even about copyright infringement of code but of the APIs i.e. the function names and arguments?

The OpenJDK is GPL'd after all, and well, an argument could be made that Google are infringing by distributing GPLd rangeCheck with the Apache license, Oracle aren't doing that afaik.

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by ars on Tuesday May 08, 2012 @05:20AM (#3942849)
There is more than one issue. The big one of the API's, and a smaller issue of a very small amount of outright copying already admitted to by google.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by __alexs on Tuesday May 08, 2012 @08:33AM (#3943283)
If the Java APIs are copyrightable, which part of the OpenJDK GPL release doesn't provide Google with a GPL copyright license to them then?
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by polshaw on Monday May 07, 2012 @07:01PM (#3941354)
and how, generally, is this provable? (at least, to produce 'reasonable doubt' to a layman)

(ignoring that the guy seems to have said he copy-pasted here.)

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by ars on Monday May 07, 2012 @08:28PM (#3941590)
Why ignore it? That's exactly how.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by emeraldd on Monday May 07, 2012 @04:07PM (#3940748)
Given a method signature, especially one with the parameter names, and a listing of the exceptions it could throw, I think the only thing I would do different would be comments and {} on the if's. I hate if's without braces, that's just asking for trouble in the future ;)
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by grandpoobah on Monday May 07, 2012 @08:39PM (#3941634)
But it makes the code prettier
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by fulafel on Tuesday May 08, 2012 @05:21AM (#3942852)
How can this snippet be copyrightable? Is there no requirement/threshold of originality in the US?
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by rfugger on Monday May 07, 2012 @03:58PM (#3940694)
David Boies reportedly asked, with the jury out of the room, for "infringer's profits" from the nine lines. Judge Alsup said it was "bordering on the ridiculous."
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by j_baker on Monday May 07, 2012 @05:22PM (#3941027)
I'm a bit curious what profits Oracle expects to take. Google isn't profiting off of Android (that I know of) except in the sense that it makes for more people who are willing to use their search engines. That's pretty difficult to quantify. How do you determine whether a search from Android wouldn't have been made from some other platform (say an iPhone) had Android not existed?
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by obtino on Monday May 07, 2012 @07:56PM (#3941499)
If a manufacturer wishes to provide Google services (such as Google Play, GMail, GTak) with their device, Google will charge them a fee for their deployment of Android on a per-device basis.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by dchest on Monday May 07, 2012 @04:37PM (#3940863)
Josh Bloch testified that he copied this function. http://www.groklaw.net/articlebasic.php?story=20120419221941...
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by carbocation on Monday May 07, 2012 @04:48PM (#3940906)
Indeed; he copied it from himself.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by dchest on Monday May 07, 2012 @05:26PM (#3941039)
This would be the case if copyright wasn't transferable. AFAIK, he wrote it while working for Google, thus the owner of his code was Google, which then transferred/donated the ownership to Sun. He testified that he copied the code which he didn't own anymore.

This is all pretty fucked up, but that's what the law is.

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by wtallis on Monday May 07, 2012 @11:19PM (#3942094)
I don't think that's right - elsewhere in this thread is a quote from his testimony where he says it wasn't done for Google, so it wasn't a work for hire. Rules are different for works of corporate authorship and personal authorship. Most significantly, in the case of personal authorship, the author is allowed to take back their copyright if at least 35 years have elapsed since the grant of copyright to another party.
Re:Oracle/Google jury finds Google infringed SSO but hangs o... by dchest on Tuesday May 08, 2012 @07:17AM (#3943098)
Arrays, from where he took rangeCheck has a copyright notice stating that it was copyrighted by Sun, then Oracle:

http://hg.openjdk.java.net/jdk7/jdk7/jdk/annotate/37a05a11f2...

It also states that Josh Bloch is one of the authors. You maybe right that he may have done this as not a work for hire, or even that he may still own copyrights for this code (I don't know what the contributors agreement said at that time), but Google didn't even contest it in court.

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by nknight on Monday May 07, 2012 @03:54PM (#3940676)
They're meant to maintain control by the people over the judiciary, it has nothing to do with "common sense". In this case particularly, the problem is lack of uncommon sense. You cannot expect non-engineers to understand that rangeCheck is utterly uncreative, because they don't understand rangeCheck to begin with, nor its underpinnings. They can't even apply a generic sense of right or wrong to it.

This sort of trial should be conducted in the modern style of civil law countries, but that would require a constitutional amendment.

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by j_baker on Monday May 07, 2012 @04:57PM (#3940939)
Nor can they be expected to understand accounting principles in accounting fraud cases. Nor can they be expected to understand tax law in tax cases. Heck, you really can't rely on them to understand theft laws in cases of theft. In fact, I'd reckon that we rely on jurors to understand very little.

That's what the lawyers are there for: to present the evidence and make the case (based on the testimony of experts) to a jury who doesn't get it.

I think there are arguments to be made in support of changing how we use juries in the courts, but this isn't one of them. I mean, this argument applies to just about every case that uses a jury, and it's simply not feasible to expect that jurors be knowledgeable in all the areas that a given case touches upon.

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by nknight on Monday May 07, 2012 @05:25PM (#3941038)
Accounting principles, tax law, and theft laws are far easier for the layman to understand than programming. They deal with accounting and taxes in their everyday lives, and they understand it's wrong to steal. The principles are taught to every child in our society and they put them to practical use throughout their lives.

None of this applies to programming, which bears only the most tenuous of relationships to anything most people will learn or use in their lives.

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by bad_user on Monday May 07, 2012 @05:46PM (#3941110)
Most people are exposed to math and to cookbook recipes for cooking food, both areas having strong relationships with programming.

What is harder to grasp is that programming is an intersection of math with cooking. And cookbook recipes are copyrightable, while math is not.

And so the burden lies on the lawyer to describe the relationship between an algorithm and the math behind it. That isn't necessarily hard, but requires creativity and time, plus you have to take into account the short attention span of most people, so you've got to pick your battles. And I guess Google's lawyer did a bad job here.

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by seabee on Monday May 07, 2012 @06:30PM (#3941258)
> And cookbook recipes are copyrightable

Are you sure about that?

http://www.copyright.gov/fls/fl122.html

The parts which make it a recipe are not copyrightable. That is analogous to comments in source code, I think...

Re:Oracle/Google jury finds Google infringed SSO but hangs o... by j_baker on Monday May 07, 2012 @07:22PM (#3941403)
Yes, but do you think the average layman knows enough to say, convict Enron of accounting fraud? Clearly not. I mean, a significant number of accountants didn't know enough.