Did Google break Oracle's copyright? Can APIs even be copyrighted?

Java

The jury is out (literally) on the first, critical phase in the case of Oracle v Google. It's a decision that could have huge, far-reaching effects on software developers. Let's unpick it, in The Long View...

In case you've not been following every twist and turn of the case, Oracle (NASDAQ:ORCL) accuses Google (NASDAQ:GOOG) of intellectual property violations -- both copyright and patents. Google argues that the copyright claims have no legal basis and that the patents are invalid.

In this first phase, the jury gets to decide on the copyright aspects, which center around the Java API. Google says its implementation was a clean-room, reverse-engineering of the Java virtual machine. Oracle says that Google would still need a license to use the Java API, because it's copyrighted -- in order to reverse-engineer something that's API-compatible, you have to use that API, it argues.

What a pickle. And what a critical decision for the future of software!

If Oracle prevails...nearly every aspect of programming will be changed for the worse.
...
Oracle posited an ominous theory: that Google had violated Oracle's Java copyrights by reimplementing Java APIs. ... In a nutshell, if the jury [agrees] that the copyrights in the header [files] apply specifically to the syntax of the APIs, then Oracle can extract payment and penalties...for having implemented those APIs without Oracle's blessing.
...
Should this come to pass, numerous products will suddenly find themselves on an uncertain legal standing. ... Jython, IronPython, and PyPy...JRuby, IronRuby, and Rubinius...Mono...possibly C++...GCC...Objective-C; and so forth. ... Would Linux be at risk for all the UNIX APIs it recreated?

Yeah. It's bad enough that there are rafts of bogus software patents just waiting to trip up unwary developers. This could be much, much worse.

This isn't just about Java. This is really about the ability of a developer to re-implement, but retain API-level compatibility. It's something that goes on countless times in the industry.

For example, the original IBM PC was cloned by reverse-engineering the BIOS in a clean room. If Compaq et al had had to get a license from IBM to do that, we'd never have had such a vibrant PC industry

However, common sense says this is similar to the crazy claims made by SCO, when they said that Linux copied its source code, because it contains the same header files. (But whoever said that common sense has any bearing on the law? ;-)

So, how's this going to play out? Well, I don't have a crystal ball, but the court has provided several ways that the judge and jury can avoid a disastrous verdict that would throw software development into a tailspin.

1. The jury could decide that Oracle hasn't proven the alleged infringement.
Simple one this. If there's insufficient evidence of copyright infringement in the Java source code or documentation, there's no issue. Except that the court probably doesn't get to make any case law, so this issue might crop up again in the future.

2. The jury could decide it's fair use.
If Google did infringe copyright, it could get away with it thanks to the doctrine of fair use.

3. The jury could decide it doesn't matter.
Failing both those get-outs, what if Oracle (or rather, Sun) allowed Google to think that it didn't need a license? There's strong evidence that Sun made public statements to that effect; notably blog posts by then-CEO Jonathan Schwartz. Oracle disputes this, saying that "business isn't done by blog posts." However, as Pamela Jones points out, Sun's 10K of August 2008 explicitly says that CEO blog posts have the same material weight as press releases, SEC filings, etc.

4. If all else fails, the judge can still effectively overrule the jury.
That sounds odd, but bear with me. The judge has explicitly not ruled whether an API is in fact copyrightable at all. He's only instructed the jury to assume that it is:

Another statutory limitation on the scope of a copyright is that copyright never protects any procedure, process, system, method of operation, concept, principle, or discovery. ... For purposes of your deliberations, I instruct that the copyrights in question do cover the structure, sequence and organization of the compilable code.

Clever. If the jury clears Google of wrongdoing, there's no need for the judge to rule on the copyrightability of an API. Leave that to the appeal judge (assuming Oracle appeals).

However, if the jury comes back with a guilty verdict, the judge could simply rule that APIs aren't copyrightable.

Ironically, this would probably be Google's preferred outcome -- to be found guilty of the copyright infringement of an API, but for that verdict to be nullified by the ruling that an API isn't subject to copyright.

Whichever way this works out, the implications are potentially huge for software development. (And that's no overstatement.)

 
What do you think? Comment below...

Richi Jennings, blogger at large

Richi Jennings is an independent analyst/consultant, specializing in blogging, email, and security. As well as The Long View, he's also the creator and main author of Computerworld's IT Blogwatch, for which he has won ASBPE and Neal awards on behalf of IDG Enterprise. A cross-functional IT geek since 1985, you can follow him as @richi on Twitter, pretend to be richij's friend on Facebook, follow richij on Google Plus , or just use good old email: TLV@richij.com. You can also read Richi's full profile and disclosure of his industry affiliations.

Copyright © 2012 IDG Communications, Inc.

Bing’s AI chatbot came to work for me. I had to fire it.
Shop Tech Products at Amazon