"If your students use commercial software, they should pay for it, right?"
SAN FRANCISCO—Today was the sixth day of the Oracle v. Google trial, and Google has finished making its argument that it's not a copyright scofflaw for using 37 Java APIs in the Android operating system.

Oracle, which acquired Java when it purchased Sun Microsystems, sued Google over the APIs in 2010. In 2012, a judge ruled that APIs can't be copyrighted at all, but an appeals court disagreed. Now Oracle may seek up to $9 billion in damages, while Google is arguing that its use of the 37 APIs constitutes "fair use."

Today's court action began with a kind of mini opening statement, with lead lawyers from each side presenting the jury with a seven-minute update of where their case stands. After opening statements, Android programmer Dan Bornstein offered about 30 minutes of testimony, responding to issues that Oracle raised on Friday about licensing and "scrubbing" source code. Following a succession of Oracle employees that testified by video and deposition, Google's case drew to a close with the presentation of an expert witness.

The two video depositions that immediately followed Bornstein's testimony were from Per Henrik Stahl, a vice president at Oracle, and Hasan Rizvi, who has worked at Oracle since 2010. The jury listened to chunks of their videotaped deposition testimony, selected by Google lawyers, which emphasized that Oracle wasn't really in the smartphone business at all.

"Oracle was never trying to make Java a smartphone OS," said Craig Gering, a former Sun employee whose video deposition was shown after the two Oracle employees.

Google's final witness was its expert, Duke University computer scientist Dr. Owen Astrachan.

Astrachan spoke in the measured tones of someone who was an experienced teacher. Before he went back to Duke to get his Ph.D., he'd spent some time as a high school math teacher, and his work at Duke focused on developing curriculum and resources for teaching computer science.

As such, he was the perfect witness to demonstrate for the jury, in clear and measured tones, just what an API and declaring code was. He showed a 29-line function to the jury, headed up by this example of declaring code:

public int compareTo(String anotherString)
The declaring code was what was at issue in this lawsuit, he explained. It was just a small part of this function and a tiny part of Android—just 11,500 lines of code out of 15 million.

And keeping APIs the same made a lot of sense, he said. It's just like how computer users are accustomed to using Control-P or Command-P as the "print" function on a computer.

"What would happen if all of a sudden, Control-P or Command-P meant 'Paste'?" asked Astrachan. "If the API changes, then users of that file menu wouldn't be able to accomplish their tasks."

Similarly with a software developer, if the API changes, "the software wouldn't work anymore, or the developer would have to learn a whole new language to use these APIs," he said.
Many Java APIs have names that are functional in that they are suggestive of how they can be used. He flashed five on the courtroom computer screens:

  • java.net
  • java.io
  • java.sqp
  • java.security
  • java.util


Finally, he pointed out that Java is the most-used computer programming language in the world and that an open source version of Java SE, called OpenJDK, was released in 2007.

"All of this points to Google's use being a fair use," he concluded. "Developers would expect that if you're going to be using the Java programming language, you'd have access to a rich suite of APIs, to write whatever program you’re going to write."

At about 11:40am, Oracle attorney Annette Hurst began her cross-examination.

Hurst: Designing a good API is difficult, isn’t it?

Astrachan: Yes, the design process of making an API is difficult, for sure.

Hurst: The same way that being an artist is hard or a concert violinist is hard?

Astrachan: I think that’s a quote from my deposition. They’re all difficult. They’re not exactly the same thing.
"Without the APIs that Google took, Java programmers would have found it cumbersome to use the Android platform, isn't that true?" Hurst asked.

"In using these API declarations, Android met developer expectations," he said. "If they hadn’t, it would have been cumbersome to use."

"You also said Android would not work without the APIs Google copied," Hurst said.

"Android wouldn't work if you took one line of code out of it," Astrachan countered. "If you removed the libraries, it would also stop working."

Finally, Hurst asked Astrachan to read part of the code of ethics for the Association for Computing Machinery, a professional organization.

"Let's look at paragraph 1.5," she said.

"Honor property rights, including copyrights and patents," Astrachan intoned. He continued:

Even when software is not so protected, such violations are contrary to professional behavior. Copies of software should be made only with proper authorization. Unauthorized duplication of materials must not be condoned.
"You ask your classes, how many of them have downloaded music or movies, don't you?" she said.

"I do, and it's surprising how many raise their hand," Astrachan said.

"But you think the right thing to do is purchase what needs to be purchased, right?"

He did.

"You tell your students if they’re going to use commercial software they should pay for it, right?" Hurst asked.

Yes, he did.

Finally, Hurst asked if "everyone was able to ignore restrictions on open source licenses by claiming it was fair use," wouldn't that "erode and prejudice the whole open source system?"

"I don't think that's right," said Astrachan. "It's just using a very small amount of code. If I'm just using parts of the software or using it in different ways—the reason we're here is to understand whether a use might be fair."

After Astrachan's testimony, Google rested its case. Oracle then called its first witness, CEO Safra Catz, to the stand.