decoration decoration
Stories

GROKLAW
When you want to know more...
decoration
For layout only
Home
Archives
Site Map
Search
About Groklaw
Awards
Legal Research
Timelines
ApplevSamsung
ApplevSamsung p.2
ArchiveExplorer
Autozone
Bilski
Cases
Cast: Lawyers
Comes v. MS
Contracts/Documents
Courts
DRM
Gordon v MS
GPL
Grokdoc
HTML How To
IPI v RH
IV v. Google
Legal Docs
Lodsys
MS Litigations
MSvB&N
News Picks
Novell v. MS
Novell-MS Deal
ODF/OOXML
OOXML Appeals
OraclevGoogle
Patents
ProjectMonterey
Psystar
Quote Database
Red Hat v SCO
Salus Book
SCEA v Hotz
SCO Appeals
SCO Bankruptcy
SCO Financials
SCO Overview
SCO v IBM
SCO v Novell
SCO:Soup2Nuts
SCOsource
Sean Daly
Software Patents
Switch to Linux
Transcripts
Unix Books
Your contributions keep Groklaw going.
To donate to Groklaw 2.0:

Groklaw Gear

Click here to send an email to the editor of this weblog.


Contact PJ

Click here to email PJ. You won't find me on Facebook Donate Paypal


User Functions

Username:

Password:

Don't have an account yet? Sign up as a New User

No Legal Advice

The information on Groklaw is not intended to constitute legal advice. While Mark is a lawyer and he has asked other lawyers and law students to contribute articles, all of these articles are offered to help educate, not to provide specific legal advice. They are not your lawyers.

Here's Groklaw's comments policy.


What's New

STORIES
No new stories

COMMENTS last 48 hrs
No new comments


Sponsors

Hosting:
hosted by ibiblio

On servers donated to ibiblio by AMD.

Webmaster
Day 10 Oracle v. Google Trial ~pj - Updated 8Xs - Oracle Exhibits, Astrachan, Reinhold, Dare, Mitchell, Katz
Friday, April 27 2012 @ 12:45 PM EDT

Our first report from the courthouse in Oracle v. Google is in. Witnesses today are Professor Owen Astrachan once again, and then Mark Reinhold, and Tiki Dare. Then Google rests, and Oracle begins its rebuttal with Mark Reinhold being brought back, and then Dr. John Mitchell again, and ending with Safra Katz.

The day opens with this wonderful judge saying in open court that he made a mistake yesterday, and he wants to correct it. He said that Google would be held to its earlier statement that it wasn't challenging Oracle's ownership of the copyrights. Now, obviously because the US Copyright Office has only a blank CD of whatever Oracle/Sun filed with it, he says he's leaving that issue open for now.

In turn, Oracle says it is no longer describing the copyright registration as a collective work. It claims it never relied on that. They wrote it, but that theory is now dead, they offer, thanks to the incredible lawyering of Robert Van Nest and his team, who noticed their mistake in the copyright filings.

Oracle also says it is no longer seeking a package-by-package ruling on infringement as it relates to code. What they want is that documentation be treated similarly to code. They probably heard the judge yesterday tell Google they'd probably lose on the manuals. And Oracle now says it will let both code and documentation be compared with the same definition of "work as a whole." So Oracle is backing off somewhat, or you could view it that it is trying to strengthen its case after a devastating day yesterday. Robert Van Nest then stands up and says this is the first time Google's heard of the change in Oracle's position. He'd like time to confer and talk about the exhibits. The judge says he'll think about Oracle's suggestion.

What does it mean overall? It means that yesterday, Google kicked Oracle's butt, as they say in the vernacular.

Jump To Comments

[Update 1, Update 2, Update 3
Update 4, Update 5, Update 6
Update 7, Update 8]

Here's that early morning discussion, from our reporter in the courtroom, xbl:

4/27/12

Before the Jury Enters

Judge: I have something I want to say first. I made a mistake, and I want to correct it.

Near the end yesterday we got into a discussion about the ownership of the individual API packages.

Mr. Jacobs said that Purcells admitted that they were not going to contest ownership.

And I said I wasn't going to hold Mr. Purcells to that.

I'm going to retract that. I put that back as an open question.

I had in mind a different colloquy.

I'm not saying I *am* going to hold them to it, but I'm going to hold that open.

Mr. Jacobs: Further to ownership and registration and other formalities. Let me try to narrow scope of issues in dispute.

We no longer seek a package-by-package ruling on infringement as it relates to the code. (Relates to question 2 on verdict form.)

On the document part, we urge that to be treated similar to the code packages.

We seek a ruling on documentation copying. If that ruling comes in the contexgt of 37 packages, that would suffice. We don't need package by package rulings on the documentation. But we do need a ruling on the documentation.

Judge: How would you phrase the question to the jury?

Oracle: To the jury: the question would be of the form. "Did Google infringe by copying the API documentation into its documentation?"

Judge: Compared to what? What's the work as a whole?

Oracle: We would have it be co-extensive with the determination for the code packages.

Judge: OK, that's much simpler. But I'm not making any ruling.

Oracle: We withdraw the characterization of the registration as a collective work. We never relied on that, we don't need that.

Oracle: Next point is to offer into evidence some exhibits.

Van Nest: Before we begin, if I may. I didn't know until he stood up that he was going to withdraw the collective characterization. [Requesting time to confer, to talk about exhibits that O is trying to submit.] Judge: OK, 10 minute break.

Update: And here's the continuation:

7:37am.

[Back from the break]

Judge/Lawyers Discussion Resumes

Google: We're in agreement with Mr. Jacobs, for question 2a, that work as a whole should be the same for both code and documentation.

Oracle: Exhibits agreed to: 465, 466, 467, 468, 469, 470, 471, 472, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488. As part of reopening our case in chief.

Basis is that these go to ownership as part of the JCP process.

Oracle: Offer into evidence 1078. Letter to copyright office with a received stamp on it for java 2 SE5.

Judge: Objection is what?

Google: Hearsay, lack of foundation, and incomplete. Where is this disk? [they have it] And it needs to be authenticated.

Google: These are business records of the law firm.

Oracle: Because of conflict, the records were transferred to Oracle.

Judge: (To Google) Do you really want the jury to think that the case turns on this?

Google: No.

Judge: Then why are you making a big case about this?

Google: We just want someone to testify that the disk has the same contents that was submitted.

[Talking about attorney who recorded these details at Fenwick, then turned it over to Oracle.]

Judge: I think it's better to bring in Mr. Gonsalves.

Oracle: I would offer 1078 as a self-authenticating document that has on its face indication of authenticity.

Google: They are clearly offering this for the truth of its contents, to show that a disk was submitted.

Judge: Was there a disk, and what was on it? And that's not something I can take as self-authenticating from the face of the letter.

I'm not going to rule on this - but tentatively I'm going to rule no - you have to bring this in the right way, with a witness. They (Google) have the right to be mean and nasty - which is what I think they're doing here. I would need some case law to overrule their objection.

[PJ: Don't rule out that Google knows something more about this than we, or the judge, yet do. Why is Oracle reluctant to bring in a witness to authenticate? That is the question. And while the judge said "mean and nasty" -- he also eventually says they're legally right -- and consider what I told you yesterday, that I thought this move was Google sending a message to Oracle, that it's tired of Oracle's trickiness and surprises, bringing in new theories and exhibits and witnesses at the 11th hour. Lawyers sometimes do that to throw the other side off, and it can. The judge might allow them, and maybe he doesn't yet even notice that it's happening, but Google, I think, is drawing a line in the sand and it would like them to cut it out. Normally, lawyers are gentlemanly, courtly you might even say, and there is rarely a situation where a lawyer will refuse a request for a favor. But there is a saying I've heard lawyers say to each other, and you may have heard it too in everyday speech, "If it's love, it's love. But if it's war, it's war." And when lawyers decide you are declaring war, they don't mind returning bullets, speaking metaphorically. Oracle now has a decision. It looks like they are backing down, but that doesn't mean they won't try again another day. But I suspect we have seen the end of courtliness. If it returns, it will have to be on both sides. It can't be one side love and the other side war. What the judge said, he said out of earshot of the jury, so Google doesn't have to care if the judge thinks they are being mean, so long as they prevail in sending the message. Oracle has to worry that their techniques have lost them any wiggle room with Google from this day forward. And they've learned that magic tricks in the courtroom only work if no one in the room knows the trick, and now they know that Mr. Van Nest is a magician too. What I'm explaining is that what I think I see is a discussion going on on more than one level, and the words match the one that isn't the core, so to speak.]

Oracle: MRT Construction vs. Hard Drives, Inc. Business records case. Exactly like this case. A file from an outside law firm transferred to Oracle.

Judge: You're not explaining why you can't get Mr. Gonsalves here. You're avoiding that.

I'm not going down this path until you tell me he's unavailable, as in he refused a subpoena.

Oracle: Offer 1076, the CD rom.

Judge: Same ruling (i.e. no, need a witness)

Judge: Those 4 docs are in limbo. I'm not ruling, but I question the foundation. I'm not ruling it out, but I'm not ruling it in based on a proffer.

8:07am

Jury comes in.

Bruce Baber of King & Spalding is up for Google.

Professor Owen Astrachan returns to the stand

Google: Does the specification say what code to write?

Owen Astrachan: No, it does not. The implementation of the method is what the programmer implementing the API needs to think about and understand.

Google: For someone who is trying to implement that method, to write new code, does the spec tell the programmer what to write?

Owen Astrachan: No.

Google: Does it tell the programmer what the code has to do?

Owen Astrachan: Yes.

Google: Does it tell them what code to write?

Owen Astrachan: No.

Google: Once the method has been implemented, does the spec tell a programmer writing an app what to write?

Owen Astrachan: Yes, it tells them how to call the API.

Google: And do they have to write that code exactly?

Objection - Leading.

Judge: Sustained. Try not to lead your own witness. [judge lecture on when it's leading, and when it's not.]

Google: For a programmer trying to use a method that's been implemented, does the method specification say what the programmer has to write?

Owen Astrachan: Yes.

Google: Can you have more than one implementation of a spec?

Owen Astrachan: Yes. We've seen two implementations of the math.max class. We saw Dr. Bloch implement math.max. The implementation is between the curly braces.

Google: Did we see a second implementation?

Owen Astrachan: Yes. I don't remember who did it though. But I recognize 3525. Implementation is between curly braces.

Google: Exhibit 62301.

Owen Astrachan: Implementation of java.math.max from java package.

Google: Where is the implementation?

Owen Astrachan: Found it. Page 15 / 24 . (Reads implementation.)

Google: Is it different?

Owen Astrachan: It's different from both of those other ones.

Google: Now the Android implementation of java.math.max

Owen Astrachan: [Reads Android implementation.]

Google: Four different implementation for the same max method?

Owen Astrachan: Yes.

Google: Do all four different sets of code perform to the spec?

Owen Astrachan: Yes. Each would provide the same output given the same input.

Google: In order to create a new implementation, what do they need?

Owen Astrachan: They need the spec. They need the ability to do it.

Google: Can you create the implementation without the spec?

Owen Astrachan: No, you need the spec.

Google: Does requiring the implementation depend on whether you're doing a cleanroom implementation or not?

Owen Astrachan: No.

Judge: Question about specification. Your description made it sound like a black box with something inside. You have input on that side and output on that side, and the spec says what the inputs gotta be, and the outputs gotta be, and the implementation is what's in the black box.

Owen Astrachan: That is a very good explanation. I like that explanation.

[Judge smiles]

Google: [Google asks professor to write some code using API. I wonder if this is a job interview?]

[PJ: Actually, we at Groklaw were wishing Google would do this, so the judge and jury could see the simplicity.]

Google: Is there a simple program you can write?

Owen Astrachan: [Plans to show how to use the java api to go over the Internet, grab a web page, and then print it on the screen.]

Google: How many steps?

Owen Astrachan: Those 3 steps specify where to go, make a connection, read and display.

Owen Astrachan: Package, class, and method. Writing a program, I have to write a class. (This will be Simple.WebReader.) This will not become part of the API. This code is *using* the API.

I'm careful, so I'll include a stylized comment that shows that I'm the author.

[Some explanation about CS / java. How Main is required. URL. Network stuff is in java.net.]

Owen Astrachan: 3 steps are needed. Note that this program just prints the first character from that site, for simplicity. [The code he writes is something like [I can't see it, so I'm inferring stuff. Don't know all capitalization.]:


package Simple;

// @author: aulut [or whatever his username is]
public class WebReader {
  public static void Main(string [] arg) {
    java.net.URL site = new java.net.URL("http://cnn.com/");
    java.io.inputstream source = site.OpenStream();
    system.out.print(source.read());
  }
}
[End reporter explanation.]

Google: You testified that the programmer has to use the API exactly.

Owen Astrachan: Yes.

Google: Did you include any method signatures?

Owen Astrachan: Yes, I used 4 method signatures.

[Marks in red the constructor for the URL class. Also the OpenStream() method. The read() method. And the print() method.]

Owen Astrachan: All of them are in the API packages.

Google: Are they in the same or different packages?

Owen Astrachan: Different. java.io.inputstream is the inputstream class of the java.iopackage.

Google: How many packages?

Owen Astrachan: java.lang, java.net, java.io - so 3 packages.

Google: Are these real signatures?

Owen Astrachan: Yes.

Google: Have you memorized them?

Owen Astrachan: I know the ones I use often, they are in my head.

Google: Did you just copy them from the spec?

Owen Astrachan: No, I used them.

Google: Would this program run?

Owen Astrachan: Yes, it would show the first character from cnn.com.

Owen Astrachan: To show pictures, I would need to call a library that displays pictures. For that, I'd need a different library.

Google: Would this run on Android?

Owen Astrachan: Yes.

Google: PC with Java?

Owen Astrachan: Yes.

Google: Do you think Android and Java are compatible with regard to these 3 methods?

Owen Astrachan: Yes.

Google: Do you think Android and Java are compatible with regard to the 37 accused packages?

Owen Astrachan: Yes.

Google: you used 3 or 4 methods. How many lines of of code writing did you avoid by using the library?

Owen Astrachan: I've saved a thousand lines of code.

Judge: I have some questions. Terminology point. Those things in red - what are they again?

Owen Astrachan: These are the methods that I'm using.

Judge: But then you used the word signature.

Owen Astrachan: In order to call the method, I send it something, the black box happens, and I get the results. For this method, I need to know that I give it a string, and I get back a URL. Signature says what to give in, and what comes back.

Judge: OK, take print. What part is the signature.

Owen Astrachan: The name of the method, and the parameters that I pass to it.

Judge: Give us an example of a signature where you sent an input, and you got an output.

Owen Astrachan: [Tries to explain]

Judge: So the output is URL.

Owen Astrachan: Correct, a URL object.

Judge: So is the signature the name of the method in combination with the input and output?

Owen Astrachan: Yes, fully qualified name, java.net.URL.

Judge: Thank you, one other question. I thought packages were preexisting things. But you just made "Simple".

Owen Astrachan: I think you do understand. Prewritten code is in packages that I get, that I can use. The code I get is in a package. And code I write must be in a package too.

Judge: That thing about public class public static…

Owen Astrachan: Part of the signature. [Prof is lecturing CS 101.]

Judge: Does public mean you're donating it to Java?

Owen Astrachan: No.

Judge: Then whey don't you make it private?

Owen Astrachan: I have to make Main public. It has special meanings.

Judge: Can you circle the names?

Owen Astrachan: [Circles Simple and WebReader and Main.]

[Lecture over. Proffessor Astrachan sits down.]

Google: Have you conducted any analysis of the number of lines in Android / Java? [exh 3536 - his summary]

Owen Astrachan: Android platform has 15M lines of code. (4.7M in Java) 57,000 files in Android platform. (15,000 files in Java).

Google: How many Java packages are in Android?

Owen Astrachan: 51 - though yes, only 37 are accused. Files in all API packages - 6,000.

Google: Have you compared Android and Java? Are they substantially similar?

Objection - overruled.

Owen Astrachan: No, not similar.

Owen Astrachan: Platforms are designed for different things. Mobile (Android), vs. desktop (Java SE).

Google: What part of the android platform are the 37 packages? Owen Astrachan: A very small part. Google: Are there any similarities or differences between the source code in Java / Android.

Owen Astrachan: Implementation of Android is very different.

Google: (Another question - missed)

Owen Astrachan: Implementation code in Android is completely different.

Google: Why do the 37 packages have the same structure?

Owen Astrachan: Those same names are needed so the code interoperates.

Google: 3rd line of that chart.

Owen Astrachan: Those APIs are not similar at all. Completely different.

Google: Nothing at all that's the same between the implementing code?

Owen Astrachan: The code is completely different.

Google: Structure similarity?

Owen Astrachan: Class / packages of the 37 are the same.

Google: Why?

Owen Astrachan: They need to be the same.

Owen Astrachan: 2.8M lines of code in API of Java. 237,000 lines of code in Android. Implementation of the 37 accused APIs. Completely different. Other than the method signatures.

Google: Anything else that's the same?

Owen Astrachan: No, nothing else the same.

Google: Structure and organization of the 37?

Owen Astrachan: Yes, that's the same.

Google: Have you ever heard reference to SSO?

Owen Astrachan: Yes.

Google: Selection, structure and organization?

Owen Astrachan: Yes, they're all familiar.

[8:55am - Jury looks pretty attentive. I'm a little bored however... :-) ]

Google: When someone is designing an API (not the implementation), what do they do to create the API?

Owen Astrachan: To create the API, I make the package, class, and method names.

Google: And what do you do?

Owen Astrachan: I write code and implement the methods.

Google: To what extent if at all are the ideas reflected in the implementation?

Owen Astrachan: Implementation is much harder.

Google: How many lines of code would it take to minimally /trivially replicate / implement the 37 APIs?

Owen Astrachan: 7,000.

Google: Out of 237,000?

Google: What percent? [Some math mistake in discussion.]

Owen Astrachan: A very small percentage.

Judge: (Corrects the math) I'm 66 years old, but I can still do the math.

[ No one can figure out what 7 / 237 is in percent.] [PJ: Here's a tip for lawyers. If it's a technical case, have someone like Dan Bornstein sitting at your table the entire time. Serious suggestion. Software is algorithms, which is mathematics. At some point, math is going to come up.]

Google: 7,000 out of 15 million.

Owen Astrachan: Very small percent.

[Google arguing that sql packages are "needed". Their expert witness agrees, shocking :-) ]

Google: What about 10 packages with security in their name?

Owen Astrachan: Secure connections on the internet. I rely on the security packages. I wouldn't know how to write this code.

Google: Are they necessary?

Owen Astrachan: In today's world, yes.

Google: 3 crypto packages.

Owen Astrachan: Yes, they're required too.

Google: java.text

Owen Astrachan: This lets me do internationalization.

Google: java.awt.font

Owen Astrachan: Allows things to be on the screen. Yes, for practical use, it's necessary.

Google: The last package is java.beans.

Owen Astrachan: Allows my classes to work together with each other. And yes, for practical use, it's necessary.

Judge: You've said that they're necessary. But you've said the Android implementation is different than the java implementation. Is that correct?

Owen Astrachan: Yes.

Judge: So what part is necessary?

Owen Astrachan: The functionality provided by those packages.

[PJ: Is the judge beginning to realize how stupid this API claim really is to technically aware people? The questions make me hope that the tech is now getting clearer.]

Google: Is it required to meet expectations of Java programmers?

Owen Astrachan: Yes. Google: Required by industry?

Objection - overruled, after grilling the witness about what he knows about the industry.

Owen Astrachan: Yes, I think they are.

Google: How similar is documentation?

Owen Astrachan: Not very similar.

Google: Is documentation virtually identical?

Owen Astrachan: No.

Google: Is an API like a file cabinet?

Owen Astrachan: Yes.

Google: Perfect [analogy]?

Owen Astrachan: No, but good.

[Google is done questioning Professor Astrachan. 15-minute break announced] Judge: I did the math, 2.9%

[Jury is now out]

It's now 9:15am.

Update 2: Here's the next part, the rest of Professor Astrachan's time on the stand, and then Mr. Reinhold is brought back, and then Tiki Dare:

9:30am

[Jury back]

Cross Examination of Professor Owen Astrachan, by Oracle's Michael Jacobs

Oracle: Isn't it true that the Java programming language and the Java API are different?

Owen Astrachan: Yes.

Oracle: Java refers to 3 very different things: language, API, and source code?

Owen Astrachan: Yes.

Oracle: Is it difficult to write good APIs?

Owen Astrachan: Yes.

Oracle: Is it artistic, like being a football player, concert violinist, etc.?

Owen Astrachan: I don't know what it's like to be those things.

Oracle: [Plays a video clip, where he says something about football player and concert violinist.]

Oracle: Small number are necessary?

Owen Astrachan: Yes, 61, at a minimum.

Oracle: Minimum?

Owen Astrachan: I agree with 61.

Oracle: The program he wrote wouldn't *run* on Android?

Oracle: (The byte code is different).

Owen Astrachan: I thought you were asking about the code I wrote which is source code.

Oracle: But source code won't *run*

Owen Astrachan: Correct.  You need to compile it to run on a platform.

Oracle: The format of the code on Android is different?

Owen Astrachan: Can I understand the question to mean the byte code is different?  Yes.

Oracle: You were talking about 7,000 lines of code is a small piece of Android? And these are symbol for symbol identical.

Owen Astrachan: Yes.

Oracle:  What would happen if you took out those lines?

Owen Astrachan: They need to be there for Android.

Oracle: The court asked couldn't Android developers have written their own interfaces for the overwhelming majority?

Owen Astrachan: Is it possible to write a different API?  Yes.

Oracle: Couldn't you write a different API to provide the same functionality?

Owen Astrachan: Yes, similar, but not identical.

Oracle: Android could have written their own SQL API?

Owen Astrachan: Yes, they're pretty smart.

Oracle: They wrote most of their core libraries?

Owen Astrachan: Yes.

Oracle: [missed Q]

Owen Astrachan: No, the underlying code does not reflect the SSO.

Oracle: But the same functional code lies in the same position in the same sub-sub-package.

Owen Astrachan: Each package has different implementing code.  They don't have to be in the same location.  They just have to have the same name.

Oracle: The code has to provide the functionality in the spec?

Owen Astrachan: Yes.

Oracle: java.lang.math.max doesn't mean call your mother.

Owen Astrachan: That's correct.

Owen Astrachan: You expect different implementations to have the same functionality.

Oracle: java.nio came into existence in 2002.

Owen Astrachan: Yes, I guess.

Oracle: You argued that the Android docs is not similar to the java docs?

Owen Astrachan: It's similar in that it describes the same thing, but it's different in that the words are different.

Oracle: 610.2, 767, side by side.  javax.crypto.cypher

Owen Astrachan: It's describing the same class in the same picture.

Owen Astrachan: I don't know about position in the hierarchy. They have the same package and class name.  Yes, it's hierarchical.

Oracle: If we were to compare the documentation, package, class and other things would correspond?

Owen Astrachan: Yes, it has to.

Oracle: It has to if you decide you're deciding to copy.

Owen Astrachan: I don't think it was copied.  I think they used ...

Oracle: How can that be done?  "Derive"?

Owen Astrachan: I didn't use the word derive. No, documentation is not based on the source code.  It's in the source code, and it's extracted to create a human readable form.

Oracle: Was the choice to pick 37 packages to implement Android, a requirement, or a commercial goal?

Owen Astrachan: It's not a requirement, not sure about commercial goal.

Oracle done questioning Professor Astrachan.

ReDirect of Professor Astrachan, by Google

Google:  Put those exhibits back on the screen. Mr. Jacobs just asked you about stuff at the top. To the extent they are the same, do you attribute that to anything?

Owen Astrachan: They have to.

Google: Would you expect this for anyone implementing this spec?

Owen Astrachan: Yes, I'd expect them [to be] the same.

Google: "Would it run, compile on other platforms."  Would you have written it differently for Android?

Owen Astrachan: I'd change the entry point, from Main(), to something else.

ReCross of Professor Astrachan, by Jacobs
Oracle: "names cypher"

Owen Astrachan: The specific name isn't required by the language.

Oracle: Even if the language doesn't require the use of the name?

Owen Astrachan: Android requires it for interoperability for people familiar with Java.

[Astrachan may step down now.]

[Google rests. And now Oracle begins its rebuttal.]

Oracle Rebuttal

Mr. Jacobs: [Begin with deposition clip of Aditya Agarwal.]

Judge: Please explain who this guy is?

Oracle: 30b6 subject, Android revenues.

[clip plays]

Agarwal: Sr. financial analyst for Android.

Oracle: Would you agree with the statement that Android is hugely profitable?

Agarwal: Yes.

[end of clip]

[Oracle calls Dr. Reinhold.]

Rebuttal testimony of Dr. Mark Reinhold

Oracle: How long did it take to design the java.nio JSR API.

Mark Reinhold: About 2 years.

Oracle: How long would it take to design a max API?

Mark Reinhold: About 30 seconds.

Oracle: Does that accurately describe how much work goes into it?

Mark Reinhold: Oh, no.

Oracle: You said "APIs are blueprints."  People disagreed.

Mark Reinhold: They *are* blueprints.  The whole point is that different people can develop competing implementations.

Oracle: How do they use an API as a blueprint?

Mark Reinhold: If you have a good API, once you've got that, to do an implementation from scratch is a relatively easier job.  You start by copying the API, and then you implement it.

[PJ: My friends, I ask you. Does that sound like a blueprint to you?]

Oracle: Is implementing an existing an API less or more work than designing the API?

Mark Reinhold: Less.  There's room for creativity, but only within the API.

Oracle: When did JCP start?

Mark Reinhold: 1998.

Oracle: Usually an expert group for a JSR?  What did they sign?

Mark Reinhold: JSPA.

Oracle: How strict was Sun about requiring them to get strict?

Mark Reinhold: Extremely strict.

Oracle: Did you review the 37 APIs to see if they were written by 3rd parties?

Mark Reinhold: Yes.

  Oracle: Why?

Mark Reinhold: When open sourcing java, we had to review every file to make sure that we could release.

Mark Reinhold: I found that Sun had a copyright in each of the 37 API source files.

Oracle: Was any part jointly copyrighted?

Mark Reinhold: Yes, in java.text, and in java.util, jointly copyrighted with Taligent and IBM.

Oracle: Was there an agreement in place between Sun and Taligent?

Mark Reinhold: Yes.

Oracle: Exhibit 1082.  Source code agreement. Exhibit 3530, 6th page.  [Copyright for Java docs I think.]

[Essentially, Oracle is getting in to the record documentation that they have the rights to everything Java.]

Google cross-examination of Dr. Reinhold
Google: The disk that Mr. Jacobs asked you about, when were they created?

Dr. Reinhold: October 2004.

Google: 20 different releases?

Dr. Reinhold: Yes, maintenance releases.

Google: When were the maintenance releases?

Dr. Reinhold: Don't remember, generally every few months.

Google: 5.0.1, 5.0.2, etc.  Any distinguishing features?

Dr. Reinhold: Yes. Google: If you look at the exhibit 3529, when it was signed, 12/17/2004. Can you testify that there was no maintenance release between then and the original release?

Dr. Reinhold: No.

Google: We object, he can't testify which disk that is.

Judge: We accept it into evidence, but don't know which it is.

Redirect examination of Dr. Reinhold, by Oracle
Oracle: Of the 37 packages, how much of the work did Sun do?

Dr. Reinhold: Sun did most of it. Oracle: How many were released before the JCP was formed?

Dr. Reinhold: Probably 7 or 8.

Oracle: Who was the spec lead?

Dr. Reinhold: I was.

ReCross of Dr. Reinhold by Google
Google: Blueprint analogy.  But the API spec doesn't tell you how to write the code?

Dr. Reinhold: Of course not.

Google: It just tells you what the code has to do?

Dr. Reinhold: Yes.

Google: You can write that code any way you want?

Dr. Reinhold: Yes. [Google gets him to say that a stub implementation has about 10,000 lines, out of about 5M lines of code.]

Dr. Reinhold: Yes, 10,000 very expensive lines of code. Google: In addition to the 37 accused packages there are 14 other packages that are in Android too.

Google: java.util.concurrent written by Doug Lea?

Dr. Reinhold: Yes.

Google: Donated it to the public?

Dr. Reinhold: Yes.

Google: When you looked at the source code to see if anyone else owned it.  You mentioned some.  But there are some others too though?

Dr. Reinhold: Not sure.

Google: What about java.awt.font?

Dr. Reinhold: Yes sir, but my understanding is that's not in Android.

Google: java.net owned by nobody?

Dr. Reinhold: I don't recall that.

Google: java.net.inet4address.java.  Familiar?

Dr. Reinhold: Yes.

Google: Represents an IP address.

Judge: Is that one of the 37?

Dr. Reinhold: Yes.

Google: Also, inetaddress.java.

Dr. Reinhold: Yes, represents an IP address.

Google: Is any content in that class created by Sun?

Dr. Reinhold: As far as I know, all of it.

Google: It's your testimony that the class is owned by Sun?

Dr. Reinhold: It's my testimony that that code did not contain any legal notices asserting any legal ownership by anyone other than Sun.

Google: XML. 10 classes?

Dr. Reinhold: Sounds good.

Google: Sun released under the Apache license javax.xml and all subclasses?

Dr. Reinhold: I don't know. I know a lot of the code came from Apache.  I honestly don't recall.

Google: You're saying the code came from Apache?

Dr. Reinhold: Not saying one way or another.

Google: But it's released under an Apache license?

Dr. Reinhold: No, I don't recall.

Google: You testified that you did an extensive review before releasing them?

Dr. Reinhold: Yes.

Google: But you don't recall that java.xml was released under Apache?

Dr. Reinhold: No.

Judge: You said you reviewed the 37 along with others.  Did you review them to see if there was an affirmative statement of ownership by Sun, or did you review them to see if there an absence by others?

Dr. Reinhold: Looked for affirmative. [clarifies] Some might not have notifications.  For which I assumed some Sun engineer was sloppy and forgot to put it.

[PJ: Wow. I wonder if this means Oracle can't prove it actually owns the 37? That's one of the requirements to prevail on a copyright infringement claim. As we now see, this isn't just some "technicality".]

Re-re-Direct of Dr. Reinhold, by Oracle
Oracle: Exhibits 1083, 1084, 1085, 1086, 1087, 1088.

Dr. Reinhold: These docs are samples of executed versions of the JSPA.

[Google makes him check them all.]

Oracle: Has anyone asserted that Sun doesn't own all rights to Java?

Dr. Reinhold: No.

Oracle: Were Mr. Baber's questions about packages inside or outside the 37?

Dr. Reinhold: Some are in, some are out.

Re-re-Cross of Dr. Reinhold, by Google
Google: Well, they're all in the 166 of Java?

Dr. Reinhold: Yes.

[Reinhold is excused.]

Oracle calls Tiki Dare. [PJ: Marilyn Tiki Dare is an Oracle attorney. Here's her picture.]

Rebuttal Testimony of Tiki Dare

Oracle: Ex 1078.

Objection - Sustained for now.

Tiki Dare: I work at Oracle, Redwood shores.  Managing counsel for trademarks and copyrights.  I'm the custodian for copyright docs.

Oracle: How familiar with the Java 5.0 specs?

Tiki Dare: Very familiar.

Tiki Dare: Those files were maintained by Fenwick, but Fenwick had to withdraw, so August of 2010 we became custodian of those records.

Oracle: 1078 and 1081.

Tiki Dare: 1078 is a letter from Fenwick to Register of Copyrights to request copyright [registration] for Java 5.0.

Oracle: What's 1081?

Tiki Dare: A cover letter from Fenwick to Register of Copyrights for Java 1.4.

Oracle: Are there stamps?

Owen Astrachan: Yes, stamped received by Copyright Office.

Oracle: Offered into evidence.

Cross Examination of Tiki Dare, by Google
Google: Exhibit 1078, 12/20/2004.

Google: There's some reference in this doc to a CDROM. Can you testify that a CDROM was sent to the CR office from your first hand knowledge? Tiki Dare: I don't have first-hand knowledge.

Google: Can you testify what the disk has?

Tiki Dare: No.

Oracle Redirect of Tiki Dare
Oracle: Have you examined the file?  Look at 1076.

Tiki Dare: CDROM for Java 5.0.

Oracle: What did you do to confirm that 1076 was actually in the file?

Tiki Dare: I examined the file, it looks like a Fenwick file.  It's in the place where we expect it to be.  The number of bytes was the same.

Oracle: 1077.

Tiki Dare: first page is cover and packaging of Java CD, label, and back of packaging.

Oracle: Offer into evidence 1078, and 1081, and 1077.

ReCross of Tiki Dare, by Google
Google: Is there anything about the letter 1078 that indicates that the disk that was marked 1076 was submitted?

Tiki Dare: The opening paragraph reads that this refers to Java 5.0.

Google: Can you testify under oath that the disk marked as 1076 is in fact a copy of the disk that was in fact sent to the Copyright Office on 12/2004?

Tiki Dare: I can tell you...

Google: Just answer yes or no.

Tiki Dare: Not with personal knowledge.

Google: Same objection.

Re-re-Direct of Tiki Dare by Oracle
Oracle: Can you describe your familiarity with Fenwick & West's systems?

Tiki Dare: Lots and lots. I have high confidence that this is the right disk.

Oracle: Renew our offer into evidence.

Judge: Objection overruled 1078 etc. in evidence. But I do have this caveat for the jury.  You'll hear more in the closing arguments.  There might be a dispute over what was registered and was not registered. The letter with the ribbon said it was submitting *something*.  There was another letter from the Copyright Office saying it wasn't submitted. There is a possible question there - was it submitted to the Copyright Office, or was it not submitted?

10:45 - Jury out.

Talking about Mr. Gupta getting excluded, lacking foundation.

Oracle: Sun employee.  Competent.

Judge: Positions don't mean a thing.  Both sides have gotten away with murder.  Why don't you just rely on the real documents, real license agreements? As opposed to someone coming in saying "oh, it was always our practice".  At some point, that's gotta come to the end.  That's the 403 point.

Oracle: But Mr. Schwartz's testimony yesterday. But Mr. Gupta that was in charge of licensing testifies the opposite.

Judge: But Mr. McNealy gave testimony yesterday.  Just platitudes. Give me 4 lines that are short and sweet and maybe I'll reconsider.

Oracle: The license was required to use the TCK even.

Judge: OK, I'll allow that.

Oracle: Can I read the foundational aspect?

Judge: OK, I'll allow that.

Judge: Is that your last thing?

Oracle: No, then Ms. Katz.

Judge: How much time left?  [Judge calculating.]

982 minutes.  You have 38 minutes left.   [Google has used 995 minutes.  For the first time, they've used more.]

Update 3: And now the final part of our report, taking us to 1 PM:

11:10am

[judge / jury back]

Oracle calls back its expert Dr. John Mitchell.

Rebuttal Testimony of Dr. John Mitchell

Oracle: You were here during Dr. Astrachan's testimony.

Dr. John Mitchell: Yes.

Oracle: "Completely different."

Dr. John Mitchell: Yes, I heard that.

Oracle: Your opinion on that.

Dr. John Mitchell: The code may be written differently, it's written to the same specification. Therefore it has the same functionality.

Oracle: SSO.

Dr. John Mitchell: Code is organized according to the API. All is dictated by the API.

Oracle: Let's look at a slide. 19. 610.2.

Dr. John Mitchell: This shows on the left the web display of java.nio. And Android on the right.

Oracle: This is just 1 page out of how many?

Dr. John Mitchell: Thousands of pages if you were to print the API. 37 packages at issue, 400 classes, 5,000 or more methods. Not even the tip of the iceberg. It's the snow on top.

Oracle: That snow is?

Dr. John Mitchell: In terms of the number of declarations.

Oracle: Stub implementation. Accurate description of similarities?

Dr. John Mitchell: Not really sure what a stub has to do with it. Methods without further implementing codes.

Oracle: What we're looking at here?

Dr. John Mitchell: These are the declarations in the source code file that are followed by additional executable code.

Dr. John Mitchell: This demonstrates the package hierarchy, the membership of classes in packages.

Oracle: Now slide 20.

Dr. John Mitchell: [some implementation code]

Oracle: What does this say about the level of copying?

Dr. John Mitchell: The declarations are literally copied into the code.

Oracle: Filing cabinet analogy. What do you think of that?

Dr. John Mitchell: File cabinet reminds me of a file system. I don't think it captures the depth and complexity of an API. Classes implement interfaces.

Oracle: (Puts up demonstrative titled "Google's Filing cabinet analogy disregards hierarchy relationships")

Oracle: What is this?

Dr. John Mitchell: java.nio I believe, buffer kind of classes.

Oracle: What would it take to make the filing cabinet analogy align with the hierarchies?

Dr. John Mitchell: One option is to toss it, which makes the most sense to me. Use the right terms, like package, class, method.

Oracle: Is the Android class libraries with Java class libraries?

Dr. John Mitchell: I think the point illustrated by this code is that for a given a piece of code, it may run on both platforms if the only thing it requires are things that are on both.

Oracle: But what about "run"?

Dr. John Mitchell: Well, to get things started, you need slightly different.

Oracle: Byte code.

Dr. John Mitchell: The process of producing byte code is different?

Oracle: Will compiled code work on both?

Dr. John Mitchell: No.

Oracle: So in sum, what would you say about the compatability?

Dr. John Mitchell: They overlap in concept, beyond the 37, they are different and incompatible.

Oracle: Could the Android developers have created their own APIs for all but the 61 classes and still use Java?

Dr. John Mitchell: Sure.

Judge: How many classes, 61?

Dr. John Mitchell: Yes.

Judge: Of the 37, how many packages does the 61 classes fall into?

Dr. John Mitchell: Maybe 3? java.lang, java.io.

Google cross-examines Mitchell
Google: They could have just written their own APIs?

Dr. John Mitchell: There are certainly reasons for reusing.

Google: What reasons would you have for reusing?

Dr. John Mitchell: They're well known, they're the result of a considerable amount of effort. They've stood the test of time. A large group of programmers have found them to be useful.

Google: They're not just well known, a lot of Java programmers have these methods memorized?

Dr. John Mitchell: Computer geeks have good memories.

Google: Is Professor Astrarchan a geek?

Dr. John Mitchell: Well, I mean it as a compliment.

Google: How many did he use, and did he get them exactly correct?

Dr. John Mitchell: Yes.

Google: Programmers expect to have these functionalities available to them, correct?

Dr. John Mitchell: On other platforms, who knows?

Google: What about Java?

Dr. John Mitchell: If you said "write something in Java", I think that might be the default assumption.

Google: If instead of using the specs in the Java platform, instead you used your own APIs, would they be able to use the names they memorized that they had used for years?

Dr. John Mitchell: True.

Google: So if you wrote new APIs, then experienced programmers would have to use new names.

Dr. John Mitchell: They would have to adapt.

Google: You talked about Dr. Astrachan's program that he wrote, and the entry point.

Dr. John Mitchell: Yes.

Google: You agree?

Dr. John Mitchell: Yes.

Google: What would you do if you want to make it work on Android, other than change Main?

Dr. John Mitchell: I think the code is fine, besides Main.

Google: You'd expect it to work on both Android and Java?

Dr. John Mitchell: Yes.

Google: So for those 4 method signatures, the Java and Android are compatible.

Dr. John Mitchell: Yes, that sounds like a great definition of compatible.

Google: 623 back up on screen. No, wait, 610.2. I want the one Mr. Jacobs used with the witness.

Google: Dr. Bloch's max function. Everything above here is the specification?

Dr. John Mitchell: Yes.

Google: What's missing is the human language specification of what it does?

Dr. John Mitchell: Yes.

Google: Everything above that has to be this way?

Dr. John Mitchell: Yes.

Google: So what we have on this chart are two things, what is being implemented, and its specification.

Dr. John Mitchell: That's one way to look at it, yes.

Google: But those elements in the exhibit you were talking to Mr. Jacobs about, those are specifications, not implementation?

Dr. John Mitchell: Yes.

Judge: [pins him down a bit]

Google: The parts you talked about with Mr. Jacobs, those are not part of the implementing code, if you exclude the declaration?

Dr. John Mitchell: Yes.

Google: So Dr. Astrachan said that the implmenting code is completely different?

Dr. John Mitchell: I disagree.

Google: Why?

Dr. John Mitchell: The declarations are part of it.

Judge: Putting aside the declarations.

Dr. John Mitchell: I agree they're different.

Google: There are no lines of code that are the same, if you exclude the declaration and specification, there are *no* lines of code that are the same?

Dr. John Mitchell: I didn't really go through line by line.

Google: But earlier you identified 9 lines of range check code.

Dr. John Mitchell: Yes.

Google: You understand those are out of Android now.

Dr. John Mitchell: That may be.

Google: Assume that those 9 lines, and those test files are out. Then you couldn't identify a single line of code that would be copied?

Dr. John Mitchell: I can't identify from recall.

Google: Stub implementation are well known?

Dr. John Mitchell: Stubs are well known.

Google: Would the stub implementation include everything that you referred to as the SSO?

Dr. John Mitchell: Yes.

Google: The method signatures?

Dr. John Mitchell: Yes.

Google: And you heard his testimony about how much it would take to make a stub?

Dr. John Mitchell: Yes, 7,000 is reasonable.

Google: If it is 7,000, out of 298,000, that would be about 2.4%?

Dr. John Mitchell: Sounds about right.

Google: But out of all the lines, it would be about 0.25%?

Dr. John Mitchell: I believe your calculator.

Google: May be 10,000?

Dr. John Mitchell: Yes.

Google: Still same order of magnitude, 3% or 0.4%

Dr. John Mitchell: OK.

Google: For all 37 packages, the source code tells us which version of the Java it first appears in? Since 1.4, 1.2, etc.?

Dr. John Mitchell: Yes. I don't know how accurate they are.

Google: What else could "since 1.4" be?

Dr. John Mitchell: That seems like the straightforward explanation.

Google: arrays.java has been in Java for a long time (that rangecheck is in)?

Dr. John Mitchell: Yes.

Google: If the source file says it was in there for a long time.

[incontrovertible]

ReDirect of Dr. Mitchell by Oracle
Oracle: What's the significance of the 7,000 lines of code?

Dr. John Mitchell: Those 7,000 lines of code express that SSO.

[Dr. Mitchell steps down]

Oracle moving into evidence Google's 10-K. 3215.

Google objects. Oracle presents an email saying Google agrees.

"More individuals are using non-PCs to access our services."

[Now Oracle reads the deposition testimony from Vineet Gupta, that they were discussing previously.]

[Vineet worked at Sun. Licensing. Since before 2005. Responsible for Sun's overall licensing strategy. A licensee was required to pass the TCK even if they were to use the Java brand? Answer: Yes.]
Now Oracle calls Ms. Safra Katz.

Testimony of Safra Katz

Safra Katz: Employed at Oracle since 1999. President and CFO and on the board of directors.

Oracle: Familiar with Apache Harmony?

Safra Katz: Yes.

Oracle: To what extent did you support them?

Safra Katz: We never provided any financial support or anything to them.

Safra Katz: We never used anything from the Harmony project. We never considered using anything from Harmony. We had a license from Sun for our own implementation.

[

Update 5: PJ: Well, that depends on who "we" is. Sun certainly was involved. For just one small exmaple, here's the list of talks at JavaOne in 2007, and you will see two presentations about Apache Harmony:

Jumping down the page, you find the three sessions involving Apache Harmony:

As you can see, not only were leaders of the project invited, they shared the stage with Simon Phipps, then a Sun employee, and Mark Reinhold, who testified for Oracle, shared the stage as well with Apache Harmony guys in the same presentation. So when she says "we", I think she means Oracle only. And since Oracle seems to be making a U-turn away from Sun policies, that's probably truthful, although I haven't researched it yet. But it's misleading.]

Oracle: Oracle filed this litigation...

Safra Katz: We never wanted to be in this litigatoin. We reached out to them on many occassions. I met with Alan Eustace.

Oracle: When did these meetings take place?

Safra Katz: We acquired Sun in January 2010. After that. I met with Alan Eustace; it was about June 2010. May maybe.

Oracle: What is it that you were trying to accomplish?

Safra Katz: We had 2 objectives. Bring Android into Java compatability. And 2, get Android licensed.

Oracle: Focusing on the meeting, what did you express?

Safra Katz: We laid...

Objection. Overruled.

Judge: [To the jury.] This case should not be decided based on whoever was holding out for more money. This has nothing to do with what you should decide.

On every single issue, you have to decide under the law who was right and who was wrong. And it doesn't matter who was reasonable in negotations.

Say there's an auto accident. Say one side wants a lot of money, and the other side doesn't. That's irrelevant. They just decide based on the facts of the accident. So I just wanted to let you know that this is irrelevant testimony.

The only reason I'm letting this in is because the accusation that greed is a motive. But you the jury decide the case based on law, not on personality, celebrity witnesses, etc.

So the one side of the negotation that we're about to hear about is irrelevant.

Now I want to say to you lawyers. Yes, you're right, that suggestion [greed] has been made.]

Oracle: To what extend did you express Oracle's position?

Safra Katz: I told him that Android needed to be licensed because of our IP and they need to become compatible. Eustace asked "what IP"? We made a financial proposal.

Oracle: Was it discussed if Google would remove Java?

Safra Katz: He said they could take Java out of Android, and I said that's what they'd have to do.

Oracle: 1074.

Safra Katz: This is the email that Eustace sent me.

Oracle: 7/28/2010. "I discussed your proposals with engineers, founders, etc., and they're not acceptable. We will not pay for code we are not using." Any other reasons?

Safra Katz: No, these are the reasons he gave me.

Oracle: To what extent did he ever say "Google doesn't need a license because Java is free to use"?

Safra Katz: He never said that.

Oracle: After the email, did you make any further efforts?

Safra Katz: Say that again?

Oracle: Any other efforts to resolve the dispute with Google?

Safra Katz: I think there were a few more conversations.

Oracle: Successful?

Safra Katz: No, that's why we're here.

Oracle: Did you talk to Jonathan Schwartz?

Safra Katz: I had a few.

Judge: 3 minutes to go.

Oracle: 2362. Is this email you received from Mr. Schwartz?

Safra Katz: Yes.

Oracle: Before and after, did Mr. Schwartz ever suggest that Google's use of Java was OK?

Objection - Sustained.

Cross Examination of Safra Katz, by Google's Christa Anderson

Google: Never employed by Sun, correct?

Safra Katz: Correct.

Google: No personal knowledge of what Sun represented to Google, correct?

Safra Katz: Correct.

Google: You are aware of the Java business at Oracle?

Safra Katz: Yes.

Google: You agree that the Java client business has been on the increase about 10% a year?

Objection, scope - sustained.

Google: Since Oracle acquired Sun, you are aware that Oracle has asserted rights against Google?

Safra Katz: Yes.

Google: Do you have any reason to dispute Mr. Schwartz? Isn't it true that you have no first-hand knowledge that Mr. Schwartz's policy was to treat Java APIs as freely available?

Judge: Non-starter queestion.

Google: You wanted to assert IP against Google?

Google: And this is after Oracle thought about but did not pursue a Java phone? Safra Katz: Yeah, hard to compete with free.

Google: And then you went to Google and started to demand licensing?

Safra Katz: Correct.

Google: Exhibit 1074 - that was the response from Google?

Safra Katz: Yes, that's what he wrote in the email.

Google: Your compensation is 10's of millions of dollars?

Safra Katz: I'm the American dream.

Google: The only [person] more shares than you is Mr. Ellison?

Safra Katz: Correct. Well, among employees.

[Oracle rests the rebuttal.]

Judge: We've now reached the end of the road on evidence.

Next is closing statements. That will take about 3 hours, counting both sides. And in addition, I have to tell you what the law is.

Closings on Monday (probably).

12:15 - jury leaves.

xlb tells me that he thinks he heard that the judge and the lawyers will be back at 2 PM. I'm trying to find out what that's about, but it's moot in that our reporter has to leave, and we didn't plan on an afternoon session.

Update 4: Meanwhile, here's Caleb Garling's coverage of the day on Wired. And Oracle has made today's exhibits [PDF] available on its website. But be aware that it's very large, 81 scanned pages.

And ars technica has the full email to Safra Katz, emphasis mine:

Near the end of those negotiations, Google engineer Alan Eustace wrote to Catz, rejecting her company's demands that Google pay up for Android. That e-mail, which was shown to the jury, reads as follows:
Safra,

I have discussed your proposals with Google engineers, lawywers, founders, and executives, and they are not acceptable. We will not pay for code that we are not using, or license IP that we strongly believe we are not violating, and that you refuse to enumerate. Google engineers spent considerable time and effort building from scratch open source alternatives to closed systems. This effort is one that we believe is important to Google and our partners.

Google and Oracle have a great opportunity to work together to make Java the preferred choice for mobile, client, and server computing. Your customers are begging for mobile solutions, and your enterprise business will depend on delivering them. We want to be your partner, but this discussion seems to be going in the wrong direction.

Alan

Update 6: The parties discussed jury instructions, and they are not done yet. The judge has issued an order which says:

The Court will try to provide the jury instructions to counsel on Sunday night (April 29) by ECF and in that regard, request counsel to meet-and-confer about a way to delete all references to indirect infringement. Please let the Court know about indirect infringement by NOON ON SATURDAY, APRIL 28."
Here's the docket entry and the PDF:

04/27/2012 - 998 - NOTICE [re jury instructions and "indirect infringement]. Signed by Judge William Alsup on 4/27/2012. (whasec, COURT STAFF) (Filed on 4/27/2012) (Entered: 04/27/2012)

I gather Oracle is no longer making any claim for indirect infringement, but we'll have to wait until we see the final jury instructions to be sure. I don't recall any evidence at trial about indirect infringement, now that I think of it.

If you recall, however, Oracle's complaint, the first one, mentioned indirect infringement in paragraph 46:

46. As a direct and proximate result of Google's direct and indirect willful copyright infringement, Oracle America has suffered, and will continue to suffer, monetary loss to its business, reputation, and goodwill. Oracle America is entitled to recover from Google, in amounts to be determined at trial, the damages sustained and will sustain, and any gains, profits, and advantages obtained by Google as a result of Google's acts of infringement and Google's use and publication of the copied materials.
Evidently not so much after all. Oracle's Amended Complaint mentioned indirect infringement also. But if Oracle were concerned about its reputation and goodwill, it wouldn't pursue the offensive API claims, I don't think. Because the whole world is watching. And I have yet to find, amid the numerous article blasting Oracle for doing this, even one that says it's perfectly fine or justifiable. Well, OK. But he's paid by Oracle. That truly doesn't count. Maybe negatively, speaking of reputation.

Update 7: We have the trial exhibits for this day, 2012-04-27:

  • 0465.pdf [Labor Services Agreement between Sun and CNS Publishing, Inc. "(Supplier)"; dated 2000-07-20.]
  • 0466.pdf [Labor Services Agreement between Sun and Mary Dageforde DBA Dageforde Consulting; dated 2000-12-22.]
  • 0467.pdf [PrO Unlimited Exempt Employee Services Agreement (Programmers - Computer Professionals); Client = Sun Microsystems; dated 2005-06-02 ]
  • 0468.pdf [Labor Services Agreement between Sun and Chet S. Haase; dated 2000-06-14]
  • 0469.pdf [PrO Unlimited Employee Services Agreement (Programmers - Computer Professionals) for Scott A. Hommel; dated 2000-08-14]
  • 0470.pdf [Acceptance Certificate ("services were rendered pursuant to agreement") between Sun and Elbrus MCST - J2ME Wireless Toolkit; Sun Cluster Automated Test Suite Development; Solaris Sustaining; Solaris Networking Test Development; SPARC Compiler Backend; mediaLib; Java Telematics Technology 1.0; Consumer and Mobile Systems Group (CMSG) Software Quality Engineering; Solaris Kernel and Data Services; Java2D; AWT and Swing; Java Studio Enterprise (Previously Sun One Studio Zebra/Stripes); Carlisle (Sun Java System Content Delivery Server); HPT QA; Project Rave, Hammerhead (Previously Sun ONE Studio, WebApps module); CLDL HI Development; Projects FOX, CPU2004 Analysis, GCC2IR, and Bytecode Optimizer (BCO); TCK Tools; JCCE (J2SE TCK work); C and C++ Compiler Front End Work; Developer Platform Group (DPG) Sustaining; Consumer and Mobile Systems Group J2ME TCKs; Jini Software Quality Assurance and Software Quality Engineering. Dated 2004-07-01.]
  • 0471.pdf [Acceptance Certificate between Sun and Moscow Center of SPARC Technology - Forte for Java; Sun ONE Studio etc. Dated 2002-08-31.]
  • 0472.pdf [Master Services Agreement between Sun and supplier Select Appointments (Holding), PLC dba New Boston Systems, Accountant's Inc., AccountPros]
  • 0477.pdf [Master Services Ageement between Sun and PrO, Unlimited, Inc. Dated 1999-12-22.]
  • 0478.pdf [Worker Confidentiality and Assignment Agreement (Sun) - Scott Hommel - Dated 2000-08-01]
  • 0479.pdf [Worker Confidentiality and Assignment Agreement (Sun) - Maydene Fisher (PrO Unlimited) - Dated 2002-11-25]
  • 0480.pdf [PrO Unlimited Non-Exempt Employee Services Agreement - Eric Armstrong - Dated 1997-06-09]
  • 0481.pdf [Employment Agreement (The Carl Group) - Jamie Ho - dated 2002-01-24]
  • 0482.pdf [Master Services Agreement between Sun and Carl Group, Inc. (The) - dated 1998-10-01]
  • 0483.pdf [Master Services Agreement between Sun and Venturi Partners ("now Comsys") - part 2/2 - dated 2002-08-01]
  • 0484.pdf [Master Services Agreement between Sun and Venturi Partners ("now Comsys") - part 1/2 - dated 2002-08-01]
  • 0485.pdf [Employment Agreement (BAL Associates, Inc.) - Michael/Mike Bronson - dated 1997-08-15]
  • 0486.pdf [Contingent Workforce Supplier Agreement between PrO and Venturi Partners - dated 2004-08-05]
  • 0487.pdf [Master Services Agreement between Sun and TelTech International Corp. - Jürgen Kreileder - dated 2000-03-01]
  • 0488.pdf [Agreement (subcontracting) between Sun and ZAO "Elbrus MCST" (Russia) - dated 2002-09-01]
  • 1074.pdf [Email from Alan Eustace, Google, to Safra Catz, Oracle - "We will not pay for code that we are not using" - dated 2010-06-28]
  • 1076.pdf [Color photocopy of a CD - Getting Started with J2SE 5.0 - stamp placement suggests the exhibit is the CD, not the photocopy]
  • 1077.pdf [B/W photocopy of a CD and its cover - Getting Started with J2SE 5.0 - the exhibit is the photocopy]
  • 1078.pdf [Request for Registration of Copyright in Computer Program - Java 2 Standard Edition, Version 5.0 - dated 2004- 12-20]
  • 1081.pdf [Request for Registration in Computer Program - Java 2 Standard Edition 1.4 - dated 2005-04-20]
  • 1082.pdf [License Agreement + Amendment 1 - Sun licensing Unicode framework from Taligent/IBM for Java - dated 1996- 07-17, 1996-07-19]
  • 1084.pdf [Java Specification Participation Agreement - Steven Knudsen (PsiNaptic Inc.) - dated 2001-06-14]
  • 1085.pdf [Java Specification Participation Agreement - Olivier Lefivre - dated 2002-12-08]
  • 1086.pdf [Java Specification Participation Agreement - InnoTek GmbH - dated 2003-02-18]
  • 1087.pdf [Java Specification Participation Agreement - SymSoft AB - dated 1998-12-15]
  • 1088.pdf [Java Specification Participation Agreement - Exabyte Corporation - dated 1999-05-05]

Update 8: All the trial exhibits are now available as PDFs here. Some are also done as text. Look for the date nearest the day, as they are listed by the date they were entered, which could be a day or so after the date of their use in the courtroom.


  


Day 10 Oracle v. Google Trial ~pj - Updated 8Xs - Oracle Exhibits, Astrachan, Reinhold, Dare, Mitchell, Katz | 687 comments | Create New Account
Comments belong to whoever posts them. Please notify us of inappropriate comments.
Corrections Thread
Authored by: bugstomper on Friday, April 27 2012 @ 12:49 PM EDT
Please summarize in the Title box error->correction or s/error/correction/ to
make it easy to scan to see which errors have already been posted.

[ Reply to This | # ]

Oracle: The work as a whole...
Authored by: Anonymous on Friday, April 27 2012 @ 12:52 PM EDT
...is whatever will stop Google from using a de minimis
defense.

More specifically, I'm reading this as Oracle still saying
the work as a whole is whatever they're accusing Google of
infringing on...

Of course, they still claim copyright on the rest of Java...
don't they? Or does doing this mean the entirety of the rest
of Java is now on record as being not protected (if this is
allowed to stand, since there's only one copyright filing)?

[ Reply to This | # ]

Off Topic threads
Authored by: bugstomper on Friday, April 27 2012 @ 12:53 PM EDT
Please stay off topic in these threads. Feel free to make your posts pretty and
your URLs clickable by posting in HTML Formatted mode

[ Reply to This | # ]

News Picks Thread
Authored by: bugstomper on Friday, April 27 2012 @ 12:56 PM EDT
Please Pick your News here. Put the title of the News Picks article in the Title
box and include the link to the article in your comment, preferably clickable
using HTML Formatted mode, for the convenience of readers after the article has
scrolled off the sidebar.

[ Reply to This | # ]

Comes transcripts here
Authored by: bugstomper on Friday, April 27 2012 @ 12:58 PM EDT
Please post your transcriptions of Comes exhibits here, with full HTML markup
but posted in Plain Old Text mode to make it easy for PJ to copy and paste your
work.

[ Reply to This | # ]

Summary of Positions
Authored by: maroberts on Friday, April 27 2012 @ 01:00 PM EDT
What we could do with is a summary of what is still in dispute over copyright,
as it seems that both sides have moved from the positions at the start of the
trial.

[ Reply to This | # ]

Google's knock-out punch loses steam?
Authored by: Anonymous on Friday, April 27 2012 @ 01:01 PM EDT
"...Google would be held to its earlier statement that it wasn't challenging Oracle's ownership of the copyrights..."

I see a potential [small] hole in Google's summary judgement request filed just two days ago. Do you see it too?

[ Reply to This | # ]

Last moment change in direction?
Authored by: Anonymous on Friday, April 27 2012 @ 01:18 PM EDT
Isn't this a case of: Oracle saying, 'Oh, you just kicked
the only goal in the game of soccer, but we never said we
were playing soccer (even after all the shots we took at
your goal), no, actually we're playing darts. We've always
been playing darts.'

How could the judge let Oracle change the characterization
of what they were disputing the moment before it goes before
the jury? I mean - all of Google's work was aimed at one
characterization, and while there may be applicability to
some other situation, it's hardly fair to change the
rules/game in the dying moments.

[ Reply to This | # ]

Day 10 Oracle v. Google Trial ~pj - Updated
Authored by: Anonymous on Friday, April 27 2012 @ 01:30 PM EDT
IANAL, but it sounds to me like the Court needs to do a
complete reset on this case.

Judge to jury: "Ignore everything up 'til now."

R i g h t ....

[ Reply to This | # ]

Method of Operation
Authored by: Anonymous on Friday, April 27 2012 @ 01:57 PM EDT
OK, silly question time (decade-long lurker here).

Why haven't we heard from any of G's witnesses the magic phrase: "Method of
Operation"?

After all, that's what the API is; it's the method by which a programmer uses
the (compiled, written-by-someone-else) libraries.

We've established that the library implementation code is a "computer
program", is protectable, hard to write, etc. The only way you can USE or
OPERATE that library, if someone happened to give you a copy, is via the API. I
guess you could use it as a digital doorstop, but they're not really useful.

After all, here we have precedent. The Borland case turned on the menus being a
method of operation. The BIOS case (IBM/Phoenix) was legally fine, I believe,
because the BIOS interface is the method by which any software on the computer
operates the computer.

And we have the wonderful power of that phrasing, which is this: the
black-letter text of the law in question absolutely, categorically, excludes
copyright protection from any "method of operation".

I think that Professor Astrachan, in Google's direct questioning, came closest
to this.

But any ideas as to why nobody has used this terminology? I have to think that
the other side would try to object, but it would be a blindingly bright
indicator to our good Judge about how truly ridiculous this copyright charge is.

[ Reply to This | # ]

I love it!
Authored by: Gringo_ on Friday, April 27 2012 @ 01:58 PM EDT
They are looking at some code...

public static void Main(string [] arg)

Judge: That thing about public class public static…
Judge: Does public mean you're donating it to Java?

Owen Astrachan: No.

Judge: Then whey don't you make it private?

That is hilariously funny to a programmer!

[ Reply to This | # ]

Priceless tweet -- "Srsly?"
Authored by: Anonymous on Friday, April 27 2012 @ 02:01 PM EDT
Jonathan Schwartz ‏ @OpenJonathan

Under oath, u said my blog was personal, not Sun communication? Srsly? :)
web.archive.org/web/2008041619…
Retweeted by Lee MacKinnell

[ Reply to This | # ]

java.math.max
Authored by: Anonymous on Friday, April 27 2012 @ 02:04 PM EDT
All the focus on this function is a little curious to me. I work mostly in C
and shell scripts, so not really that familiar with java, but does java not have
a > function? You know, as in:

if (x > y) return x; else return y;

Do we really need to waste a function call on this?

just curious
dpa

[ Reply to This | # ]

Day 10 Oracle v. Google Trial ~pj - Updated
Authored by: Anonymous on Friday, April 27 2012 @ 02:08 PM EDT
"Judge: Does public mean you're donating it to Java?"

I wonder how can the judge and jury judge a case if they have
no idea what's being talked about at all.

[ Reply to This | # ]

Day 10 Oracle v. Google Trial ~pj - Updated 2Xs
Authored by: kuroshima on Friday, April 27 2012 @ 02:35 PM EDT
Is it me, or the good professor just dealt another blow to
Oracle's case? If the judge and jury ever grok a little of
the tech, they will start seeing through Oracle's smoke and
mirrors. I assume that, lawyers being smart people, they
called him last to have him create an impression that lasts
until the deliberation, and isn't washed away by time, but
maybe having him first would have helped put everything else
in context.

I assume being a lawyer is partly like being a poker player,
it's important to know when to show one's hand.

[ Reply to This | # ]

Under oath, u said my blog was personal, not Sun communication? Srsly? :)
Authored by: SilverWave on Friday, April 27 2012 @ 02:40 PM EDT
Jonathan Schwartz ‏ @OpenJonathan

Under oath, u said my blog was personal, not Sun communication? Srsly? :)
http://web.archive.org/web/20080416195557/http://blogs.sun.com/jonathan/entry/co
mments_on_q2

---
RMS: The 4 Freedoms
0 run the program for any purpose
1 study the source code and change it
2 make copies and distribute them
3 publish modified versions

[ Reply to This | # ]

if only the jury had heard some of this earlier...
Authored by: xtifr on Friday, April 27 2012 @ 02:44 PM EDT
Finally, after days of testimony referring to various technical terms, we
actually get someone who provides a reasonably clear explanation with examples.
If the jury had heard some of this first, they might have had some idea of what
those other people were talking about. Now they have to try to remember what
those people said, and re-interpret it in light of their new knowledge.

Makes me wonder if it wouldn't be better for the courts to have the experts
(from both sides) testify first, before any witnesses are called. Is there some
reason that would cause problems?

---
Do not meddle in the affairs of Wizards, for it makes them soggy and hard to
light.

[ Reply to This | # ]

"Greed is at work here." - Alsup, in reference to the entirety of the case.
Authored by: SilverWave on Friday, April 27 2012 @ 03:07 PM EDT
Caleb Garling ‏ @CalebGarling

"Greed is at work here." - Alsup, in reference to the entirety of the
case.

---
RMS: The 4 Freedoms
0 run the program for any purpose
1 study the source code and change it
2 make copies and distribute them
3 publish modified versions

[ Reply to This | # ]

Safra Catz: It's pretty hard to compete with free.
Authored by: SilverWave on Friday, April 27 2012 @ 03:14 PM EDT
Rachel King ‏ @ZDNetRachel

Safra Catz: It's pretty hard to compete with free.

---
RMS: The 4 Freedoms
0 run the program for any purpose
1 study the source code and change it
2 make copies and distribute them
3 publish modified versions

[ Reply to This | # ]

Oracle going for a mistrial?
Authored by: Anonymous on Friday, April 27 2012 @ 03:15 PM EDT
This thing is shifting so much, will the opening statements to the jury end up
being irrelevant? The testimony, too? I get the feeling that Oracle will keep
changing its case so often, nobody, including the jury, will be able to tell why
they're all in court. A mistrial technically spares Oracle adverse verdicts, but
it will still make them a laughingstock. And will that affect the market's
opinion of their products?


[ Reply to This | # ]

Wow indeed the wheels have just came off for Oracle (took me 2min to see the Judge asked this)
Authored by: SilverWave on Friday, April 27 2012 @ 03:31 PM EDT
Judge: You said you reviewed the 37 along with others. Did you review them to
see if there was an affirmative statement of ownership by Sun, or did you review
them to see if there an absence by others?

Dr. Reinhold: Looked for affirmative. [clarifies] Some might not have
notifications. For which I assumed some Sun engineer was sloppy and forgot to
put it.

[PJ: Wow. I wonder if this means Oracle can't prove it actually owns the 37?
That's one of the requirements to prevail on a copyright infringement claim. As
we now see, this isn't just some "technicality".]

---
RMS: The 4 Freedoms
0 run the program for any purpose
1 study the source code and change it
2 make copies and distribute them
3 publish modified versions

[ Reply to This | # ]

Day 10 Oracle v. Google Trial ~pj - Updated 2Xs
Authored by: Anonymous on Friday, April 27 2012 @ 03:31 PM EDT
For a company that supposedly provides a reliable, rock solid
data base, their uncertaintly as to what they own or do not
own does not look good at all.

[ Reply to This | # ]

They (Google) have the right to be mean and nasty - which is what I think they're doing here.
Authored by: ewilts on Friday, April 27 2012 @ 03:58 PM EDT
There are a couple of things at play here.
1. Oracle is paying external lawyers. Why shouldn't Google be mean?
2. Oracle is on the clock. If Google can help force Oracle to run out of time
dealing with trivial stuff, why shouldn't they?

[ Reply to This | # ]

Structure, Sequence, and Organization vs. Selection and Arrangement
Authored by: Anonymous on Friday, April 27 2012 @ 04:04 PM EDT
It's been bothering me for a while that I have been seeing "structure, selection, and organization" (incorrect) used instead of "structure, sequence, and organization" (correct) to refer to non-literal copyrightable elements of computer programs. I've been trying to figure out where this sloppiness came from, and how it proliferated to groklaw where people are usually more precise in the legal and technical terms that they use.

I think I have found the culprit(s): both Oracle's and Google's lawyers have been using these terms in a sloppy manner, both in their copyright briefs and now apparently in court. For the briefs you can look at 900 from Oracle and 897 from Google.

On page 11 in 900 Oracle conflates the protection for "selection and arrangement" (which covers protected non-literal elements of a compilation) with the protection of structure, sequence, and organization given to the non-literal elements of computer programs.

Similarly in 897 Google has adopted the phrase "structure, selection, and organization" and used it several times in their brief. In today's report we have counsel for Google using the phrase again (just prior to 8:55).

I would have expected that their expert copyright lawyers would have reviewed these briefs, noticed the errors, and corrected them. I expect that when this gets before an appeals court they will do so in order to avoid looking sloppy and rushed. I'm not sure if it would make a difference, but it might if it creeps into the decision as what is protected in each case is subtly different.

It's also possible that these errors crept in earlier in the case, but I haven't looked further back than that

Of course, don't take my word for it that this is wrong - try comparing the results for "structure selection organization copyright" and "structure sequence organization copyright" (without quotes) in your favorite search engine.

On an unrelated note: why do I now find groklaw in my google search results for "structure selection organization copyright" - I thought that groklaw was not supposed to get indexed?

[ Reply to This | # ]

Have to say this Trial has been... Awesome :-)
Authored by: SilverWave on Friday, April 27 2012 @ 04:13 PM EDT
Loads of fun.

Shocks.

High drama.

:-)

The tweet feed from @Feldegast has added immeasurably to the whole experience.

The transcripts from our own indefatigable Groklaw reporters has provided the
full IMAX 3D Experience.

You guys rock!

---
RMS: The 4 Freedoms
0 run the program for any purpose
1 study the source code and change it
2 make copies and distribute them
3 publish modified versions

[ Reply to This | # ]

Maybe Google did lose on the big fat manual
Authored by: Anonymous on Friday, April 27 2012 @ 04:14 PM EDT
No, they didn't copy it directly but the SSO is visible clearly there. Thats a
ruling. let us keep something

They concede the code, because now we're applying federal standards to copyright
for source code and because the judge keeps insisting on names not being
protected and accidentally having witnesses point out exactly what he's talking
about while asking them to make sure that its not him that has to throw their
case out while they could still choose to walk away equitably

The Special verdict form is not riddled with mistakes, but invitations

And the good Judge is asking if google really need to assert ownership, when the
documentation SSO is a copyright oops, the source code is never going to fly for
oracle, and whatever you've already conceded the rest, so its over to the jury

Meanwhile Van Nest is pointing out to Oracle that if it doesn't reign it's horns
in and get reasonable real soon its going to discover that there is in fact NO
copyright in Java 1.50SE and the view from Larrys yacht might start looking a
bit eggy RSNF.


or not


jus' speculatin'

[ Reply to This | # ]

Peters highlighted an email conversion from Google’s Alan Eustace to Catz
Authored by: SilverWave on Friday, April 27 2012 @ 04:22 PM EDT
Peters highlighted an email conversion from Google’s Alan Eustace to Catz>

---
RMS: The 4 Freedoms
0 run the program for any purpose
1 study the source code and change it
2 make copies and distribute them
3 publish modified versions

[ Reply to This | # ]

Day 10 Oracle v. Google Trial ~pj - Updated 2Xs
Authored by: Anonymous on Friday, April 27 2012 @ 04:47 PM EDT
Google: "Would it run, compile on other platforms." Would you have written it differently for Android?

Owen Astrachan: I'd change the entry point, from Main(), to something else.
Reminds me of [urban legend?] when Kernigan (Ritche?) was asked if they were designing Unix again what they would do differently, to which the answer was "Spell creat() with an 'e'."

I suppose main() would be the copyrighted API (the programmer interface that is used by the application to connect with the OS) of C; how about "Entrypoint"? Oops, that would be the copyrighted API of Babbage (on OS4000)...

[ Reply to This | # ]

Day 10 Oracle v. Google Trial ~pj - Updated 2Xs
Authored by: Anonymous on Friday, April 27 2012 @ 04:47 PM EDT
Who is Mr. Gonsalves ? What role did this person play? I
didn't understand that from seeing his name mentioned twice.

[ Reply to This | # ]

Wigs and quills
Authored by: Anonymous on Friday, April 27 2012 @ 04:48 PM EDT
>>Google: Can you testify under oath that the disk marked
as 1076 is in fact a copy of the disk that was in fact sent to
the Copyright Office on 12/2004? <<

Hellooo, it's the 21st century. Why are we arguing about photocopies
of computer discs? I think the Judge recognises we have a problem
here, but he's not sure (!?) what to do about it...

>> Judge: Objection overruled 1078 etc. in evidence. But I do have
this caveat for the jury. You'll hear more in the closing arguments.
There might be a dispute over what was registered and was not registered.
The letter with the ribbon said it was submitting *something*. There was
another letter from the Copyright Office saying it wasn't submitted. There
is a possible question there - was it submitted to the Copyright Office,
or was it not submitted? <<

Sorry your Honor, the question is, "What was submitted?"
Was it at least the minimum 50 pages, or was it the blank disc
the Copyright Office now acknowledge to hold?

[ Reply to This | # ]

Don't know all capitalization.
Authored by: Anonymous on Friday, April 27 2012 @ 04:51 PM EDT

I don't know how to get the indentation right (groklaw's subset of HTML doesn't include the <pre> tag.), but I can show the proper capitalization, if anyone's interested. Namely, main, String, InputStream, openStream, System.

public class WebReader {
public static void main(String [] arg) {
 java.net.URL site=new java.net.URL("http://cnn.com/");
 java.io.InputStream source = site.openStream();
 System.out.print(source.read());
}
}

Notes

  • The program doesn't have any error handling, so it won't compile. One of several ways to fix that would be to change main's declaration from "main(String[] arg) {" to "main(String[] arg) throws java.io.IOException {".
  • source.read() only reads one byte from the cnn.com web site, so the program as written only writes one byte to System.out.
  • source.read() returns the value of the byte read from cnn.com as an integer. The program prints "60", because 60 is the ASCII representation of '<', the first character that cnn.com sends back. It's the '<' at the beginning of the "<html>" tag that begins the HTML of their home page.
  • [ Reply to This | # ]

Day 10 Oracle v. Google Trial ~pj - Updated 2Xs
Authored by: Anonymous on Friday, April 27 2012 @ 05:01 PM EDT
Judge: You said you reviewed the 37 along with others. Did you review them to see if there was an affirmative statement of ownership by Sun, or did you review them to see if there an absence by others?

Dr. Reinhold: Looked for affirmative. [clarifies] Some might not have notifications. For which I assumed some Sun engineer was sloppy and forgot to put it.
Wasn't it in the USL(?) vs BSD litigation that the BSD Copyrights were removed/missing from the USL(?) copies? ie they were unattributed as required by the BSD licence?

There are other possibilities for no notifications:
  1. They were removed; originally Sun (why do that internally? Very negligent)
  2. The were removed: not originally Sun (oops, we're copying other people's stuff; possible copyright infringement)
  3. They were not there and some non-Sun engineer was sloppy (again, possibility of copyright infringement, but possibly author was not too worried about ownership and was donating to Public Domain)
To have not considered at least the last 2 of these shows [a bit of] negligence on Reinhold's investigation. Or perhaps he did and found...oops...

[ Reply to This | # ]

Black box
Authored by: Anonymous on Friday, April 27 2012 @ 05:11 PM EDT
This question from the judge makes me very optimistic. He
now understands that what implements the API is not relevant
to what the API does as long as the result of using the API
is the same.

Subsequent questions also suggest he's rapidly coming up to
speed on this tortuous business of understanding what an API
is.

With these concepts in his head, he's going to find it much
easier figuring out why Oracle are wrong.

[ Reply to This | # ]

On the topic of concepts
Authored by: Anonymous on Friday, April 27 2012 @ 05:30 PM EDT
"Dr. John Mitchell: They overlap in concept,"


And maybe I'm imagining things (reads oh no, I@m going to have to read it
again), but I'm pretty sure that that was listed as one of the things is that is
not protected by copyright in the jury instructions

[ Reply to This | # ]

Just a guess...
Authored by: Anonymous on Friday, April 27 2012 @ 05:55 PM EDT
... but I suspect that the 2 PM session is about what the judge is going to tell
the jury after closing arguments on Monday. If I'm right, it means that we
won't get the blow-by-blow, but we'll get to see the results on Monday.

MSS2

[ Reply to This | # ]

  • Just a guess... - Authored by: Anonymous on Saturday, April 28 2012 @ 12:55 AM EDT
"Putting aside the declarations"
Authored by: Anonymous on Friday, April 27 2012 @ 06:04 PM EDT

Ya know... if I had to go to Court against someone who was unwilling to clearly represent their side of the case, I think I'd want Judge Alsup as my Judge:

Judge: Putting aside the declarations.
Dr. John Mitchell: I agree they're different.
He certainly does appear to be able to identify when someone is being deliberately evasive and likes to nail that evasiveness down. I'd want that in the Judge I was explaining my case to. For someone who wants to conflate the function call with the body of the function, that doesn't work so well.

I wouldn't at all be surprised if BSF had an opposing opinion.

RAS

[ Reply to This | # ]

It is OK for the judge to lead the witness?
Authored by: Anonymous on Friday, April 27 2012 @ 06:21 PM EDT
Google: And do they have to write that code exactly?

Objection - Leading.

Judge: Sustained. Try not to lead your own witness. [judge lecture on when it's leading, and when it's not.]

... but later on ...

Judge: Question about specification. Your description made it sound like a black box with something inside. You have input on that side and output on that side, and the spec says what the inputs gotta be, and the outputs gotta be, and the implementation is what's in the black box.

Owen Astrachan: That is a very good explanation. I like that explanation.

I really like that explanation too. But seeing this so soon after the previous made me wonder, how come it is OK for the judge to lead the witness whereas it is apparently a big no-no for the lawyers? I guess that is because he is the judge.

Don't get me wrong. I'm not complaining. His comment was insightful, made the testimony more clear, and was helpful. I guess I'm just amused to see him do this straight after delivering a lecture to the lawyers on not being leading. I'm sure he is following the rules. I suspect however that the rules are a trifle inconsistent.

[ Reply to This | # ]

Did Oracle Prove Google's Case?
Authored by: Anonymous on Friday, April 27 2012 @ 06:54 PM EDT
Oracle: Your opinion on that.

Dr. John Mitchell: The code may be written differently, it's written to the same specification. Therefore it has the same functionality.

Oracle: SSO.

Dr. John Mitchell: Code is organized according to the API. All is dictated by the API.

That is exactly Google's point. If the API is open and useable, then according to Oracle's expert, the SSO MUST be the same.

Thank you Oracle. With that and the testimony of Schwartz, that should put this case to bed with the jury.

...or did I miss something?

[ Reply to This | # ]

Some backwards logic, here
Authored by: Anonymous on Friday, April 27 2012 @ 07:06 PM EDT
Oracle: Has anyone asserted that Sun doesn't own all rights to Java?

Dr. Reinhold: No.



I'm going to throw this out there (just in the case that Oracle tries to claim
ownership of anything I write)... If I write software, neither Oracle or anyone
else will own all the rights to it.

Now that I've asserted it, they can't use this logic against me.

Bah!

[ Reply to This | # ]

Blueprint
Authored by: Anonymous on Friday, April 27 2012 @ 07:17 PM EDT
"Owen Astrachan: If you have a good API, once you've got
that, to do an implementation from scratch is a relatively
easier job. You start by copying the API, and then you
implement it."

[PJ: My friends, I ask you. Does that sound like a blueprint
to you?]

Well it does if you think about a blueprint meaning the
traditional plans for a building. A blueprint contains all
the details for the building, but it's not the building. In
theory you can take the blueprint and build a copy of the
building in another place. And it's definitely easier to use
an existing blueprint to build a house than start again. You
end up with a building with a different view - kind of like
Android. Of course it does matter that the land on which you
build is similar - you can't easily put a house designed to
be built on a hillside, on flat ground.

Which shows that metaphors are not good explanations for
software.

[ Reply to This | # ]

On "Package" et al.
Authored by: BitOBear on Friday, April 27 2012 @ 07:50 PM EDT
So what's a package? Take a moment to remember that BitOBear regularly instructs
you to pretend that there is no such thing when pondering These Questions™.

Everything has got to be somewhere and this is true of code as well. If you send
me a Birthday Present in the mail, you put it in a package. But the present is a
wrapped package (e.g. its in shiny paper) and if it were, say, and Android phone
it would likely be delivered in a nice manufacturer's box. These are all
packages and they each serve a different purpose. The manufacturer wanted to
protect the phone -and- he wanted to keep it together with the charger and
booklet and such, so there's a package. You wanted to make a festive delivery so
the wrapping is a (trivial) package for presentation purposes. The brown box
that you sent may have additional materials like a card and maybe you got me
more than one thing, and maybe you are also returning the socks I left at your
house when last I visited, so you collected this up in a package that would be
easy to pass through the post.

A package in java is just like a package in real life. It contains what you put
in it so it's easy to deal with.

A -good- package contains things linked by purpose or rational association.
"Java.io" contains the things you need to do "io" (input
output) in java. Guess what is in "java.math".

Now some languages don't have the "everything must be in a package"
rule. And some languages call packages something else like "modules".
The C language, for instance, only has "translation units" (files).
C++ has "name spaces" which are largely optional. Perl, TCL and Ada
(among many others) have packages, but their exact mechanical function varies
slightly in each.

Java, seemingly to just make things hard, but in fact to make things easy to
use, put the packages and the files and the API(s) [meh on that term] all on top
of one another. That is, things like "java.math" name the package
file, the API you would use (e.g. 'import "java.math"') and the way
you would package the code are all the same.

So in C++ I might have one file that has tidbits form several different name
spaces in it, but in Java a every .java file can only define the members of one
package/module/namespace/whatever-you-want-to-call-it.

This gets us full-circle on the API question. I can make a package that contains
exactly one class with no public parts at all (except Main). This package
defines a program entry point but it has virtually no API at all. Technically
another java thing -could- call my Main() and it would work and all, but there
is no well defined interface, just the defacto interface that comes from the
fact that you already know you can call Main().

So the judge is looking for a distinction between package, module, and API
which, in java, doesn't exists.

In -some- languages these terms of art are distinct and lead to geographically
different things. In C one API might be implemented such that every function
defined is in a wholly different file from each other one (much of the GNU C
Library is implemented this way). In C++ you could have two files, one with
several namesapces (and thus maybe APIs) and all the class declarations and
definitions in it, and a single separate file with all the complex and hidden
method definitions in it for all the classes defined in the first file.

So the court is tripping over the terms of art for computer science in general
as opposed to how they have been mapped many-atop-one in the java "way of
doing things."

The concepts for package, module, compilation unit, API and who knows what else
are all distinct. In java they have been carefully aligned and trimmed so that
they each have the exact same dimensions, weight, and presentation. This
simplifies the language technically.

It just makes things very shell-game slippery when it comes to legal
distinctions.

[ Reply to This | # ]

Lot of fuss over admitting the disc in an unimpeachable way...
Authored by: GriffMG on Friday, April 27 2012 @ 07:55 PM EDT
Is Google laying a trap for Oracle?

Are they making Oracle go out on a limb for this?

Do they know the disc is blank, or just contains Leonard Cohens greatest hits?

We might be disappointed, but I reckon they have heard of the old maxim: 'do not
ask a question unless you know the answer'.

---
Keep B-) ing

[ Reply to This | # ]

OpenJDK use and implications.
Authored by: Anonymous on Friday, April 27 2012 @ 08:02 PM EDT
Was doing some investigation and earlier comments from others about what the
legal implications of changing OpenJDK and using the TCK and this is what I came
up with. Would like to know what legal points of view I'm missing and mistakes
etc.

To start with the TCK for OpenJDK is different than some earlier TCK's and has
no field of use restrictions anymore so I don't think it would violate the GPL.
I haven't read it close enough to make a complete assessment of that though.

But what I think is that if you take OpenJDK and do what Sun/Oracle want you to
do with it which is keep it 99.9% the same and just port it to a new platform
then you are fine. The GPL2 license has a limited implied patent grant which is
not perfect but I think if you keep it 99.9% the same like this then it will
defiantly cover you. In this case you don't even need the TCK really as it gives
you nothing useful other than that warm fuzzy feeling you get from knowing you
are compatible. You don't get trademarks and can't call your version Java with
OpenJDK's version of the TCK. You get an explicit Patent grant from running the
TCK but I don't think it helps you much because all you have really done is do
some work for Oracle porting OpenJDK to a new machine.

Another thing you can use OpenJDK for is to fix a few bugs or improve
performance etc in it which Oracle can suck back in.

If you decide to not follow Sun/Oracle's wishes and add/remove/change any of the
API's then you won't pass the TCK even if you wanted to. So you are left with
the GPL2 implied patent grant to protect you. But the problem is that some see
some holes in this implied patent grant and that it is a bit of a grey area.
For example it can be argued that based on European Union law that this limited
patent grant only applies to inventions in the original GPL'd code and if you
practice the same invention in code you add in a different situation then you
are not covered by the patent grant. This is why to cover yourself you want a
proper explicit patent grant for any derivative work of an open source project
so that it is really Free and open.

So where does that leave us? Well we have an open source free to use program
which you are not free to use unless you want to do nothing but port it as is to
a new platform of fix a few bugs. So you are free to help Oracle out! Go get
programming! Oh but if you want to do any innovation on top of it or improve it
for your own use and the betterment of others (the whole point of GPL'd code
really) then you just have to hope you don't piss Oracle off too much...

So its basically a completely one sided GPL'd bit of software! I think it is a
great big Joke that Sun/Oracle have been having at the FOSS community.

All I can say is imagine a work without software patents!!!

Michael

[ Reply to This | # ]

but Fenwick had to withdraw
Authored by: SpaceLifeForm on Friday, April 27 2012 @ 08:57 PM EDT
Had to?

Or wanted to after Oracle bought SUN?


---

You are being MICROattacked, from various angles, in a SOFT manner.

[ Reply to This | # ]

Oracle thinks you can copyright abstract functionality
Authored by: Anonymous on Friday, April 27 2012 @ 09:01 PM EDT
"Dr. John Mitchell: The code may be written differently, it's written to
the same specification. Therefore it has the same functionality.

Oracle: SSO.

Dr. John Mitchell: Code is organized according to the API. All is dictated by
the API."

So, according to Oracle, ANY POSSIBLE IMPLEMENATION is covered by copyright.
Independent invention does not count, things forced by compatibility do not
count. If your code *ACTS* like Oracle's, then it infringes Oracles copyright.

This is an amazing, breathtaking extension of copyright law.

At least we know that, if Oracle wins, it will go out of business along with
everyone else. This is just a scorched-earth policy. Win at any cost.

[ Reply to This | # ]

Did Harmony TreeMap code end up in Sun's JDK?
Authored by: Anonymous on Friday, April 27 2012 @ 09:20 PM EDT
Correct me if I'm wrong on fact or logic:

java.util is one of the 37 packages (at least it appears on the draft jury form)

TreeMap.java is located in java.util

Blog from David Keenan at Sun thanking Apache Harmony ht tps://blogs.oracle.com/dagastine/entry/apache_harmony_thanks_for_the"

Considering the potential performance gain we started the effort of porting the Apache Harmony TreeMap code to JDK 6.

We are now making the necessary steps to give back our code changes to Apache Harmony.

Speculation if Sun's changes will actually get given back to Apache, or not:

http://tellison.blogspot.com/2008/12/bops-tree-hugging-and-safe-wage rs.html

What I do not know is if this is just talk, or if Harmony code actually ended up in one of the packages Oracle is asserting ownership of. If Sun was able to just slot Harmony code right into their own JDK, that would rather strongly indicate that they were well aware that it had the same "SSO" wouldn't it? And if this actually happened it would seem to make Sun itself a downstream user of Apache Harmony.

[ Reply to This | # ]

API definition
Authored by: Anonymous on Friday, April 27 2012 @ 10:27 PM EDT
An API (Application Programing interface) is an interface. An interface is the
formal defintion of to the interaction between two entities. In the case of an
API, one of the two entities is an application (a computer program) and the
other entity is an element of the system in which the application is intended to
operate.

An API is an instance of the general class of "interface." Interfaces
(and interfaces definitions) occur everywhere and are crucial to allowinbg
society to function. By example. A device that uses alternating-current electric
power in the united states can draw on that power via an interface. The AC power
provider is a recepticle. The specification of this interface is very
complicated. For 120VAC, there are two vertical slots in the receptical. One is
longer than the other. There is a third (round) entry entry into the receptacle
for safety ground. The interface specification describes whether or not a
particular user appliance must connect to the safety ground and whether or not a
user application must the long (neutral) slot from the short (live) slot.

To adhere to the interface specification, the user (an electrical appliance)
must use a power cord whose prongs are the correct dimensions, and must adhere
to the other constraints of the specification. (e.g., if a lamp is not
double-insulated, then it must connect its external parts to the safety
ground.)

Within the appliance, there are an infinite number of ways to implement this
interface at the AC plug. Within your home (or any other structure) there are an
infinite number of ways to implement the receptacle. As a speific example, in
most homes in the US, the ground (the round contact) is below the two slots,
resulting in a "simley face", while most offices in the US have the
ground above the two slots.
At a deeper level, while the interface is specified by the
standard, the implementation is not. The user is free to use any combination of
corda, wire, etc. that meet the spec (selecting from among hundreds of
alternatives) while the provider is also free tio sleect among hundreds of
providers to provide the proper wall socket.

Sun said: "Java is free."
Sun said": "Here is a wall socket for Java. Use it as you want."
Oracle is saying:"Java is free, but the wall socket is not."

[ Reply to This | # ]

It's blank?
Authored by: Anonymous on Saturday, April 28 2012 @ 01:55 AM EDT
> Now, obviously because the US Copyright Office has only a blank CD of
whatever Oracle/Sun filed with it, he says he's leaving that issue open for
now.

I don't remember seeing that in the reports. Did I miss it? I want to know
where I can read more about this. That's a big goof!

[ Reply to This | # ]

  • It's blank? - Authored by: Anonymous on Sunday, April 29 2012 @ 11:24 AM EDT
    • It's blank? - Authored by: Anonymous on Sunday, April 29 2012 @ 05:29 PM EDT
      • It's blank? - Authored by: Anonymous on Monday, April 30 2012 @ 01:39 AM EDT
Yet another API analogy
Authored by: Anonymous on Saturday, April 28 2012 @ 02:11 AM EDT
I'm way late to this party, so it's likely something similar has already been
covered, but I'd like to offer my favorite API analogy.

Suppose you have a console sitting in front a machine that rings bells and
toots horns. You might say such a machine was full of bells and whistles.
On the console are a series of key holes. Putting a key in slot 'A' will enable

you to control horn 'A' on the right side of the contraption. Another key hole

might control a bell of a certain type. These key holes will accept a number
of differently shaped, but similar keys. If you put a particular ky in key hole

'A' and turn it to the left, horn A might sound an A above middle C for 1
second. Turning the key to the right might sound some other note. If you
use a different key, then something different will happen. Perhaps the notes
will differ, or the durations.

Keys are user programs. Programmers use key cutters to shape them in a
particular way to sound particular bells and whistles. (They have big key
rings on which they hang keys for all sorts of consoles, not just this one.
They even make consoles themselves, and the keys that make them work.)
The console, and the mechanism behind it, is the implementation of a
library. Together they perform the physical steps required to activate the
bells and whistles.

The API is the set of instructions that tell you what sort of key does what
when inserted in each of the key holes.

[ Reply to This | # ]

What's going on!!!
Authored by: Ian Al on Saturday, April 28 2012 @ 05:30 AM EDT
I knew exactly what had happened over registration. The law allows a collection
to be registered for copyright or an individual document or anthology of
documents. If it is a document, then the document, itself, must be presented.

Only the selection of documents is protected in an anthology or collection. As
with SCO Unix, Redhat Linux and countless other distributions, the collection is
protected by the registration, but not the individual components. It is
inconceivable that Java is not registered just like Windows, Unix and Linux as a
collection. Even SCO got that right!

Are Oracle now saying that they registered Java as a compilation rather than a
collection? Are Oracle now saying that they registered all the individual files
on which they owned copyright and those with third party copyrights in Java SE
2.4 and Java SE V5 as two compilations? Just as you might register the copyright
of an anthology of poems? Is the CD all the individual copyright files
registered as part of the anthology? The registration certificate does, indeed,
refer to all the files in the previous registration plus the addition of newly
written software and third party inclusions.

Under the law, is it a compilation registration at all? The process of
presenting the actual document contents is that of copyrighting an individual
document. Is this an attempt at a mass registration of a large number of
individual documents? Is the content of each individual copyright file being
registered? No, it isn't because many third party copyright documents are
included. It is not the content of the files being registered, but just the
selection.

Well, if that is the case, what is likely to be included among those CD files?
In my view, it is most unlikely that the CD compilation includes the Java API
Specification and the Java Language Specification. It would only include the API
library source code files. The language and specification would be for 'Java in
a Nutshell'. In other words, the asserted copyright documents might be on an
Oracle website, but they will not be on the CD. Google are not playing hard
ball: they are proving that there is no case to answer. If the only evidence
Oracle has got of their asserted copyrights in the Java API Specification is
thousands of recent html files on a website then this case should be over.

Where did the contents of the Specification come from? As Oracle, Google and
someone commenting on this story points out, the contents come from running
javadoc on the API source code files. Oracle do not own the copyright on every
document derived from their copyright documents. The creative expression was
fixated in the source files and not the Specification. Is the copying of
something which is a derivation of copyright materials an infringement on the
creative expression in the original? What does the law say? If JKR writes up her
favourite bits from all her Harry Potter stories and someone else derives
something from it like a catalogue of favourite JKR bits' which copyright is
being infringed upon? Is this a question for the jury?

Also, if they are now asserting the ownership of a compilation, then it is only
the collection of files which is protected. If the files on the CD are only the
individual class library source code then the 37 are not copied. The source in
Oracle's 37 is not the same as the source in Google's 37. Only the names are
unchanged. The names are not protected.

The the contents of the CD and, most importantly, the copyright marking of each
and every asserted file is essential to the verdict. How can Oracle prove the
copyright ownership of each and every file asserted in the case with the time
they have left? We already know that they got the ownership of complete packages
wrong. That is loads and loads of copyright files.

Is each API package a single file? Does Google get to challenge the validity of
the copyright from APIs stolen from C++, etc.?

Is the judge really saying that all the detail of copyright ownership must be
guessed at by the jury?

If Oracle are no longer relying on the registrations, then they must prove the
ownership of each and every file from which they say Google copied. If what
Google copied is only an association of files, then that expression is not
fixated in a medium but is a figment of someone's imagination and not protected
by copyright law.


---
Regards
Ian Al
Software Patents: It's the disclosed functions in the patent, stupid!

[ Reply to This | # ]

Day 10 Oracle v. Google Trial ~pj - Updated 4Xs - Oracle Exhibits
Authored by: Anonymous on Saturday, April 28 2012 @ 09:41 AM EDT
It would have been fun if Google would have taken a valid java program. Switched
the API to a C++ one and then asked a second witness to identify the language. I
think this kind of exercise would have been great for making the jury understand
that Java without the API is just a clone of c++ with some minor differences in
grammer.

[ Reply to This | # ]

Day 10 Oracle v. Google Trial ~pj - Updated 4Xs - Oracle Exhibits
Authored by: Rubberman on Saturday, April 28 2012 @ 11:34 AM EDT
PJ, you are providing me with the best entertainment that I
have had in a long time! Totally awesome! Kudos to those
reporting from the courtroom. The flavor of the proceedings
are exquisite!

-Rubberman

P.S. I have been spending too much time at work reading your
postings, but I am NOT going to apologize for that! :-)

[ Reply to This | # ]

It doesn't matter how the docs are created...
Authored by: eachus on Saturday, April 28 2012 @ 11:47 AM EDT
(IANAL but...) Under copyright law, you may own the copyright in something, but to sue someone for infringing, you have to register a copyright saying what you are claiming. Of course, just claiming something is not sufficient, but it is necessary. So if the Sun copyright registrations did not apply to the documentation, and Oracle didn't copyright it later--Oracle can't win on copyright in this trial.

As to the the copyright of the source code applying to the docs? IMNSHO stipulations and evidence presented were not originally intended to cover that. If Oracle wins on the SSO issue, this becomes moot. If they lose on that, I think they automatically lose on the derived documentation.

Anyway, i expect Goggle to win on the latches issue. We will here the summations, where I expect Google to make a big deal about the fact that Sun could have sent Google a letter, saying that they regarded copying of the APIs as a violation of Sun's copyright unless licensed. Google might have a case if there such a letter a few months after Android was released. However, no such letter was sent before Sun was acquired by Oracle.

[ Reply to This | # ]

Day 10 Oracle v. Google Trial ~pj - Updated 4Xs - Oracle Exhibits
Authored by: Rubberman on Saturday, April 28 2012 @ 11:51 AM EDT
Judge: That's the 403 point.

w3.org definition of HTML 403 code:


10.4.4 403 Forbidden

The server understood the request, but is refusing to
fulfill it. Authorization will not help and the request
SHOULD NOT be repeated. If the request method was not HEAD
and the server wishes to make public why the request has not
been fulfilled, it SHOULD describe the reason for the
refusal in the entity. If the server does not wish to make
this information available to the client, the status code
404 (Not Found) can be used instead.

The judge is one crafty dude! I wonder how many of the
attorneys got this one?

[ Reply to This | # ]

Judge working through lunch
Authored by: feldegast on Saturday, April 28 2012 @ 04:34 PM EDT
https://twitter.com/# !/Feldegast
Ginny LaRoe @GinnyLaRoe
I caught a glimpse of Judge Alsup working on a #googacle order from the hotel lobby. The man worked through a very nice lunch.

---
IANAL
My posts are ©2004-2012 and released under the Creative Commons License Attribution-Noncommercial 2.0
P.J. has permission for commercial use.

[ Reply to This | # ]

Wine / Reactos
Authored by: Anonymous on Saturday, April 28 2012 @ 06:42 PM EDT
Am I right, that this case is also relevant to wine (winehq)
and reactos?

If APIs are copyrightable, wouldn't any emulator be illegal?

[ Reply to This | # ]

Does This Make Legal Sense?
Authored by: Anonymous on Saturday, April 28 2012 @ 11:01 PM EDT
I am not a lawyer. I have reread the whole two weeks of published transcripts.

Using ACM and IEEE sources, I have followed many legal watersheds in technology
law like with copyright, patent, EULA, DMCA, court sanctioned direct and
statistical methods for legal evidence, breakup of AT&T, rise of OSF/UI/OMG,
removal of Akers, and government restrictions. I consider SCO to be a wakeup
call. I consider this to be the continuation of SCO by other means. How much
longer will this continue?

The emergent properties of currently applied US Common Law steer US and Foreign
business processes and methods. Depending on what happens on Monday, copyright
law could be painted over and before this happens, enquiring minds want to know.
Does the trail lead back to Redmond or A&P? Is this a redux of US heavy
industry in the 1960s before we saw that coming? Will IBM speed up offshoring?

FIRST QUESTIONS: Does the plaintiff offer the jury NO court approved legal trail
of evidence? Does the plaintiff offer the jury NO legally actionable court
approved legal proof of copyright infringement along the lines of “lines of
code”, “copied files”, direct “red versus blue” analysis OR statistical “red
versus blue” analysis, or breach of Chinese Walls? NO quantifiable copying that
meets the threshold of legal action?

Since the jury are finders of fact based on court sanctioned legal evidence and
court directed lines of reasoning, maybe the jury has no role in the copyright
phase of this trial.

SECOND QUESTIONS: Why does the judge mislead the jury concerning US Common Law?
How could the jury make any finding of fact based on the absence of legal proof?
Does the judge plan to craft new US Common Law to replace over 200 years of US
Copyright Law based on a jury interpretation of APIs and SSOs when no actionable
definition of APIs or SSOs has been offered to the jury? Will the judge instruct
the jury that there is NO legally vetted definition of either APIs or SSOs
applied to software in US Common Law?

Floating in the vacuum of no information concerning actual US Cases, the jury is
instructed to make their best effort as good citizens. The obvious concern is
that this jury has not actually witnessed an honest to goodness US copyright
trial by design. This court commands the jury to answer vague questions, like is
there proof of God.

I perceive the jury as out of the loop with the judge and lawyers. The judge is
focused on legal procedure with an intent being the final instructions, legal
evidence, and lines of reasoning given the jury. Does this signal that the judge
has washed his hands like Pilot, or that the time is not nigh? It seems natural
that inquiring minds are curious. Other software copyright trials went very
differently.



Things are seldom simple as they appear to outsiders. Still, an open US trial
should make sense to interested US citizens.

Does this make legal sense? The plaintiff has the burden of proof with common
law, but this plaintiff refuses to prove copying of expression using common law.
Instead, the plaintiff offers only emails and expert testimony, which are not
legal proof. In past copyright trials, the plaintiff offers emails and expert
testimony to explain “who intentionally did what” that produced the legal proof
of copying. This trial offers emails and expert testimony instead of legal proof
of copying.

To paint a big red X on it, SCO claimed truckloads and specific briefcases of
computer printouts of legal evidence of copying of expression. Meanwhile, SCO’s
experts had already written their legal findings that there is no legal evidence
of copying from SCO UNIX into Linux using any of the accepted analyses (which
BSF did not admit in court for a long time). Oracle calmly states to the court
and jury they will not find actionable copying of expression from Java to Dalvik
(They agree there is no legal action here, and Google claims to have removed all
offending source code.) Oracle adamantly insists that Google copied Oracles,
scratch that, Suns, not really, many 1000s of programmers’ and 10’s of
companies’ ideas sans expression. Oracle moots US Common Law in favor of BSF’s
cloying of ideas. Meaning cleft, cloven, cloyed truth.

To paint triple X’s, the big old software companies maintain crufty old source
code gathered from many sources over the years. I have seen comments in source
code from big companies stating it was written in universities, government labs,
small companies, and by individuals. Copyright in Microsoft, UNIX, Java, Perl,
and most any successful software is a tar baby. The big old software companies
and Internet pirates play with copyright violation across the planet. So, what
evidence might be discovered in the missing Oracle Java code?

Open source software cannot violate US Copyright Law for long because nothing is
hidden by design, nothing up our sleeve due to diligence, and there is no thrill
like writing the world’s most popular software. Open source is Kosher software.
So, BSF’s strategy is to pervert US Common Law so no one could obey the law. So,
could someone connect the lengthening legal trail?

Does this make legal sense?

1 + 1 = 10 in a radix 2 number representation, but API + SSO = noise in any
representation.

[ Reply to This | # ]

The end in sigt
Authored by: Anonymous on Saturday, April 28 2012 @ 11:54 PM EDT
If SSO is taken to its logic conclusion, it seems to imply that for example
sorting a given list alphabetically is copyrigtable matter.

Identifying houses on a street by listing them in numerical order becomes
copyrightable?

BMW may copyright the use of a 3-digit numerical identifier for their classes of
cars?

Why don't huge corporations in post-industrial societies come up with ways to
create jobs rather than ways to put everybody out of work?

[ Reply to This | # ]

Re: Update 5
Authored by: jbb on Saturday, April 28 2012 @ 11:56 PM EDT
Oracle pushed for Sun to give Harmony a TCK license they could actually use. That is certainly one form of help.

I looked at Apache's sponsors page in the wayback machine but didn't see any mention of Oracle. I only peeked at a couple of pages.

---
Our job is to remind ourselves that there are more contexts than the one we’re in now — the one that we think is reality.
-- Alan Kay

[ Reply to This | # ]

  • Re: Update 5 - Authored by: Anonymous on Sunday, April 29 2012 @ 02:11 AM EDT
Indirect Infringement - Update 6
Authored by: dio gratia on Sunday, April 29 2012 @ 07:10 AM EDT
It's my (meager) understanding that indirect infringement would be contributory
infringement and/or vicarious infringement.

I also don't recall any evidence presented 'demonstrating' Google's indirect
infringement in the current case for direct infringement by another party ('Oh
Deah, we're all out of parhtee's', to paraphrase Tweetie Bird - we seem to be
missing co-defendants accused of direct infringement).

[ Reply to This | # ]

Java language API superbible by Groner et al. 1996
Authored by: IMANAL_TOO on Sunday, April 29 2012 @ 08:54 AM EDT
Ponder Larry Ellis' temper with his senior staff at this moment. Imagine he bought SUN, in the belief he would get the copyrights to Java. He may have been misled, by his own staff.

Some think MySQL was even more valuable to Oracle than Java, but that seems registered:

Type of Work: Computer File
Registration Number / Date: TX0006901035 / 2009-03-06
Application Title: MySQL Database Server 5.1.
Title: MySQL Database Server 5.1.
Description: Electronic file (eService)
Copyright Claimant: Sun Microsystems, Inc., Transfer: By written agreement. Address: 4150 Network Circle, Santa Clara, CA, 95054, United States.
Date of Creation: 2008
Date of Publication: 2008-12-08
Nation of First Publication: United States
Authorship on Application: Sun Microsystems, Inc., employer for hire; Domicile: United States. Authorship: New and revised computer code and text of documentation.
Alternative Title on Application: MySQL 5.1
Pre-existing Material: Prior works by claimant and licensed in components.
Basis of Claim: New and revised computer code and text of documentation.


as found on cocatalog.loc.gov/.

Oops. "We forgot about Java, there were so many disks around." sort of.

But what I did find on the copyright office was a book from 1996 called "Java language API superbible" by Dan Groner, K. C. Hopson, Harish Prabandham, and Todd Sundsted. Hmmm. How could they even write about the APIs, if they were copyrighted? Fair use? Or written permission from SUN?



---
______
IMANAL


.

[ Reply to This | # ]

Day 10 Oracle v. Google Trial ~pj - Updated 6Xs - Oracle Exhibits
Authored by: Anonymous on Monday, April 30 2012 @ 04:22 AM EDT
Oracle's Amended Complaint mentioned indirect infringement also. But if Oracle were concerned about its reputation and goodwill, it wouldn't pursue the offensive API claims, I don't think. Because the whole world is watching. And I have yet to find, amid the numerous article blasting Oracle for doing this, even one that says it's perfectly fine or justifiable. Well, OK. But he's paid by Oracle. That truly doesn't count. Maybe negatively, speaking of reputation.
You are conflating predictions with wishes. If our laws were always in concord of what should be happening, they would not need changing ever.

Every now and then there is a case where a judge sees no way around handing the win to the wrong guys because their side of the case matched the letter and spirit of a law well enough that you'd have to disregard the law to make a different judgment.

In a way, those are the cases where a judge loses. Not technically, but if he believes in the meaning of what he does.

In a similar vein, predicting a win for Oracle (or at least considering it possible) is not the same as wishing for a win. It is a mark of the whole broken patent and copyright system that the main litigated issue is no longer wrong/right actions, but rather wrong/right eggs in the legal basket, an approach heavily favoring egg farms.

Now in this case, Oracle seems to have grabbed a rather fragile basket with a number of plaster eggs, so I agree that we seemingly have a close match of win-predictions and paid shills (are they paid with shillings?).

But that equivalence is not by causation. It must remain possible to predict the bad guys winning without being one oneself. If lawmakers are unable to foresee that consequence (or deal with the hindsight), they can't do their job.

[ Reply to This | # ]

Groklaw © Copyright 2003-2013 Pamela Jones.
All trademarks and copyrights on this page are owned by their respective owners.
Comments are owned by the individual posters.

PJ's articles are licensed under a Creative Commons License. ( Details )