April 18, 2021
Google LLC v. Oracle America, Inc., 583 U.S. __ (2021) (Breyer, J.).
Response by Jasper L. Tran & Kristen C.A. Kido
Geo. Wash. L. Rev. On the Docket (Oct. Term 2020)
Slip Opinion | SCOTUSblog
Google v. Oracle: Copying Declaring Code Is Fair Use
Not all code is created equal—at least not in the majority’s view in Google v. Oracle, handed down on April 5th. In this landmark 6-2 decision,1 the Supreme Court held that Google’s verbatim reproduction of approximately 11,500 lines of computer programming code from Oracle’s Java library was fair use, and so did not violate Oracle’s copyright.
This battle of the technology giants2 dates back to 2005, when Google began developing a smartphone software platform for its newly acquired Android product line. Google aimed to ensure that software developers could easily develop Android-based applications without having to learn a new platform-specific programming language. To do so, it needed Android—the operating system for Google’s new line of mobile devices—to run a language most programmers already knew; enter Java.3 Google attempted to license the Java platform from Oracle’s predecessor, Sun Microsystems (“Sun”),4 but negotiations broke down. In the end, Google wrote much of its own code for Android, but also incorporated thousands of lines of Java. When Oracle sued for patent and copyright infringement, seeking $8.8 billion in damages, Google’s defense rested on fair use. The jury found no patent infringement but was deadlocked on fair use.5 Nonetheless, the district court held as a matter of law that copyright did not protect the copied code.6 The Federal Circuit reversed and remanded for further fact-finding on the fair use issue.7 This time the jury found fair use, but the Federal Circuit reversed the jury’s finding after weighing the evidence itself.8 The Supreme Court granted certiorari on two questions: (1) whether an intermediary software interface is copyrightable, and (2) whether use of such software interface in the context of creating a new computer program constituted fair use. The Court ultimately reversed and remanded, answering yes to the latter question while saving the former question for another day.9
Inscribed in the U.S. Constitution is the commitment to “promote the Progress of Science and useful Arts.”10 To that end, Congress enacted the Copyright Act to provide exclusive proprietary rights for a term of years to “original works of authorship fixed in any tangible medium of expression.”11 This includes things like literary works, musicals, motion pictures, and, as of 1980, computer programs.12 Allowing the verbatim reproduction of a theoretically copyrightable product seems, at least, at odds with copyright’s aims. At worst, as Justice Thomas’s dissent (joined by Justice Alito) warns, it “eviscerates copyright.”13 How the Court reached this conclusion can be boiled down to the age-old idea/expression dichotomy of form versus function:14 the kind of code Google copied—the “declaring code”—was too entangled with non-copyrightable work to trigger a rigid application of copyright law.
Key to the Court’s analysis is the difference between “implementing code,” which Google did not copy, and “declaring code,” which Google copied in full. “Implementing code” tends to be unique and is likely what most people think of when they think of a computer program; it is the code through which the programmer tells the computer what to do. In Java, the implementing code is nested within an organizational structure of classes (a collection of data and all associated functionality) and packages (a collection of classes) that together make up the Application Programing Interface (“API”). Having these categories makes it easier for programmers to build a series of method calls (the code that the programmer inputs in order to trigger functionality) adding up to implementing code—a program —to achieve the particular desired tasks. This ease of use is part of Java’s appeal. Once the programmer types the method calls to create this implementing code, that implementing code is checked against the structured “declaring code” within the API to determine what functionality exists and is defined that would allow that code to achieve its goals in a particular environment. Here, Google copied 37 packages’ worth of Java’s API, which Google claimed was necessary to it being able to use the Java language at all.15
The Court did not directly address whether the declaring code was, in fact, copyrightable—something the dissent takes great issue with.16 Instead, it tackled the question of fair use first, because resolving either issue would dispense Oracle’s claims.17 Fair use is an equitable limitation on copyright protection, meant to ensure, in part, that copyright not be used to “grant anyone more economic power than is necessary to achieve the incentive to create.”18 Fair use reigns in the power of copyright to prevent monopolies on creative product and promote the continued developments of the useful arts. The Court cites Sega Enterprises Ltd. v. Accolade, Inc.19 to demonstrate that even wholesale copying of copyrighted code is fair use when it is done in order to develop a new product.20
With this principle in mind, the Court’s decision is a straightforward application of the four-factor test for fair use:
(1) the purpose and character of the use, including whether such use is of a commercial nature or is for nonprofit educational purposes;
(2) the nature of the copyrighted work;
(3) the amount and substantiality of the portion used in relation to the copyrighted work as a whole; and
(4) the effect of the use upon the potential market for or value of the copyrighted work.21
Fair use has long been “a mixed question of law and fact.”22 Typical factual issues that must be proven by evidence as weighed by the factfinder (often a jury) include “how much of the copyrighted work was copied” and “whether there was harm to the actual or potential markets for the copyrighted work.”23 In contrast, questions of law emerge when categorizing the importance of the factual findings and asking the ultimate question of whether the use was fair.
The Court’s analysis begins with the second factor—the nature of declaring code. There is a “critical line,” the Court says, “between the user-centered declaratory code and the innovative implementing code.”24 Declaring code differs from other copyrightable computer code because “[i]t is inextricably bound together” with both uncopyrightable ideas—the division of computing tasks, the organization of information—and copyrightable ideas—the “new creative expression” of the implementing code.25 Bearing in mind that ideas, procedures, systems, and methods of operation are not copyrightable under Section 102(b), the Court reminds us that “some works are closer to the core of [copyright] than others.”26 Bound up as it is with uncopyrightable functions and organizational ideas, the Court determined that declaring code is one of those works that drifts from the heart of copyright. Interestingly, even though the Court refused to tackle the question of copyrightability head-on, in effect it still opines on the issue by determining that declaring code sits far enough away from the core of copyrightability to weigh toward fair use. The dissent calls this analysis “mistaken” in its attempt to draw dividing lines between different kinds of computer programs.27 While the “idea” of declaring code is not copyrightable, the dissent says, the “specific expression of that idea found in [Oracle’s] library” is, which entitles it to the same full protections as implementing code.28
The Court then circled back to the first factor—the purpose and character of Google’s use of the declaring code. The more “transformative” the use,29 the more likely that use was fair. “An artistic painting might, for example, fall within the scope of fair use even though it precisely replicates a copyrighted advertising logo to make a comment about consumerism”; similarly, “a parody can be transformative because it comments on the original or criticizes it, for parody needs to mimic an original to make its point.”30 Here, the Court emphasized that Google’s aim was to create a new product: “To the extent that Google used parts of the Sun Java API to create a new platform that could be readily used by programmers, its use was consistent with that creative ‘progress’ that is the basic constitutional objective of copyright itself.”31 This is because Google only copied what was needed to allow programmers to create new products using the platform. The dissent argues that defining “transformative” as spurring the creation of new products conflates transformative use with “derivative” use, a right belonging to the copyright holder. “To be transformative, a work must do something fundamentally different from the original. A work that simply serves the same purpose in a new context—which the majority concedes is true here—is derivative, not transformative.”32
As to the third factor—amount and substantiality—the majority found that 11,500 lines of code were minimal (0.4%, to be exact) compared to the 2.86 million lines of code in the Java API.33 The dissent countered that while it was only 0.4% of the API, it was 100% of the declaring code.34 On the fourth factor—market benefits—the majority emphasized that Sun operates in an entirely different market (laptops and desktops) from Android, a mobile platform.35 It also noted that Sun had tried to enter the smartphone market but was unsuccessful. Finally, the majority recognized that both Sun and the general public benefit from the widespread use of the declaring code because it encourages continued use of Java and spurs new product development.36 The dissent, however, notes that as a result of Google’s copying, “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.”37
Ultimately, the Court’s decision rests on an analysis of creative input and output. How much creative energy was expended in expressing a programming code that organizes and retrieves the implementing code? In answering this question, the Court necessarily passes judgment on which kinds of code are more deserving of copyright protection, and which can be freely shared without it. According to the majority, declaring code is even more functional than most computer programming, and therefore bears fewer of the marks of creative expression that copyright seeks to protect.38 And what’s more, declaring code is also “the key . . . to unlock the programmers’ creative energies” in developing new products.39 “[A]llowing enforcement here would make of the Sun Java API’s declaring code a lock limiting the future creativity of new programs. Oracle alone would hold the key.”40
After Google v. Oracle, Sun may as well change its slogan to: write once, copy anywhere.41 Given the prolific use of APIs, programmers, developers, and others who want to use their acquired knowledge and experience with software interfaces in subsequent platforms would rejoice in the Court’s decision. They can now use APIs without worry. So long as a party can demonstrate that it has not made use of the “expressive” implementing code, and that its use has furthered the development of new products, then it may well succeed under a fair use defense following this precedent, even if the volume of code copied is significant. This opens the door to a much freer exchange of coding packages, making new product development faster and easier. One would expect to see more copying, more cases, and more claims of fair use. Lower courts will doubtlessly ponder this decision’s implications as they apply it to the never-ceasing tide of fights over the limits of the reuse and redeployment of software code.
On the other hand, software creators may have lost what little protections they have on their software, which may—counter to the Court’s intent—result in less software innovation.42 The Court has somewhat sidelined declaring code as far as copyright protection is concerned, thereby de-incentivizing further development of code with perhaps better functional and organizational capacity than Java’s API because of the possibility of its “fair-use” by another company at zero cost or repercussion.43 Further, the Court may have declared that mobile platforms are both a distinct programming entity and a distinct market from desktops and laptops. Whether you side with the majority or dissent here depends, in part, on how literally you take the saying that a smartphone is like “a computer in your pocket.”44 In future cases where transformative use or market interference is at issue, this opinion’s strong language may serve as precedent for parties to argue that mobile technology is in a realm on its own.45 In any case, under this holding, copying the very building blocks of the Java API is, as it was, fair game.
Jasper L. Tran and Kristen C.A. Kido are IP litigation associates at Milbank LLP in Los Angeles. All views expressed herein are their own and not necessarily reflective of the Firm or its clients.
1 Justice Barrett did not participate because the case was argued before she joined the Court.
2 See, e.g., Texas Co. v. Anderson-Prichard Ref. Corp., 32 F. Supp. 347, 347 (W.D. Okla. 1940) (deciding a patent case between “giants in the petroleum refining industry”); Oregon Shipbuilding Corp. v. NLRB, 49 F. Supp. 386, 389 (D. Or. 1943) (describing a labor and employment case as a “battle between the giants in the economic field”); Monsanto Co. v. Rohm & Haas Co., 312 F. Supp. 778, 796 (E.D. Pa. 1970) (addressing a “battle of corporate giants” in a patent case involving herbicides); Barre-Nat’l, Inc. v. Doshi, No. 88-cv-1847, 1988 WL 36335, at *5 (D.N.J. Apr. 18, 1988) (deciding a Trade Secrets Act case involving “two corporate giants” in the pharmaceutical arena).
3 Originally developed in 1996, the Java platform has grown in popularity with programmers in part because of its “write once, run anywhere” ability—Sun Microsystems’ slogan—which allowed them to write a cross-platform program in the Java language on a computer using one operating system and later run that same program on another computer using a completely different operating system.
4 Oracle purchased Sun for $7.4 billion in January 2010. Press Release, Oracle, Oracle Buys Sun (Apr. 20, 2009), https://www.oracle.com/corporate/pressrelease/oracle-buys-sun-042009.html; Stephen Shankland, Oracle Buys Sun, Becomes Hardware Company, CNET (Jan. 27, 2010, 6:55AM), https://www.cnet.com/news/oracle-buys-sun-becomes-hardware-company/.
5 Oracle Am., Inc. v. Google Inc., 872 F. Supp. 2d 974, 976 (N.D. Cal. 2012).
6 Id. at 976, 998.
7 Oracle Am., Inc. v. Google Inc., No. 10-cv-3561, 2016 WL 3181206, at *10 (N.D. Cal. June 8, 2016); Oracle Am., Inc. v. Google Inc., 750 F.3d 1339, 1348 (Fed. Cir. 2014). This appeal of a copyright dispute went to the Federal Circuit, instead of the Ninth Circuit, “[b]ecause this action included patent claims,” which granted the Federal Circuit “jurisdiction pursuant to 28 U.S.C. § 1295(a)(1).” 750 F.3d at 1353.
8 Oracle Am., Inc. v. Google LLC, 886 F.3d 1179, 1210 (Fed. Cir. 2018).
9 Excluding Justice Barrett, the Court faced a possibility of a 4-4 split. Reading the tea leaves, fair use could be an acceptable compromise between the remaining justices to avoid their disagreement on whether APIs are copyrightable.
10 U.S. Const. art. I, § 8, cl. 8.
11 17 U.S.C. § 102(a) (1990).
12 Congress defined computer programs as “a set of statements or instructions to be used directly or indirectly in a computer in order to bring about a certain result.” 17 U.S.C. § 101.
13 Google LLC v. Oracle Am., Inc., 583 U.S. __, slip op. at 17 (2021) (Thomas, J., dissenting).
14 See, e.g., Peter G. Spivack, Does Form Follow Function? The Idea/Expression Dichotomy in Copyright Protection of Computer Software, 35 UCLA L. Rev. 723 (1988).
15 Google, slip op. at 8. To better understand how the Java API works, the Court provided the following example “method—designed to return the largest of three integers”—within a class called “math,” which itself is within one of Java API packages at issue called “java.lang”:
public static int MaxNum (int x, int y, int z) {
if (x >= y && x >= z) return x;
else if (y >= x && y >= z) return y;
else return z;
}
“The first line is declaring code that defines the method, including what inputs (integers x, y, and z) it can process and what it can output (an integer). The remainder is implementing code that checks which of the inputs is largest and returns the result.” Id. at 2–3 n.2 (Thomas, J., dissenting). Moreover, “the word ‘public’ means that the method is generally accessible, ‘static’ means that no specific instance of the class is needed to call the method, the first ‘int’ indicates that the method returns an integer.” Oracle, 750 F.3d at 1349.
16 See Google, slip op. at 4 (Thomas, J., dissenting). According to the dissent, “[c]omputer code occupies a unique space in intellectual property . . . . A library of code straddles [patent and copyright]. It is highly functional like an invention; yet as a writing, it is also a work of authorship. Faced with something that could fit in either space, Congress chose copyright, and it included declaring code in that protection.” Id.
17 Id. at 15 (majority opinion).
18 Id. at 16 (quoting Final Report of the National Commission on New Technological Uses of Copyrighted Works 12 (1978)).
19 977 F.2d 1510, 1521–27 (9th Cir. 1992).
20 Google, slip op. at 17.
21 17 U.S.C. § 107. Prior to its codification, this judge-made test originated from Justice Story’s 1841 decision in Folsom v. Marsh, 9 F.Cas. 342, 344–45 (No. 4,901) (C.C.D. Mass. 1841) (“[F]or example, . . . a reviewer may fairly cite largely from the original work, if his design be really and truly to use the passages for the purposes of fair and reasonable criticism. On the other hand, . . . if he thus cites the most important parts of the work, with a view, not to criticise, but to supersede the use of the original work, and substitute the review for it, such a use will be deemed in law a piracy.”).
22 Google, slip op. at 19 (quoting Harper & Row Publishers, Inc. v. Nation Enters., 471 U.S. 539, 560 (1985)).
23 Id. at 19.
24 Id. at 23.
25 Id. at 22–24; see also id. at 13 (“[U]nlike patents, which protect novel and useful ideas, copyrights protect ‘expression’ but not the ‘ideas’ that lie behind it.”).
26 Id. at 24 (quoting Campbell v. Acuff-Rose Music, Inc., 510 U.S. 569, 586 (1994)).
27 Id. at 9 (Thomas, J., dissenting).
28 Id. at 6–7.
29 That is, the more the use “adds something new and important.” Id. at 24.
30 Id. at 24–25 (cleaned up). See generally Jack Metzler, Cleaning Up Quotations, 18 J. App. Prac. & Process 143 (2017).
31 Id. at 25 (quoting Feist Publ’ns, Inc. v. Rural Tel. Serv. Co., 499 U.S. 340, 349–50 (1991)).
32 Id. at 17 (Thomas, J., dissenting).
33 Id. at 28 (majority opinion).
34 See id. at 18 (Thomas, J., dissenting) (“The majority points out that the 11,500 lines of declaring code . . . were just a fraction of the code in the Java platform. But the proper denominator is declaring code, not all code.”).
35 See id. at 31 (majority opinion).
36 See id. at 34–35.
37 Id. at 1 (Thomas, J., dissenting).
38 See id. at 23–24 (majority opinion).
39 Id. at 30.
40 Id. at 34.
41 See id. at 3 (noting Sun’s slogan of “write once, run anywhere”).
42 See, e.g., Google LLC v. Oracle Am., Inc., No. 18-956, Brief for Respondent at 57 (U.S. Feb. 12, 2020) (warning that if companies cannot protect their software interfaces through copyright, “[n]o company will make the enormous investment required to launch a groundbreaking work like Java.”). Consequently, companies that want to keep ownership of their APIs should consider patent instead of copyright protection.
43 Litigants may still be subjected to juries that are asked to decide whether the APIs were used (for infringement) and then hope to rely on fair use as a defense.
44 See, e.g., Barack Obama, Remarks by the President at Howard University Commencement Ceremony (May 7, 2016), https://obamawhitehouse.archives.gov/the-press-office/2016/05/07/remarks-president-howard-university-commencement-ceremony; Margaret M. Lawton, Warrantless Searches and Smartphones: Privacy in the Palm of Your Hand?, 16 UDC/DCSL L. Rev. 89, 89 (2012).
45 This decision may have implications in other contexts as well. Take, for example, the dispute about the copyrightability of control codes in Pyrotechnics Mgmt., Inc. v. XFX Pyrotechnics LLC & fireTEK, No. 2:19-cv-893-RJC, 2020 WL 2085251 (W.D. Pa. Apr. 30, 2020) (issuing a preliminary injunction). In Pyrotechnics, both parties make a device used to control fireworks displays. The device issues and responds to commands, which are basically numbers sent along the wire. It uses software called a protocol by the plaintiff (and anyone else familiar with this kind of technology) and is functionally no different than an API like that in Google v. Oracle—both are commands that instruct the devices to do something.