In its recent opinion in Oracle v. Google, the Federal Circuit reversed the Northern District of California and reinstated a jury’s infringement verdict against Google. The opinion is long and complex, and much ink has already been spilled by its critics. As a service to those of you sitting on the sidelines of this particular debate, here is our summary version of the case:
- What’s the case about?
Oracle owns copyrights in software related to Java, a computer platform that allows a programmer to write one code and have it run pretty much anywhere, including your smart phone. This software includes “application programming interfaces,” or “API packages.” These packages contain elaborately organized collections of pre-written source code for certain common tasks. In other words, they are shortcuts for programmers.
The API packages have two kinds of code. First, the “declaring code” is a relatively short header that contains functional specifications and identifies a task to be performed. Second, the longer “implementing code” contains the step-by-step instructions telling the computer how to execute that task. So for example, the declaring code identifies the task “find the greater of two numbers,” and the implementing code tells the computer how to find the greater of two numbers.
- What is Google alleged to have done?
Oracle and Google could not agree on the terms of a license for the use of Oracle’s API packages in Google’s Android phones, so Google decided to create its own packages. Google rewrote millions of lines of implementing code. However, in order to make things easier for programmers already familiar with Java, Google copied Oracle’s declaring codes (just 7,000 lines in all) and retained Oracle’s elaborate organizational structure. Oracle sued Google for copyright infringement.
- What happened in the District Court?
The jury found that Google had infringed Oracle’s copyright in the API packages, but deadlocked on whether it was a fair use. The verdict was put aside by the judge, who found that the declaring codes and organizational structure were not subject to copyright protection, even though they were creative and original.
- Federal Circuit Decision:
The Federal Circuit reversed, holding that the declaring code and organizational structure were indeed subject to copyright protection:
i. Merger: The merger doctrine provides that, where there is only one way to express an idea, the idea “merges” with the expression, and it is not subject to copyright protection. The District Court held that the merger doctrine precluded copyright protection for the declaring code because there was really only one way for Google to create the code in a manner consistent with the existing Java language. The Federal Circuit, however, reversed. The real issue was not whether there was only one way for Google to copy the functionality of the declaration code, but whether there was only one way for Oracle to have created the declaration code in the first place. Oracle (actually, its predecessor, Sun Microsystems) could have chosen to express the declaration code in a variety of forms, so there was no merger of idea and expression. Moreover, the expression Oracle did choose was sufficiently original to be protected by copyright.
ii. Short Phrases. The District Court held that Oracle’s declaring code consisted of short phrases, which copyright regulations indicate are not subject to copyright protection. However, the Federal Circuit held that even a short phrase, or at least a creative combination of short phrases, may be copyrightable if it exhibits sufficient creativity.
iii. Scenes a Faire. The scenes a faire doctrine provides that there are some elements of a creative work that are so common or typical in a genre that the use of them cannot give rise to an action for copyright infringement. Google had argued that the scenes a faire doctrine barred copyright protection for the declaring code, because that code consisted of common program elements and stock commands widely accepted within the computer industry (e.g., “find the greater of two numbers”). Both the District Court and the Federal Circuit disagreed. The Federal Circuit held that the scenes a faire doctrine was not relevant because it is a defense against infringement, not a bar to copyright protection.
The District Court held that the organizational structure of the API packages was functional and thus a “system or method of operation” that was not copyrightable pursuant to Section 102(b) of the Copyright Act. The Federal Circuit disagreed, and held that an organizational structure, even if it performs a functional role, can be copyrightable if it is original and creative. Otherwise, computer programs, which are always functional to some degree, would never be subject to copyright protection.
- Fair Use Remand
So, the infringement verdict stands, but the Federal Circuit remanded the matter for further proceedings on Google’s affirmative defense of fair use, in particular (1) whether Google’s use of the API packages was transformative; (2) whether that use harmed Oracle’s licensing market; and (3) whether Google’s competitive desire to make its code “interoperable” with other products weighed in favor of fair use.
- The Other Files
Although the declaratory code was the main event, there were also two small pieces of Oracle implementing code that Google had copied. One consisted of nine lines of code called “rangeCheck,” and the other consisted of eight security files copied for testing by Google. RangeCheck was incorporated into Google’s Android phones; the security files were not. Google argued that this copying was de minimis.
The jury found that that Google had infringed rangeCheck but not the security files. The District Court judge let the rangeCheck verdict stand, but granted judgment as a matter of law as to the security files, on the grounds that no reasonable jury could find that this copying was de minimis. However, the judge then ordered a judgment of zero dollars for these infringements. The Federal Circuit affirmed.