The Oracle v. Google trial continued on day five with more detailed dissection of Java and APIs and the difference, or similarities, between Android and Java.
Google's lawyers framed their questions to elicit responses to make the case that the Java language is free and open, and the 37 applications programming interfaces that Oracle contends Google violated are not subject to copyright. Oracle's lawyers relentlessly pursued the line that Google knowingly ripped off restricted elements of Java to create Android.
In today's testimony, Google's attempts to license Java from Sun over several years was discussed. Google's legal team trotted out a November 5, 2007 blog post from then Sun CEO Jonathan Schwartz applauding the birth of Android, as if to show that Sun approved of Google's use of Java, even though it was incompatible with Sun's Java.
I just wanted to add my voice to the chorus of others from Sun in offering my heartfelt congratulations to Google on the announcement of their new Java/Linux platform, Android. Congratulations!
I'd also like Sun to be the first platform software company to commit to a complete developer environment around the platform, as we throw Sun's NetBeans developer platform for mobile devices behind the effort. We've obviously done a ton of work to support developers on all Java based platforms, and were pleased to add Google's Android to the list.
And needless to say, Google and the Open Handset Alliance just strapped another set of rockets to the community's momentum - and to the vision defining opportunity across our (and other) planets.
Today is an incredible day for the open source community, and a massive endorsement of two of the industry's most prolific free software communities, Java and Linux.
In a CNET story by Stephen Shankland on November 14, 2007, Sun expressed concern about Android fracturing the Java environment.
"Anything that creates a more diverse or fractured platform is not in (developers') best interests," said Rich Green, executive vice president of Sun's software, speaking to reporters at the Oracle OpenWorld conference in San Francisco. "The feedback from developers is, 'Help us fix this.'"
He said Sun wants to work with Google to nip any problems in the bud. "We're really interested in working with Google to make sure developers don't end up with a fractured environment. We're reaching out to Google and assuming they'll be reaching out to us to ensure these platforms and APIs will be compatible so deployment on a wide variety of platforms will be possible," Green said.
Google didn't adopt a terribly conciliatory tone in its response, arguing that when it comes to Java fragmentation, Android is the solution, not the problem.
"Google and the other members of the Open Handset Alliance are working to help solve fragmentation and supporting the developer community by creating Android, a mobile platform that responds to the needs of the developers, has the backing of industry leaders, and will be available as open source under a nonrestrictive license," Google said in a statement.
It appears that Sun's CEO and its executive vice president of software were not exactly on the same page regarding Android. Or, it may be that Schwartz was optimistic that after years of on-and-off negotiations, Google and Sun could come to an agreement on an open handset platform that involved Java and Android.
Prior to Schwartz's warm welcome for Android and Green's expression of concern about Android, Google had been in talks to license Java. In a document in evidence from July 2005, Google outlined a wish list for an agreement with Sun.
Google would like to work with Sun to conceive of and agree to a license that enables Google to release to the Open Source community, under a license of it's own choosing, it's internally developed CLDC based JVM. Google would like to achieve this goal with Sun's blessing and cooperation.
Google does not foresee the necessity to license or redistribute any software from Sun.
Google desires to be able to call the resulting work Java.
Google proposed that Android must pass the TCK (Technology Compatibility Kit) on reference design before release to the open-source community. OEM licensees would also have to pass the TCK and pay Sun a royalty on Java.
Google drafted a comprehensive proposal for partnering with Sun on an "open handset solution":
Sun and Google jointly develop an open handset solution. Sun's main responsibility is the Java cdc virtual machine, class libraries, MIDP stack and relevant JSRs. Google's main responsibility is the OS, system framework, graphics, telephony, basic applications, data manager, codecs, protocol stacks, native tool chain, including debugger, bootloader, gee-based tools.
Sun and Google mutually agree on a productization strategy, which includes partnering with one or more tier one wireless carriers, one or more tier-one handset manufacturers and one or more tier-one semiconductor companies. Both parties agree on additional partners as required.
Both Sun and Google are free to monetize the platform. Sun and Google mutually agree on a go to market strategy which includes joint management of the open source community.
Sun and Google mutually agree on PR and partnership announcements.
In December 2005, Android chief Andy Rubin wrote that Google would use the threat of creating a clean-room version of Java as leverage with Sun for a license on its terms, rather than "position ourselves against the industry."
In a CNET story, posted on May 22, 2008, Android chief Andy Rubin explained Google's decision to avoid the GPL license that is used for the Java language. By that time, Sun and Google were not finding a way to resolve the licensing issues.
"The thing that worries me about GPL is this: suppose Samsung wants to build a phone that's different in features and functionality than (one from) LG. If everything on the phone was GPL, any applications or user interface enhancements that Samsung did, they would have to contribute back," Rubin said. "At the application layer, GPL doesn't work."
In a February 2009 e-mail, Dave Sobata, director of corporate development at Google, wrote about a team exploring the idea of working with Sun to get Java more open source, and referenced ideas from Brett Slatkin, a Google software engineer. Slatkin posited that Sun was in trouble, and it would need to sell off its assets. He proposed that Google buy the rights to Java from Sun, create an open software foundation to own all the intellectual property and re-release the code with an even more open license than Sun's. If successful in acquiring Java, Slatkin noted that Java lawsuits would go away.
Slatkin also outlined possible ways Sun's situation could play out.
"IBM or Oracle buys rights to Java, further locks down the platform or entangles it in more Patents/IP"
On April 20, 2009, Oracle announced that it was acquiring Sun.
As late as 2010, Google was still talking about negotiating a license with Sun and Oracle. In a memo to Rubin, Tim Lindholm, a former Sun Distinguished Engineer and Java guru, wrote that Google co-founders Larry Page and Sergey Brin asked for an investigation in technical alternatives to Java for Android and Chrome.
"We've been over a bunch of these, and think they all suck. We conclude that we need to negotiate a license for Java under the terms we need."
He added that the threat of moving away from Java hit Safra Katz, Oracle's president, hard, and putting together a credible alternative would be good for negotiating "better terms and price for Java."
Despite all the efforts exposed in the e-mails and documents in evidence spent on trying to get a deal with Sun over a period of more than five years, or even acquiring rights to Java, Google claims that it didn't use any restricted Java code in Android's 15 million lines of code.
Oracle experts looking at Android code came up with a few hundred lines of code, such as 9 lines in "range check," that were in common with Java.
At issue are the 37 APIs Oracle claims are copyrightable. "This copyright claim is a little crazy...that's a lawyer made up thing," Google's lead lawyer Robert Van Nest said. Oracle's lawyer, Michael Jacobs, expressed a completely opposite view. Judge William Alsup stated it was a "tough problem."
Next week the trial continues with Android chief Andy Rubin on the stand. It should make for some interesting testimony.