Copy and Paste – Supreme Court Holds Copying Software Function Calls Was Fair Use
The U.S. Supreme Court issued a decision in litigation involving Google’s Android operating system for mobile devices on April 5, 2021. When developing Android, Google had copied the text and format of function calls from Oracle’s Java SE Application Programming Interface (API). This copying enabled programmers already familiar with the Java programming language to easily learn to program for Android, jumpstarting the library of applications available on Google’s platform. However, Google recreated the underlying software processes that would be executed in response to those function calls from scratch. In Google LLC v. Oracle Am., Inc., No. 18-956, 2021 U.S. LEXIS 1864 (2021), the Supreme Court held that Google’s copying was permissible fair use.
Software and IP
Protecting software through intellectual property rights presents particular challenges. Copyright typically covers the unique expression of ideas in creative works, like written texts. It does not extend to the underlying ideas or functional principles that underpin a textual work. By contrast, patents typically cover the function and operation of a utilitarian object. They do not generally extend to printed matter. Software tends to be a combination of written text that, taken together, achieves some functional result. Thus, software does not straightforwardly slot into either system for protecting intellectual property, though certain characteristics of software can be protectible under those systems.
The Court’s Analysis
The Court punted on the issue of whether Oracle’s Java API could be protected by copyright in the first place. It focused on Google’s fair use defense, stating that this issue would determine the outcome regardless of whether Oracle held a valid copyright. Addressing the conflict between a jury’s earlier determination that Google’s use was fair and the appellate court’s holding that it was not, the Court affirmed that fair use was ultimately a question of law to be resolved by a judge, not an issue for the jury to decide. The Court walked through the factors for determining whether use of a copyrighted work constitutes an excusable fair use: (1) the purpose and character of the use; (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.
The majority characterized the nature of the code copied by Google as “inextricably bound together with a general system, the division of computing tasks, that no one claims is a proper subject of copyright.” Because the purpose of the function calls was to execute prewritten, underlying code to perform identified processing tasks, it was more like a functional system for categorizing and accessing data than a creative expression deserving strong, broad copyright protection. In comparison to the actual implementing code, the instructions for carrying out those tasks, the function calls were utilitarian, lacking the “magic” and creative balancing involved in reprogramming the underlying algorithms. As a result, the Court stated there was little risk that permitting copying of the function calls as a fair use would undermine the incentive for programmers to generate their own creative implementing code.
The Court emphasized that Google’s copying provided significant value and expanded into different markets than Oracle’s existing Java API would have been able to. It stated that Google’s deployment of the copied function calls into a different environment, with updated implementing code, was “transformative” in a way that made it permissible. It diminished Google’s obvious, and uncontested, commercial motive and appeared to consider its purpose in attracting developers familiar with the Java programming language as a source of transformation, rather than a motive to freeride on the effort of Oracle.
When discussing the amount and substantiality of the copied code, the Court emphasized that the copied function calls represented a tiny fraction of the Java SE API. Alluding to the saying in jazz that it’s the notes you don’t play that matter, the majority focused on the entire Java SE runtime environment and found Google’s copying to be selective and limited in the face of all the lines of code in that system. The Court explained that it need not confine its analysis to the function calls within the API because those function calls were so closely intertwined with the other parts of the system. Their very purpose was to refer to, and prompt execution of, the underlying implementing code.
The Court reversed the appellate court’s ruling against Google, finding that, as a whole, its limited copying of the primarily utilitarian function calls in Oracle’s Java API was fair use.
Justice Thomas authored a dissenting opinion, arguing that a practical view of what happened revealed Google’s use was anything but fair. It sought a license to Oracle’s Java platform and, when discussions failed, copied over 10,000 lines of code from Oracle’s library. The resulting Android operating system reduced the value of partnerships with Oracle and brought Google economic opportunity resulting in tens of billions of dollars in revenue. As he noted, Apple and Microsoft created their own function calls, revealing that Google could have chosen other expressive language to code its own function calls. The destruction of Oracle’s market, coupled with the recognition that all software is subject to copyright, should have revealed that Google’s copying was sanctionable under the copyright law.
This decision may raise the bar for innovators in the software space to protect their code. With the erosion of patent protection for software, and this decision that copying some kinds of code is more likely to be fair use, companies in the software space should look to competent counsel, like the attorneys at TraskBritt, to craft a strategy for protecting their innovations.