Google's opening slides in the trial v. Oracle
groklaw.net
groklaw.net
When Java was still 'Oak' there was an interesting, on-going, low level debate about where the 'language' stopped and the 'system' started. There is a very common analogy in C where C pretty much assumes that there is a 'libc' and in libc are functions for doing things like printf().
So it was with Java, with the wart/exception that there was no 'main' as Java was designed to be the entire environment, not something you wrote in and then passed a binary to a different environment. Sort of like Python in interactive mode all the time. And that lead to the question of "what can a programmer assume is true about the environment?" and the answer was eventually some packages were 'core' and had to be present and some where 'optional' and might not me. Frank Yellin and James Gosling's book on the topic was the definitive reference of what was core and what wasn't.
When I was at NetApp (which also used Java (licensed) in their filers) there was an interesting debate with Sun about whether or not one had to pass the compatibility suite to be compliant with the license. Since it wasn't an exported language (customers couldn't write Java code to run on the filer) NetApp argued that insuring it could run NetBeans compatibly was unnecessary. Worse (for NetApp) was that they had their own OS and so the port had taken a while and the newer JDK had a lot of changes (none of which were needed) and it became clear the Sun was just operating on a script. Eventually it escalated up to Scott McNealy who quite reasonably understood that if they insisted on that much effort, NetApp would just move to Python or something like it (equivalent internal effort to porting the newest JDK) and voted for 'money' rather than 'no money'. That the question even came up though really brought home how far Java had moved from its roots of the team arguing to release source, to 'the most profitable on a per-unit basis' that Sun was selling in the end times.
Looking at the approaches, I think Oracle is going to lose. And I think they are going to lose for the same reason the font guys lost. My fuzzy memory has it as a Letraset vs Apple suit but it may have been Xerox (sad how stuff from 30 yrs ago is so hard to find) which basically concluded you could copyright the name of a font but you could not copyright how it looked. Hence font names like "Chicago" which look like other more well known fonts. And it is also why you get 250 'free' fonts where the 'i' character has the dot hinted slightly higher but is otherwise identical to some Bitstream font. Historically copyright has been offered on the 'end' product, not on the 'intermediate' product. So you can copyright a game that is written in language X, but not language X. For the language you can only copyright the name, and the implementation. If the new implementation is different (or derived cleanly) you don't have an recourse.
This defense of a 'clean' implementation of a specification severing rights to the original has been litigated extensively in the 80's BIOS wars where IBM published the source code to its BIOS in their technical manuals and then started trying to sue clone makers who re-used the source. Once the BIOS was implemented in a 'clean room' where team A (who had the BIOS code) provided specifications to team B who didn't, then you could completely sever the rights to the code from IBM.
http://www.oracle.com/us/corporate/features/opening-slides-1...
I have no opinion on who's right, something better left to lawyers, I'm just trying to have a clear understanding of the positions of each of them.
"When is license necessary:
1. Write applications on Java - No
2. Write classes that implement Java API - Yes
3. Download Java software components - Yes"
I think the stance from Google is that the answer to 2 is NO. And that 3 does not matter since they wrote their own Java software.
After looking through both opening slides, I have to say Oracle's seemed to make better/stronger arguments. This case is fascinating, I'm glad that resources are being made available.
Also, gotta love "Very limited internal expertise to make smart decisions" on slide 69. I wonder if the slide number being that was just coincidence.
That said, I think it's true that Oracle's slides have the better evidence. There are all sort of (admittedly out of context) incriminating statement from the Google people which indicate that Google really wanted a Sun license and tried really hard to get one. That certainly looks bad, but again I don't think it speaks to the underlying law.
Edit: I should point out there's a flip side here too. The fact that Sun wasn't willing to deal despite Google's attempts can be an argument that they weren't negotiating in good faith. If that was the case, then there are no damages to award. Obviously we don't have any juicy emails or quotes from discovery in Google's slides, so there's no way to know.
I think there's enough merit in both sides' arguments, at least enough to make me unsure about which way the decision will go. It's sad that lawyers/judges and non-technical folks will decide, but maybe that is the fairest way to deal with such things?
"numerous direct quotes from people at Sun and Oracle"
are not legally binding contracts.
-Oracle only has to prove and convince the jury that Google willfully and knowingly ignored required licensing agreements. So they can present emails and quotes from employees and executives and the emails alone can do a lot of damage.
Their contention is that they don't need one. Besides, they don't use Java- They use Dalvik and a JVM bytecode-to-Dalvik translator.
Google's lawyers are going to have a hard time convincing the jury.
Check out Oracle's slides.
http://www.oracle.com/us/corporate/features/opening-slides-1...
slide 90:
What Google Said Before Lawsuit
Jul 26, 2005: “Must take license from Sun”
Oct 11, 2005: “We’ll pay Sun for the license and the TCK” “We are making Java central to our solution”
Feb 10, 2006: “helping negotiate with my old team at Sun for a critical license”
Mar 24, 2006: “Java.lang api’s are copyrighted”
Sept 28, 2006: “Leverage Java for its existing base of developers”
Nov 6, 2007: “Is Android Java compatible?...No.”
Nov 17, 2007: “Scrub out a few more J’s”
Mar 24, 2008: “Please don’t demonstrate to any sun employees or lawyers”
Aug 5, 2009: “How aggressive do we scrub the J word?”
Aug 6, 2010: “technical alternatives…to Java for Android…suck” “we need to negotiate a license for Java under the terms we need”
Oct 13, 2011: “Android is hugely profitable”
Both sides deal only with "we were under the impression of X" and back up their claims with industry numbers and quotes.
I also find it amusing that in Oracle's slides, "Java On Our Computers" is demonstrated with the Java update screen. Sigh.
Is the Java Updater even written in Java? That would be an even funnier example of "Java On Our Computers." :)
If you're trying to prove to them that Java is everywhere, this is what's going to make them think "Oh yeah, it's on my computer too"
http://www.oracle.com/us/corporate/features/opening-slides-1...
...or to make Oracle look like a purchase and litigate company with "limited internal expertise to make smart decisions".
Not a very good strategy IMHO, but I would hazard a guess and say Google feels very comfortable about their chances.
I'm sure it was intended, as perhaps a "low blow", since it's very easy to quote someone without all the damn "uh"s.
Not very classy IMO.
I love the Google email asking to "Scrub out a few more J's" and "How aggressive do we scrub the J word?" :)
Dick Wall: Can we demonstrate the tooling, emulator, dev environment, etc.?
Andy Rubin: Yes, one-on-one only please, where you know exactly who you are talking to. Please don’t demonstrate to any sun employees or lawyers.
yikes.
Learn something new everyday.
http://www.capitalnovus.com/divisions/novus-trial-consulting
That doesn't mean that any court would find fault with you, if you bought my book and then loaned it to a friend. That's totally fair use.
Just an analogy to show that just because a company tries to make you believe they have the right to limit what you can legally do, doesn't mean you are legally limited.
- Sun gave Java language to the public
They basically just say APIs and programming languages are the same thing, and Ellison said the programming language is free for everybody, therefore the APIs are too. Their quoting an expert saying that an API is like a technical paper is bizarre, since technical papers are clearly copyrightable... Google basically agreed (slide 12) that an API is copyrightable.
- Google built Android using free and open technologies
Basically saying other people did it and Sun didn't sue, so it's ok for us to do it. Also another defense that, ok maybe they did what Oracle claims, but even so it's no big deal. The 'me too' and 'meh' defenses.
- Sun publicly approved Android's use of Java
The defense is that Sun approved the announcement of Android as a Java-based platform, which Google says it isn't. So Sun didn't approve of Android.
- Google made fair use of the Java language APIs in Android
The defense is that Sun was incompetent so Google had the right to go it alone without Sun's approval or license. Seriously?! Their quote to support this from Ellison even talks about licensing Java to phone carriers -- why would they do this if Java was free? Their own evidence presented undermines their argument.
Meanwhile the Oracle presentation is chock full of damning quotes and evidence from Google's own people. Google better have some serious kung-fu in the trial part, because the opening statements are a disaster for them.
I'm not a lawyer so I don't know if Google's case is solid legally, but putting myself as a juror the Oracle opening statement I think would be very convincing compared to Google's.
But my reading of the slides is probably colored though by my personal opinion that the Java API should be copyrightable. It's a substantial creative work and no two people would create the same APIs even containing the same ideas and concepts (.NET for example).
- Microsoft should be able to shut-down clean-room re-implementations of Windows? Like WINE and Sun's Wabi?
- IBM should have been able to crush Compaq over their reverse-engineered BIOS?
- Digital Research should have been able to crush Microsoft for including system calls that enabled CP/M compatibility for some programs in DOS?
- ...
This is interesting (funny). I guess learning powerpoint in school is useful if you're entering law.
Edit: I love the file cabinet visual analogy they're using. I would assume that it helps non-technical people understand the idea of packages/namepsaces. Those images should be default when teaching those ideas
both sides agree on: - you cannot copyright language - you can copyright implementation.
so all comes down to: - can you copyright APIs ?
Oracle tries to draw a boundary between the language and the APIs, but there is no boundary to be drawn.
What Google did was remove a chapter here and there and add a couple of their own chapters -- in this book analogy, clearly copyright infringement.
The actual quotes used in the slides is "you form an API using those parts of speech in the same way I'd write a technical paper using, you know, nouns, verbs, objects, so on." In other words, you couldn't copyright java.lang package name itself (an adjective say) but you could copyright the collection of everything in it (as like technical paper).
I'm astounded that this is in Google's slides. Slide 12 basically says the Java API, taken as a whole, is copyrightable.
The language must have words with meaning (API specification).
A dictionary is a book of words and their definition (API implementation). You can have two different dictionaries from the same language. They both have their copyrights, and they don't infringe each other copyrights.
Harmony's Java API implementation (used in Android) and JDK's Java API implementation are just two different dictionaries for the same language (Java API specification).
You will use a dictionary (API implementation) of a language - its symbols and words and the rules between them - (programming Language and API specification) to write a book (programs).
Both dictionary and book are subject to copyright. The language is not.
Here's a lot more detail about the jury selection; five people were excused by the judge, then three more by each party: http://www.groklaw.net/article.php?story=20120416085550303
I was rather surprised by the demographics, there were a lot of engineers and lawyers, and for some reason I though jury duty was a statistically unbiased sample of major citizens. I guess I should be glad the trial takes place in San Francisco rather than East Texas: http://www.thejuryexpert.com/2010/03/east-texas-jurors-and-p...
Additionally, GNU Classpath seems to have always been considered A-OK by Sun and Oracle, and they have no license.
You'd need a license to use Sun/Oracle source code. You'd need a different license to get the compatibility test kit so you could call your stuff Java(TM). If you thought there was patent liability, you ought to license that.
If they used C/C++ they wouldn't have had any problems and considering how awesome Qt is, you can clearly make the development experience enjoyable. Then they could have introduced Google Go in the mix and/or Javascript, to appeal to the younger generation.
Ironically, they could have used the ECMA parts of .NET and get away with it.
What they really got for free was much of the Java tooling and ecosystem. Which isn't nothing.