A clash between tech behemoths Google, LLC and Oracle America, Inc. ended Monday when the U.S. Supreme Court ruled that Google’s copying of 11,500 lines of Oracle’s code for the Android software platform was permitted under the copyright law’s “fair use” defense.

The 6-2 ruling, written by Justice Stephen Breyer, reversed a decision of the U.S. Court of Appeals for the Federal Circuit in a case that originated in federal court in San Francisco.

The central issue in the case was whether Google’s decision to copy code used in Java’s Application Programming Interface or API violated Oracle’s copyright as the owner of the Java software.

The case has a florid and lengthy history. Oracle initiated the suit in 2010 to challenge Google’s use of the Java API in the development of the Android operating system for Google’s smart phone software platform. Oracle asserted that its damages were in the billions.

Two distinct questions had to be resolved. First, was Oracle’s API copyrightable? Second, if so, did the fair use defense under the copyright law allow Google to use it anyway?

The case was initially tried by a Bay Area jury that found that the API was copyrightable. The jury was unable to reach a decision on fair use.

U.S. District Court Judge William Alsup then overrode the jury decision and ruled in 2012 that the portions of the API that Google used were not copyrightable. In light of that determination, the judge did not reach the question of whether the fair use defense applied.

In 2014, the federal appeals court reversed the copyright ruling and sent the case back to San Francisco for a determination on fair use.

A win for Google, but Oracle appeals

In 2016, a jury ruled that Google’s use was fair use.

Oracle appealed, but in 2018 the appeals court reversed again and determined that the use was not a fair use.

Google then petitioned the Supreme Court to hear the case and in 2019, the high court agreed to review the matter. The case was argued remotely in October 2020 due to COVID-19 .

Taking a deep dive into the technology, Justice Breyer wrote that APIs are code that allow interoperability between computer platforms and programs. To explain the issues, he distinguished between “implementing code” and “declaring code.”

He described implementing code as software that instructs a computer how to carry out a predetermined task.

However, to tell a computer which implementing code to use to do its work, declaring code directs the computer to run the implementing code.

Google engineers independently wrote the implementing code — many millions of lines — for the Android system, but copied the declaring code from the Java API.

The declaring code Google used was what created the Java organizational structure for classifying the implementing codes. It also established a terminology and language familiar to the millions of programmers who used already Java in their work.

By using that code, Google wanted to make it easy for those developers to work on the Android platform; using the declaring code from the Java API let those developers design without needing to learn a new programming language.

Android’s development of Android took 100 engineers working for three years, and it was conceived as a platform that would allow independent developers to use Android’s tools to create programming that would work on the platform. The more developers who did so, the more valuable the platform.

The court noted that the Android platform was indeed successful, “Within five years of its release in 2007, Android-based devices claimed a large share of the United States market. As of 2015, Android sales produced more than $42 billion in revenue.”

Google’s argument was not aided by the fact that it had tried to license the API from Sun Microsystems, Inc. when Android was being developed, but was not able to reach an agreement.

Defining ‘fair use’

In reaching a decision that the fair use defense applied, Justice Breyer delved into the history of the fair use defense. Originally developed by the courts as an “equitable” limitation on copyright, it was incorporated into the copyright statute.

Fair use is not determined by a clear and bright line formula, he wrote, rather it is a multi-factor test that considers and weighs the factors differently in different contexts. The justice put heavy emphasis on the fact that declaring code, unlike implementing code, plays a large role in allowing interoperability of software programs, giving developers a way to create innovative new programs on top of existing programs.

Because a central purpose of copyright law is to encourage such innovation, Justice Breyer found that the use of the declaring code was of less weight in the balance than Oracle urged.

Another factor in the test looks at the volume of copying and while 11,500 lines of code is substantial, the overall Android programming was millions of lines, so comparatively the copying was a small part.

Taken all together, the court concluded that the fair use defense applied.

“… Google simply copied verbatim 11,500 lines of code from the library. As a result, it erased 97.5% of the value of Oracle’s partnership with Amazon, made tens of billions of dollars, and established its position as the owner of the largest mobile operating system in the world. … Google’s use of that copyrighted code was anything but fair.”

Justice Clarence Thomas, dissenting opinion

In reaching that conclusion, the court sidestepped the issue of whether the API was copyrightable in the first place. Breyer wrote, “Given the rapidly changing technological, economic, and business-related circumstances, we believe we should not answer more than is necessary to resolve the parties’ dispute.” Because Google would have had a defense even if the API was copyrightable, the court decided to leave that issue for another day.

The case attracted attention and interest on both sides. Dozens of amicus or “friend of the court” briefs were filed. Google was supported by several prominent software developers including Microsoft Corp. and Mozilla Corp.

Oracle had support from copyright owners in the entertainment industry, including the Motion Picture Ass’n, Inc.

The Court twice cited the amicus brief of the R Street Institute, self-described as “a nonprofit, non-partisan policy research organization” that “promotes free markets as well as limited yet effective government.”

The R Street filing described Google’s use of the API as a “reimplementation” of a computer command language, a practice that it said was “strikingly common” in the industry. The brief argued that a ruling in favor of Oracle would have momentous and negative impacts on software interoperability throughout the technological ecosystem.

Justice Clarence Thomas wrote a dissent, joined by Justice Samuel Alito.

Thomas’s dissent framed the issue this way: “Google sought a license…, but when the companies could not agree on terms, Google simply copied verbatim 11,500 lines of code from the library. As a result, it erased 97.5% of the value of Oracle’s partnership with Amazon, made tens of billions of dollars, and established its position as the owner of the largest mobile operating system in the world.”

Seen that way, Thomas concluded that “Google’s use of that copyrighted code was anything but fair.”

Joe Dworetzky is a second career journalist. He practiced law in Philadelphia for more than 35 years, representing private and governmental clients in commercial litigation and insolvency proceedings. Joe served as City Solicitor for the City of Philadelphia under Mayor Ed Rendell and from 2009 to 2013 was one of five members of the Philadelphia School Reform Commission with responsibility for managing the city’s 250 public schools. He moved to San Francisco in 2011 and began writing fiction and pursuing a lifelong interest in editorial cartooning. Joe earned a Master’s in Journalism from Stanford University in 2020. He covers Legal Affairs and writes long form Investigative stories. His occasional cartooning can be seen in Bay Area Sketchbook. Joe encourages readers to email him story ideas and leads at joe.dworetzky@baycitynews.com.