Tuesday, June 5, 2012

Oracle v. Google: Judge Alsup sets the record straight

Tuesday, June 05, 2012
Illustration of the Oracle v. Google trial in San Francisco U.S. District Court on April 24, 2012: Oracle Attorney David Boies (center) questions Google's Executive Chairman, Eric Schmidt.  Judge William Alsup seen on left presiding on bench. (Credit: Vicki Behringer)

Over the past few months drama was unfolding in a San Francisco courtroom built up as the “smartphone trial of the century” wherein Oracle had sued Google over copyright infringement and patent infringement. The alleged misconduct was in relation to Google’s unlicensed use of Java on its popular Android mobile operating system. Oracle further alleged Google knowingly used the Java APIs without acquiring a license.

The copyright infringement aspect of the trial was of key public interest as the issue surrounding Google’s use of 37 Java APIs used on the Android mobile operating system had large implications for software developers worldwide in clarifying the boundaries of general public licenses. 

The Issue 

It is accepted that computer programming languages inherently are not subject to copyright. The issue becomes much more nuanced when dealing with the corresponding APIs. 

APIs (Application Programming Interface) can be thought of as a specification allowing developers to interface their software with the native software of the API. 

Google argued that Java is a programming language and therefore free to use. In similar fashion, the corresponding APIs cited in the case, which are required to implement the language, should also free to use.

What Happened in Court 

Presiding Judge William Alsup, sitting at the center of this high profile case with two of Silicon Valley’s top companies, seasoned technology lawyers, and international media, released his decision on May 31st 2012. In the decision Judge Alsup stated that the contested 37 APIs owned by Oracle, which were used by Google on the Android platform, are not subject to copyright. Judge Alsup further elaborated: 
So long as the specific code used to implement a method is different, anyone is free under the Copyright Act to write his or her own code to carry out exactly the same function or specification of any methods used in the Java API. It does not matter that the declaration or method header lines are identical. 
When there is only one way to express an idea or function, then everyone is free to do so and no one can monopolize that expression. And, while the Android method and class names could have been different from the names of their counterparts in Java and still have worked, copyright protection never extends to names or short phrases as a matter of law. 
Are all Java APIs free sans license? 

It is important to understand the scope of the decision and carry forward the correct application. In this particular instance with the cited 37 Java APIs owned by Oracle, the APIs were not subject to copyright law due to there being a single mode of expression regarding the functions within the impugned APIs. 

It would be erroneous to claim that all Java APIs are not copyrightable and therefore require no license to use in any application of software development. Judge Alsup further states: 
This order does not hold that Java API packages are free for all to use without license,… 
It does not hold that the structure, sequence, and organization of all computer programs may be stolen. Rather, it holds on the specific facts of this case, the particular elements replicated by Google were free for all to use under the Copyright Act. 
What happens next 

Oracle has stated that it will appeal the U.S. District Court’s decision and maintains its original stance stating: 
Oracle… will vigorously pursue an appeal of this decision in order to maintain that protection and to continue to support the broader Java community…  
Google's implementation of the accused APIs is not a free pass, since a license has always been required for an implementation of the Java Specification… 
Stay tuned.