Google LLC v. Oracle America, Inc.

Last updated

Google LLC v.
Oracle America, Inc.
Seal of the United States Supreme Court.svg
Argued October 7, 2020
Decided April 5, 2021
Full case nameGoogle LLC v. Oracle America, Inc.
Docket no. 18-956
Citations593 U.S. 1 ( more )
141 S. Ct. 1183
209 L. Ed. 2d 311
Argument Oral argument
Decision Opinion
Case history
Prior
  • Oracle Am., Inc. v. Google Inc., 872 F. Supp. 2d 974 (N.D. Cal. 2012); reversed and remanded, 750 F.3d 3303 (Fed. Cir. 2014); cert. denied, 135 S. Ct. 2887 (2015)
  • Oracle Am., Inc. v. Google Inc., No. 3:10-cv-03561, 2016 WL 1647639 (Sept. 27, 2016); reversed, 886 F.3d 1179 (Fed. Cir. 2018); cert. granted, 140 S. Ct. 520 (2019)
SubsequentOn remand, Oracle Am., Inc. v. Google LLC, No. 2017-1118, 2021 WL 1941874 (Fed. Cir. May 14, 2021)
Questions presented
  • Whether copyright protection extends to a software interface.
  • Whether, as the jury found, petitioner's use of a software interface in the context of creating a new computer program constitutes fair use.
Holding
Google's copying of the Java SE API, which included only those lines of code that were needed to allow programmers to put their accrued talents to work in a new and transformative program, was a fair use of that material as a matter of law.
Federal Circuit reversed.
Court membership
Chief Justice
John Roberts
Associate Justices
Clarence Thomas  · Stephen Breyer
Samuel Alito  · Sonia Sotomayor
Elena Kagan  · Neil Gorsuch
Brett Kavanaugh  · Amy Coney Barrett
Case opinions
MajorityBreyer, joined by Roberts, Sotomayor, Kagan, Gorsuch, Kavanaugh
DissentThomas, joined by Alito
Barrett took no part in the consideration or decision of the case.

Google LLC v. Oracle America, Inc., 593 U.S. 1 (2021), [1] was a U.S. Supreme Court decision related to the nature of computer code and copyright law. The dispute centered on the use of parts of the Java programming language's application programming interfaces (APIs) and about 11,000 lines of source code, which are owned by Oracle (through subsidiary, Oracle America, Inc., originating from Sun Microsystems), within early versions of the Android operating system by Google. Google has since transitioned Android to a copyright-unburdened engine without the source code, and has admitted to using the APIs but claimed this was within fair use.

Contents

Oracle initiated the suit arguing that the APIs were copyrightable, seeking US$8.8 billion in damages from Google's sales and licensing of the earlier infringing versions of Android. While two District Court-level jury trials found in favor of Google, the Federal Circuit court reversed both decisions, holding that APIs are copyrightable in 2014 and that Google's use does not fall under fair use in 2018. Google successfully petitioned to the Supreme Court to hear the case in the 2019 term, focusing on the copyrightability of APIs and subsequent fair use; the case was delayed to the 2020 term due to the COVID-19 pandemic. In April 2021, the Supreme Court ruled in a 6–2 decision that Google's use of the Java APIs served an organizing function and fell within the four factors of fair use, bypassing the question on the copyrightability of the APIs. The decision reversed the Federal Circuit ruling and remanded the case for further review.

The case has been of significant interest within the tech and software industries, as numerous computer programs and software libraries, particularly in open source, are developed by recreating the functionality of APIs from commercial or competing products to aid developers in interoperability between different systems or platforms.

Background

Java development

Java was originally developed at Sun Microsystems starting in December 1990. [2] It included a new programming language, a virtual machine, and a set of libraries for use with the language. [3] These libraries are documented for programmers via application programming interfaces (APIs), which tell programmers what information to provide to library functions and what results to expect back, eliminating any need for the programmer to know how the library they are using does what it does. These libraries together provide the "Java virtual machine" which programmers write programs to use (run upon). The common way in which a common set of libraries are used across all "Java virtual machines" allows for interoperability, or as marketed by Sun, "Write once, run anywhere"; a programmer need only create one version of their software which, because of the single group of APIs common to all Java virtual machines, can thus be run on any computing platform that supports Java.

The Java language was released to the public in 1995, under the Sun Community Source License, making the source code freely available but requiring that products using the code were maintained to the Java standard, and that any commercial derivative works were licensed by Sun. [4] [5] While anyone could program in the language itself, Sun maintained the Java Platform, Standard Edition (Java SE) and Mobile Edition (Java ME) libraries, provided to users as pre-compiled Java bytecode, and their respective APIs, as well as the Technology Compatibility Kits (TCKs) that tested an implementation against the Java standard. [6] Over 2006 and 2007, due to pressure from developers, Sun changed the license of the various Java packages to use the GNU General Public License with a "classpath exception", allowing developers the access necessary to make derivative works and the ability to release applications under a different license. This led to the OpenJDK (Open Java Development Kit), first released in 2007. Sun retained strong control over the language and standards itself, licensing the necessary elements like TCKs for commercial users. [5] At this time, Sun's business model changed to focusing on licensing of the Java platform to embedded devices, particularly mobile phones, and had already made licensing deals with Nokia, Motorola, and Research In Motion. [7]

Android development

Android, Inc. was founded in 2003 by Andy Rubin, Rich Miner, Nick Sears, and Chris White to develop a mobile phone platform. [8] [9] Google purchased Android in 2005 and continued developing the Android operating system. [9] During the development of Android, Google wanted to incorporate the Java SE libraries. Google's executive chairman Eric Schmidt had approached Sun's president Jonathan I. Schwartz about licensing the Java libraries for use in Android. Sun offered a licensing deal of between US$30 and 50 million. Schmidt said Google would have paid for that license, but they were concerned that Sun had also requested some shared control of Android along with the fee. [10] [11] [12] Google states that they wanted more control in order to open source the language and allow third parties to take better advantage of its code; [10] Oracle states that Sun refused because Google's intention was essentially to fork Java to a Google version of the language, and to prevent it being inter-operable with other versions, an idea which was "anathema" to the "write once run anywhere" basis of the language. [13] Because of these differences of view, the negotiations failed to reach a deal and Sun refused Google a license for Java. [13]

At this point in time, the OpenJDK implementation offered by Sun was not as mature or complete as the Java Standard Edition. [14] Instead of licensing Java, Google chose to develop a cleanroom version of the Java Standard Edition libraries, developing the libraries from a completely fresh start without any access to Sun's code. This became the engine behind Android's Dalvik virtual machine, a core part of the new system. Part of the virtual machine included 37 API calls and around 11,500 lines of code deemed central to Java, which were taken from Apache Harmony, an open-source cleanroom Java implementation developed by the Apache Software Foundation (ASF). Prior to this, the ASF had tried to obtain necessary licenses from Sun to support the Apache Harmony project as to call it an official Java implementation, but could not, in part due to incompatible licensing with Java's GNU General Public License and ASF's Apache License, nor could it gain access to the Java TCKs to validate the Harmony project against Sun's implementation. [15] [16] Though Google stated they used this code to ensure interoperability with the Java Standard Edition for other programmers, [6] during the second appeal hearing, Google stated that it had used this code for commercial reasons to rapidly complete Android and to avoid the "drudgery" of recreating the code. [13] ASF ceased maintaining the Apache Harmony in 2011, leading Google to take over maintenance of these libraries. [14]

Google released a beta of the Android platform on November 5, 2007 then, one week later, the software development kit (SDK) which they noted included some Java technologies. [17] [18] [19] Sun's president Schwartz congratulated Google the same day, saying they had "strapped another set of rockets to the community's momentum  and to the vision defining opportunity across our (and other) planets." [20] During the trial, Schwartz said that at that time of Android's release, despite knowing Google may have bypassed their licensing requirements, "We decided to grit our teeth and support it so anyone supporting it would see us as part of the value chain". [7]

Oracle announced it would purchase Sun in April 2009 for US$7.4 billion, and completed the acquisition in January 2010. [21] Besides allowing them to enter the hardware business, Oracle's CEO Larry Ellison called the Java language "the single most important software asset we have ever acquired". [22] Oracle continued to develop Java and pursue licensing opportunities following its acquisition of Sun.

By the release of Android KitKat (v4.4) in 2013, Google removed the Dalvik virtual machine and replaced it with the Android Runtime, which had been built within Google without any of the Java source code. [23] However, Android continued to use the JavaSE APIs through the extent of the case's litigation up until Android Nougat when it was fully replaced by OpenJDK. [24] [14]

First phase: API copyrightability and patents

The first phase of the case lasted from 2010 to 2015. Oracle successfully established that APIs are copyrightable, but their claims of patent infringement were rejected.

First District Court trial

Judge William Alsup, who presided over both trials at the District Court level William Alsup District Judge.jpg
Judge William Alsup, who presided over both trials at the District Court level

On August 13, 2010, Oracle sued Google for copyright and patent infringement in the District Court for the Northern District of California. Oracle asserted Google was aware that they had developed Android without a Java license and copied its APIs, and that Google therefore infringed Oracle's copyright. Oracle also cited seven Oracle-owned prior patents related to the Java technology created by Sun that Google should have been aware of as they had hired former Sun developers that worked on Java. Oracle sought both monetary damages and an injunction to stop Google from using the allegedly infringing materials. [25] [26]

The case was assigned to Judge William Alsup, who split the case into three phases: copyright, patent, and damages.

The copyright phase started on April 16, 2012, and consisted of several distinct claims of infringement: a nine-line rangeCheck function, several test files, the structure, sequence and organization (SSO) of the Java (API), and the API documentation.

Oracle alleged infringement of 37 separate Java APIs which had derived from the Apache Harmony project. [11] After two weeks of testimony, the jury found on May 7, 2012, that Google had infringed on the copyright related to the code, SSO, and documentation of the APIs as well as the rangeCheck function, but were deadlocked on whether these uses fell within fair use. The jury also found that Google had sufficient reason to believe based on Sun's and Oracle's conduct that they did not need to license Java from Sun or Oracle, but did not rely on this when developing Android. [27] Oracle requested a judgement as a matter of law (JMOL) that the case dismiss any fair use defense since the jury was split, as well as to overturn the jury's decision on eight security-related files that they had reviewed and found non-infringing but which Google had stated they copied verbatim; Alsup concurred. Google asked for a similar JMOL related to rangeCheck, but Alsup denied this request. [28]

The patent phase began on May 7, 2012, with the same jury. [29] By the time of trial, Oracle's patent case comprised claims from two patents, 6,061,520 (Method and system for performing static initialization), [30] (the '520 patent) and RE38104 (Method and apparatus for resolving data references in generated code). [31] (the '104 patent). Google pursued a non-infringement defense. For the '520 patent, they argued that they were using parsing for optimizing static initialization, rather than "simulating execution" as the claim required. For the '104 patent, they argued that the instruction did not include a symbolic reference. On May 23, 2012, the jury found non-infringement on all patent claims. [32] [33] [34]

Judge Alsup issued the final verdict for both these phases on May 31, 2012. While the jury had found for Oracle regarding copyright infringement of the APIs, Alsup determined that the APIs were not copyrightable in the first place:

So long as the specific code used to implement a method is different, anyone is free under the Copyright Act to write his or her own code to carry out exactly the same function or specification of any methods used in the Java API. It does not matter that the declaration or method header lines are identical. [11]

Alsup did agree with the jury that the rangeCheck function and eight security files were a copyright infringement, but the only relief available was statutory damages up to a maximum of US$150,000 [35] [36]

As a result of these rulings and a stipulation, there was no jury damages phase. The parties agreed to zero dollars in statutory damages for the small amount of copied code by June 2012. [37] [38]

First appellate ruling

Shortly following the conclusion of the District Court case, both parties attempted to file additional JMOLs on elements of the ruling which Alsup dismissed, leading to Oracle appealing the decision and Google filing a cross-appeal on the literal copying claim. Because the case involved claims related to patents, the appeal was automatically assigned to the United States Court of Appeals for the Federal Circuit. [39] [40] The hearing was held on December 4, 2013, [41] [42] and the judgment was released on May 9, 2014. [43]

The court noted that Copyright Act provides protection to "original works of authorship fixed in any tangible medium of expression" (p. 17). The legislative history explains that literary works include "computer programs to the extent that they incorporate authorship in the programmer's expression of original ideas, as distinguished from the ideas themselves" (p. 18). To qualify for copyright protection a work must be original. 17 U.S.C. § 102(a). The court was therefore "first to assess whether the expression is original to the programmer" (p. 24), something that Google had already conceded (p. 21). This led the court to conclude "that the overall structure of Oracle's API packages is creative, original, and resembles a taxonomy" (p. 14). It therefore reversed the district court's decision on the central issue, holding that the "structure, sequence and organization" of an API is copyrightable. It also ruled for Oracle regarding the small amount of literal copying, holding that it was not de minimis . The case was remanded to the District Court for a second trial, to consider whether Google's use was acceptable anyway, under the doctrine of fair use, since the original case had not brought out the facts related to fair use sufficiently for the Appeal Court to rule on that point. [43] [44]

In October 2014, Google petitioned the U.S. Supreme Court to hear the case; [45] this request was denied in June 2015. [46]

Second phase: fair use

Second District Court trial

As ordered by the Appeals Court, a new district court trial began on May 9, 2016, on the question of whether Google's actions were fair use given the prior ruling that the APIs were copyrightable. [47] [48] Closing arguments were completed on May 23, 2016 and the jury began deliberations. Oracle was seeking damages of up to US$9 billion. [49] [50] [51] [52] [53] [54] On May 26, 2016, the jury found that Android did not infringe Oracle-owned copyrights because its re-implementation of 37 Java APIs was protected by fair use. [55] Oracle announced its intention to appeal, [55] but before doing so, it attempted unsuccessful motions to disregard the jury verdict, [56] and then to hold a re-trial. [57] [58] Oracle officially filed its appeal on October 26, 2016. [59]

Second appellate ruling

Oracle's appeal was heard by the United States Court of Appeals for the Federal Circuit in 2017. On March 27, 2018, the Court ruled in favor of Oracle. [60] The ruling analyzed the aspects of a fair use claim which were to be decided by a judge and jury, respectively. It then looked at the factual matters which, it had to be assumed, the jury had reached, and their implications in law. [60] It noted that in a "mixed" case of fact and law, such as the present dispute, the trial jury's role is to decide on the facts. Judge O'Malley quoted the Supreme Court case Campbell v. Acuff-Rose Music, Inc. 510 U.S. 569 (1994) in her opinion, noting that:

[i]n truth, in literature, in science and in art, there are, and can be, few, if any, things, which in an abstract sense, are strictly new and original throughout. Every book in literature, science and art, borrows, and must necessarily borrow, and use much which was well known and used before. (quoting Emerson v. Davies, 8 F. Cas. 615, 619 (C.C.D. Mass. 1845))

The Court of Appeals' role is to assess whether a reasonable jury could have reached the conclusions it did, and whether the judge's decision could be correct and reasonable in law. The standard review of mixed questions of law and fact concerned three components: "(1) determining the legal standard governing the question posed and what types of historical facts are relevant to that standard; (2) finding what the historical facts in the case at hand are; and (3) assessing whether the historical facts found satisfy the legal test governing the question to be answered" (Decision p. 19). Except clear error, the role of the jury is limited to determining disputed 'historical facts' (2). The facts are not discussed. "It is undisputed that Google copied verbatim the declaring code of the 37 Java API packages 11,500 lines of Oracle's copyrighted code. It also copied the SSO of the Java API packages. (Decision p. 10)" It is also established and Google recognizes that the software copied is creative and original.

The Court found that as a matter of law, Google's use of Java could not have fallen within fair use, even if all factual matters decided by the jury had been in Google's favor. The Appeals Court found that Google's use of API code declarations had not met any of the four current criteria for fair use, but was merely untransformed reuse. It had not been transformative, since it was used for the same purposes without even minimal changes or rewrites. It was not minimal, since it was agreed that only 170 lines of the 11,500 lines copied were needed for Google's purposes. It was not within any example of transformation, nor intended to permit third party interoperability, since Google had made no substantial efforts to use them for the purpose of third party interoperability. (In fact it found that Google had tried to prevent interoperability with other Java and had previously been refused a license by Sun for that reason. [13] ) It was not transformative in the sense of a new platform either, since other Java smartphones predated Android. [60] It was plausible that the use had harmed Sun/Oracle – perhaps to a great extent if Oracle were to be believed – since as a result, vendors began expecting Oracle to compete on price with a freely available derivative of its own language, and to require very steep discounts and undesired contractual terms. [60] Therefore, Google's use of the Java code and APIs failed to meet all four of the currently accepted criteria under which fair use would be possible. [60]

Instead, the Court found that Google's purpose had been to enhance its nascent Android platform's attractiveness to existing developers, who were often familiar with Java, and to avoid the "drudgery" of rewriting the code (which they could have done) needed to implement the 170 lines of API detail which were indeed required. "Making it easy for oneself", the court noted, is well established to not fall within valid grounds for fair use. The Court found that "The fact that Android is free of charge does not make Google's use of the Java API packages noncommercial". [61] Oracle

devised a licensing scheme to attract programmers while simultaneously commercializing the platform. In relevant part, Oracle charges a licensing fee to those who want to use the APIs in a competing platform or embed them in an electronic device. To preserve the "write once, run anywhere" philosophy, Oracle imposes strict compatibility requirements on licensees. [62]

The purpose was commercial, the established historical facts by the jury did not satisfy any of the criteria for fair use, [60] and the Court remanded the case back to the District Court of the Northern District of California to determine the amount of damage that Google should pay Oracle. [61]

Supreme Court

Seat of the Supreme Court United States Supreme Court Building, July 21, 2020.jpg
Seat of the Supreme Court

Google filed a petition for writ of certiorari with the Supreme Court of the United States in January 2019 to challenge the two rulings that were made by the appeals court in Oracle's favor. In its petition, Google centered its case on whether copyright extends to a software interface like an API, and whether the use of the Java API by Google fell within fair use as found at the jury trials. [63] In orders issued in April 2019, the Court asked the Solicitor General of the United States to file an amicus brief to outline the government's stance on the case. [64] The Trump administration backed Oracle and urged the Court to deny certiorari. Microsoft, Mozilla Corporation, Red Hat Inc., and others filed amicus briefs in support of Google's position. [65] IBM, the Computer & Communications Industry Association, the Internet Association, the Auto Care Association, and a collective group of over 150 academics and computer professionals also filed briefs supporting Google's stance, cautioning that a decision in favor of Oracle would hurt the computing world as a whole. [66]

The Supreme Court granted certiorari on November 15, 2019, and was expected to hear the case on March 24, 2020. [67] [68] [69] However, the Supreme Court postponed its March argument session on March 16 in light of concerns surrounding COVID-19, and later announced that Google v. Oracle was one of several cases from the 2019–20 term to be postponed until the first week of the 2020–21 term. [70] [71] [72] Following the delay, the Court asked parties to submit additional briefs related to the Seventh Amendment, given that the Federal District court had overridden some of the findings of facts that the jury had concluded in their case at the District level. [73]

Oral arguments were heard via teleconference due to the ongoing COVID-19 pandemic on October 7, 2020. [74] Justice Ruth Bader Ginsburg had died the prior month, and her replacement, Justice Amy Coney Barrett, had not yet been confirmed, so Barrett took no part in the proceedings. [75] Court observers found that while the Justices seemed to side with Oracle on the copyright arguments, they also took deference to the arguments presented by Microsoft, who had taken Google's side on the case. Microsoft argued in an amicus brief that ruling in Oracle's favor could upend the software industry. Several questions focused on how APIs fell within the idea–expression distinction of copyright and if the merger doctrine would apply. Justice Gorsuch was also seen to focus heavily on the Seventh Amendment arguments and whether the Federal Circuit's ruling to overturn the trial court's jury verdict was proper. [74] [76]

Decision

The Court issued its decision on April 5, 2021. In a 6–2 majority, the Court ruled that Google's use of the Java APIs was within the bounds of fair use, reversing the Federal Circuit Appeals Court ruling and remanding the case for further hearing. Justice Stephen Breyer wrote the majority opinion. Breyer's opinion began with the assumption that the APIs may be copyrightable, and thus proceeded with a review of the four factors that contributed to fair use: [77] [78]

  1. The nature of the copyrighted work: Breyer's analysis identified that APIs served as declaring code rather than implementation, and that in context of copyright, it served an "organization function" similar to the Dewey Decimal System, in which fair use is more applicable. [79]
  2. The purpose and character of the use: Breyer stated that Google took and transformed the Java APIs "to expand the use and usefulness of Android-based smartphones" which "creat[ed] a new platform that could be readily used by programmers". [78] Breyer also wrote that Google limited to using the Java APIs "as needed to include tasks that would be useful in smartphone programs". [78]
  3. The amount and substantiality of the copyrighted material: Breyer said that Google only used about 0.4% of the total Java source code and was minimal. On the question of substantiality, Breyer wrote that Google did not copy the code that was at the heart of how Java was implemented, and that "Google copied those lines not because of their creativity, their beauty, or even (in a sense) because of their purpose. It copied them because programmers had already learned to work with [Java SE], and it would have been difficult … to attract programmers to … Android … without them." [78]
  4. The market effect of the copyright-taking. Breyer said that at the time that Google copied the Java APIs, it was not clear if Android would become successful, and should not be considered as a replacement for Java but as a product operating on a different platform. [78] Breyer further stated that if they had found for Oracle, it "would risk harm to the public", as "Oracle alone would hold the key. The result could well prove highly profitable to Oracle (or other firms holding a copyright in computer interfaces) ... [but] the lock would interfere with, not further, copyright's basic creativity objectives." [77]

Breyer determined that Google's use of the APIs had met all four factors, and that Google used "only what was needed to allow users to put their accrued talents to work in a new and transformative program". [77] Breyer concluded that "we hold that the copying here at issue nonetheless constituted a fair use. Hence, Google's copying did not violate the copyright law." [75] This conclusion rendered the need to evaluate the copyright of the API unnecessary. [77]

Justice Clarence Thomas wrote a dissenting opinion that was joined by Justice Samuel Alito. [80] Thomas wrote that the majority opinion created a new distinction between implementing code and declaring code that Congress had rejected, and thus, "the result of this distorting analysis is an opinion that makes it difficult to imagine any circumstance in which declaring code will remain protected by copyright." [24] Thomas further stated that in his own fair use analysis that "Google's use of that copyrighted code was anything but fair". [81]

Impact

Google v. Oracle was a closely watched case by the tech industry. A ruling favoring Oracle could have had significant effects on past and future software development given the prolific use of APIs. [82] Opponents of the Federal Circuit's ruling, including Google and other developers of Android-based software, had raised several concerns including the impact on interoperability, software innovation, and the potential for bad actors to pick up the rights to old software and file claims against companies who built their software on what were assumed to be open standards. If APIs became subject to copyright protection, it is believed that companies would need to implement deliberately incompatible standards to protect themselves from the risk of complex litigation. This scenario would mean moving away from the current trends in software development which have focused on improving interoperability between different services, allowing apps to communicate with one another, and creating more integrated platforms for end users. [63] [14]

Industry and legal experts stated an Oracle victory could have created a chilling effect in software development, with copyright holders using the copyright on APIs to prevent their use in developing interoperable alternatives through reverse engineering, as common in open source software development. [83] [84] [85] At the same time, experts cautioned that a judgment favoring Google's position may weaken protection for copyright for software code developers, allowing competitors with better resources to develop improved products from smaller firms and reduce the motive for innovation within the industry. [86] [87]

One example identified by Wired is the Linux operating system. While Linux is fully open source, it is based on POSIX, a set of APIs that mimic those of the commercial Unix operating system that enable high levels of interoperability for developers; a programmer would only need to write one set of code which then can be compiled on any system that has the same API, even if the computing architecture of the systems are different. If case law favored Oracle, the owners of earlier versions of Unix, Micro Focus, could have sought damages from any POSIX-based operating system developer intending to use the operating system for commercial use. [88]

See also

Related Research Articles

<span class="mw-page-title-main">Fair use</span> Concept in United States copyright law

Fair use is a doctrine in United States law that permits limited use of copyrighted material without having to first acquire permission from the copyright holder. Fair use is one of the limitations to copyright intended to balance the interests of copyright holders with the public interest in the wider distribution and use of creative works by allowing as a defense to copyright infringement claims certain limited uses that might otherwise be considered infringement. The U.S. "fair use doctrine" is generally broader than the "fair dealing" rights known in most countries that inherited English Common Law. The fair use right is a general exception that applies to all different kinds of uses with all types of works. In the U.S., fair use right/exception is based on a flexible proportionality test that examines the purpose of the use, the amount used, and the impact on the market of the original work.

<span class="mw-page-title-main">Java (programming language)</span> Object-oriented programming language

Java is a high-level, class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible. It is a general-purpose programming language intended to let programmers write once, run anywhere (WORA), meaning that compiled Java code can run on all platforms that support Java without the need to recompile. Java applications are typically compiled to bytecode that can run on any Java virtual machine (JVM) regardless of the underlying computer architecture. The syntax of Java is similar to C and C++, but has fewer low-level facilities than either of them. The Java runtime provides dynamic capabilities that are typically not available in traditional compiled languages.

Oracle Corporation is an American multinational computer technology company headquartered in Austin, Texas. Co-founded in 1977 by Larry Ellison, who remains executive chairman, Oracle ranked as the third-largest software company in the world by revenue and market capitalization as of 2020, and the company's seat in Forbes Global 2000 was 80 in 2023.

Software copyright is the application of copyright in law to machine-readable software. While many of the legal principles and policy debates concerning software copyright have close parallels in other domains of copyright law, there are a number of distinctive issues that arise with software. This article primarily focuses on topics particular to software.

The software patent debate is the argument about the extent to which, as a matter of public policy, it should be possible to patent software and computer-implemented inventions. Policy debate on software patents has been active for years. The opponents to software patents have gained more visibility with fewer resources through the years than their pro-patent opponents. Arguments and critiques have been focused mostly on the economic consequences of software patents.

Florian Müller is an app developer and an intellectual property activist. He consulted for Microsoft and writes the FOSSPatents blog about patent and copyright issues. From 1985 to 1998, he was a computer magazine writer and consultant for companies, helping with collaborations between software companies. In 2004 he founded the NoSoftwarePatents campaign and in 2007 he provided some consultancy in relation to football policy.

The multinational technology corporation Apple Inc. has been a participant in various legal proceedings and claims since it began operation and, like its competitors and peers, engages in litigation in its normal course of business for a variety of reasons. In particular, Apple is known for and promotes itself as actively and aggressively enforcing its intellectual property interests. From the 1980s to the present, Apple has been plaintiff or defendant in civil actions in the United States and other countries. Some of these actions have determined significant case law for the information technology industry and many have captured the attention of the public and media. Apple's litigation generally involves intellectual property disputes, but the company has also been a party in lawsuits that include antitrust claims, consumer actions, commercial unfair trade practice suits, defamation claims, and corporate espionage, among other matters.

Lotus Dev. Corp. v. Borland Int'l, Inc., 516 U.S. 233 (1996), is a United States Supreme Court case that tested the extent of software copyright. The lower court had held that copyright does not extend to the user interface of a computer program, such as the text and layout of menus. Due to the recusal of one justice, the Supreme Court decided the case with an eight-member bench split evenly, leaving the lower court's decision affirmed but setting no national precedent.

<span class="mw-page-title-main">History of free and open-source software</span>

The history of free and open-source software begins at the advent of computer software in the early half of the 20th century. In the 1950s and 1960s, computer operating software and compilers were delivered as a part of hardware purchases without separate fees. At the time, source code—the human-readable form of software—was generally distributed with the software, providing the ability to fix bugs or add new functions. Universities were early adopters of computing technology. Many of the modifications developed by universities were openly shared, in keeping with the academic principles of sharing knowledge, and organizations sprung up to facilitate sharing.

Dalvik is a discontinued process virtual machine (VM) in the Android operating system that executes applications written for Android. Dalvik was an integral part of the Android software stack in the Android versions 4.4 "KitKat" and earlier, which were commonly used on mobile devices such as mobile phones and tablet computers, and more in some devices such as smart TVs and wearables. Dalvik is open-source software, originally written by Dan Bornstein, who named it after the fishing village of Dalvík in Eyjafjörður, Iceland.

<span class="mw-page-title-main">William Alsup</span> American judge (born 1945)

William Haskell Alsup is a senior United States district judge of the United States District Court for the Northern District of California.

<span class="mw-page-title-main">Acquisition of Sun Microsystems by Oracle Corporation</span> Agreement announced in 2009 and completed in 2010

The acquisition of Sun Microsystems by Oracle Corporation was completed on January 27, 2010. After the acquisition was completed, Oracle, only a software vendor prior to the merger, owned Sun's hardware product lines, such as SPARC Enterprise, as well as Sun's software product lines, including the Java programming language.

An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build such a connection or interface is called an API specification. A computer system that meets this standard is said to implement or expose an API. The term API may refer either to the specification or to the implementation.

<i>Bowers v. Baystate Technologies, Inc.</i>

Bowers v. Baystate Technologies, 320 F.3d 1317, was a U.S. Court of Appeals Federal Circuit case involving Harold L. Bowers and Baystate Technologies over patent infringement, copyright infringement, and breach of contract. In the case, the court found that Baystate had breached their contract by reverse engineering Bower's program, something expressly prohibited by a shrink wrap license that Baystate entered into upon purchasing a copy of Bower's software. This case is notable for establishing that license agreements can preempt fair use rights as well as expand the rights of copyright holders beyond those codified in US federal law.

<span class="mw-page-title-main">Keker, Van Nest & Peters LLP</span> Law firm

Keker, Van Nest & Peters LLP is a litigation boutique located in San Francisco, California, founded in 1978. The firm's areas of practice include intellectual property, professional liability, class actions, wrongful termination defense, general contract and commercial litigation, antitrust, white collar crime, and appellate.

The smartphone wars or smartphone patents licensing and litigation refers to commercial struggles among smartphone manufacturers including Sony Mobile, Google, Apple Inc., Samsung, Microsoft, Nokia, Motorola, Huawei, LG Electronics, ZTE and HTC, by patent litigation and other means. The conflict is part of the wider "patent wars" between technology and software corporations.

SAS Institute Inc. v World Programming Ltd (2012) C-406/10 was a decision of the European Court of Justice which established that copyright protection does not extend to software functionality, programming languages, and file types.

<span class="mw-page-title-main">Structure, sequence and organization</span>

Structure, sequence and organization (SSO) is a term used in the United States to define a basis for comparing one software work to another in order to determine if copying has occurred that infringes on copyright, even when the second work is not a literal copy of the first. The term was introduced in the case of Whelan v. Jaslow in 1986. The method of comparing the SSO of two software products has since evolved in attempts to avoid the extremes of over-protection and under-protection, both of which are considered to discourage innovation. More recently, the concept has been used in Oracle America, Inc. v. Google, Inc.

Google has been involved in multiple lawsuits over issues such as privacy, advertising, intellectual property and various Google services such as Google Books and YouTube. The company's legal department expanded from one to nearly 100 lawyers in the first five years of business, and by 2014 had grown to around 400 lawyers. Google's Chief Legal Officer is Senior Vice President of Corporate Development David Drummond.

Open source license litigation involves lawsuits surrounding open-source licensed software. Many of the legal rights of open source software licensors enforceable against users violating licensing agreements are untested by the U.S. legal system. Free and open source software (FOSS) is distributed under a variety of free-software licenses, which are unique among other software licenses. Legal action against open source licenses involves questions about their validity and enforceability.

References

  1. Opinion of the Supreme Court, Google LLC v. Oracle America, Inc., 593 U.S. 1 (2021)
  2. Southwick, Karen (1999). High Noon: the inside story of Scott McNealy and the rise of Sun Microsystems . New York [u.a.]: Wiley. pp.  120–122. ISBN   0471297135.
  3. Jon Byous (April 2003). "Java Technology: The Early Years". Sun Microsystems. Archived from the original on May 30, 2008. Retrieved August 2, 2009.
  4. Krill, Paul (November 11, 2016). "After a decade, open source Java is still controversial". InfoWorld . Retrieved March 30, 2018.
  5. 1 2 Lamonica, Martin (February 13, 2007). "Sun picks GPL license for Java code". CNet . Retrieved March 30, 2018.
  6. 1 2 Jeong, Sarah (October 19, 2017). "The Judge's Code". The Verge . Retrieved March 28, 2018.
  7. 1 2 Farber, Dan (April 26, 2012). "Former Sun CEO says Google's Android didn't need license for Java APIs". CNet . Retrieved March 28, 2018.
  8. Vogelstein, Fred (April 2011). "How the Android Ecosystem Threatens the iPhone". Wired. Retrieved June 2, 2012.
  9. 1 2 Elgin, Ben (August 17, 2005). "Google Buys Android for Its Mobile Arsenal". Bloomberg Businessweek. Bloomberg. Archived from the original on February 27, 2011. Retrieved February 20, 2012. In what could be a key move in its nascent wireless strategy, Google (GOOG) has quietly acquired startup Android Inc. ...
  10. 1 2 Brodkin, Jon (April 24, 2012). "Sun wanted up to $50 million from Google for Java license, Schmidt says". Ars Technica . Retrieved March 28, 2018.
  11. 1 2 3 Oracle Am., Inc. v. Google Inc., 872F. Supp. 2d974 (N.D. Cal.2012).
  12. "Findings of Fact and Conclusions of Law on Equitable Defenses" (PDF). United States District Court for the Northern District of California/Groklaw. May 31, 2012. Retrieved June 2, 2012.
  13. 1 2 3 4 Ruling, para 34: " The point of contention between the parties was Google's refusal to make the implementation of its programs compatible with the Java virtual machine or interoperable with other Java programs. Because Sun/Oracle found that position to be anathema to the "write once, run anywhere" philosophy, it did not grant Google a license to use the Java API packages."
  14. 1 2 3 4 Amadeo, Ron (January 6, 2016). "Android N switches to OpenJDK, Google tells Oracle it is protected by the GPL". Ars Technica . Condé Nast . Retrieved July 1, 2016.
  15. "Oracle's Motion Regarding Apache Harmony" (PDF). United States District Court for the Northern District of California/Groklaw. April 22, 2012. Retrieved December 4, 2015.
  16. Metz, Cade (November 1, 2010). "Google's 'copied Java code' disowned by Apache". The Register . Retrieved March 28, 2018.
  17. "Google Launches Android, an Open Mobile Platform". Google Operating System. November 5, 2007.
  18. Helft, Miguel and John Markoff (November 6, 2007). "Google Is Pursuing Plans to Put a PC Into Every Pocket". The New York Times. Retrieved June 2, 2012.
  19. "Google releases Android SDK". Macworld. November 12, 2007. Archived from the original on August 22, 2010. Retrieved June 2, 2012.
  20. Schwartz, Jonathan (November 5, 2007). "Congratulations Google, Red Hat and the Java Community!". Sun Microsystems. Archived from the original on October 23, 2010. Retrieved June 1, 2012.
  21. Shankland, Stephan (January 27, 2010). "Oracle buys Sun, becomes hardware company". CNet . Retrieved March 28, 2018.
  22. Montalbano, Elizabeth (April 20, 2009). "Oracle, Entering Hardware Arena, Agrees to Buy Sun for $7.4 Billion". PC World . Retrieved March 28, 2018.
  23. Anthony, Sebastian (June 20, 2014). "Dalvik is dead: Next version of Android uses new ART runtime to boost speed, battery life". ExtremeTech . Retrieved April 12, 2021.
  24. 1 2 Brandom, Russell; Robertson, Aid (April 5, 2021). "Supreme Court sides with Google in Oracle's API copyright case". The Verge . Retrieved April 5, 2021.
  25. "Oracle sues Google over Android". Reuters. August 13, 2010. Retrieved January 5, 2021.
  26. Krazit, Tom (August 13, 2010). "Oracle sues Google over Android and Java". CNet . Retrieved March 28, 2018.
  27. Bishop, Bryan (May 7, 2012). "Jury finds Google infringed Oracle copyrights in partial verdict; Google moves for mistrial". The Verge . Archived from the original on June 8, 2023. Retrieved March 28, 2018.
  28. Barry, Michaela (2013). "Oracle v. Google – Copyrightability of APIs". Potomac Law Group. Archived from the original on July 11, 2019. Retrieved March 28, 2018.
  29. "Day 1 of Patent Phase in Oracle v. Google & Google Opp. Re Schwartz, as text". Groklaw. May 7, 2012. Retrieved June 1, 2012.
  30. USpatent 1273709,Yellin, Frank&Tuck, Richard D,"Method and system for performing static initialization",issued 2000-05-09, assigned to Sun Microsystemsand Oracle
  31. US Patent No. RE549416 , Gosling, James, "Method and apparatus for resolving data references in generated code", issued 2003-04-29, assigned to Sun Microsystems and Oracle
  32. "Court filing" (PDF). www.groklaw.net.[ permanent dead link ]
  33. Lowenson, Josh (May 23, 2012). "Jury verdict: Android doesn't infringe Oracle's patents". CNet . Retrieved March 28, 2018.
  34. Josh Lowensohn (May 23, 2012). "Jury clears Google of infringing on Oracle's patents". ZDNet. Retrieved May 25, 2012.
  35. King, Rachel (May 31, 2012). "Judge says 37 Oracle APIs are not copyrightable". CNet . Retrieved March 28, 2018.
  36. Joe Mullin (May 31, 2012). "Google wins crucial API ruling, Oracle's case decimated". Ars Technica. Retrieved June 1, 2012.
  37. Niccolai, James (June 20, 2012). "Oracle agrees to 'zero' damages in Google lawsuit, eyes appeal". Archived from the original on April 1, 2023. Retrieved June 23, 2012.
  38. "Second Stipulation and (Proposed) Order Regarding Copyright Damages" (PDF). United States District Court for the Northern District of California/Groklaw. Retrieved June 23, 2012.
  39. "Court Docket for Oracle v. Google Appeal". Docket Alarm, Inc. Retrieved May 10, 2014.
  40. Jones, Pamela (October 5, 2012). "Oracle and Google File Appeals". Groklaw. Retrieved November 17, 2012.[ permanent dead link ]
  41. "FOSS Patents".
  42. "FOSS Patents".
  43. 1 2 Oracle Am., Inc. v. Google Inc., 750F.3d3303 (Fed. Cir.2014).
  44. Rosenblatt, Seth (May 9, 2014). "Court sides with Oracle over Android in Java patent appeal". CNET. Retrieved May 10, 2014.
  45. Levine, Dan (October 8, 2014). "Google asks Supreme Court to decide Oracle copyright fight". Reuters. Retrieved January 5, 2021.
  46. 135 S. Ct. 2887 (2015), "Order List (06/29/2015)" (PDF). U.S. Supreme Court. Retrieved June 29, 2015.
  47. "Google puts its expert on the stand to combat Oracle, wraps up its case". Ars Technica. May 16, 2016. Retrieved May 24, 2016.
  48. "Second Oracle v. Google trial could lead to huge headaches for developers". Ars Technica. May 8, 2016. Retrieved May 24, 2016.
  49. James Niccolai (March 28, 2016). "Oracle seeks $9.3 billion for Google's use of Java in Android". PCWorld.
  50. "Oracle v. Google". Electronic Frontier Foundation. May 22, 2013.
  51. "Oracle v. Google draws to a close, jury sent home until next week". Ars Technica. May 19, 2016. Retrieved May 28, 2016.
  52. "Oracle slams Google to jury: "You don't take people's property"". Ars Technica. May 23, 2016. Retrieved May 24, 2016.
  53. "Sun's Jonathan Schwartz at trial: Java was free, Android had no licensing problem". Ars Technica. May 11, 2016. Retrieved May 24, 2016.
  54. "Oracle economist: Android stole Java's 'window of opportunity'". Ars Technica. May 18, 2016. Retrieved May 24, 2016.
  55. 1 2 Mullin, Joe (May 26, 2016). "Google beats Oracle – Android makes 'fair use' of Java APIs". Ars Technica. Retrieved May 26, 2016.
  56. Oracle Am., Inc. v. Google Inc., No.3:10-cv-035611988 (N.D. Cal.Jun. 8, 2016).
  57. Oracle Am., Inc. v. Google Inc., No.3:10-cv-035612070 (N.D. Cal.Sept. 27, 2016).
  58. Ribeiro, John (September 27, 2016). "Oracle denied new trial in copyright dispute with Google over Java". PCWorld. Archived from the original on July 25, 2021.
  59. Mullin, Joe (October 27, 2016). "It's official: Oracle will appeal its "fair use" loss against Google". Ars Technica. Retrieved October 27, 2016.
  60. 1 2 3 4 5 6 Oracle Am., Inc. v. Google Inc., 886F.3d1179 (Fed. Cir.2018).
  61. 1 2 Decker, Susan (March 27, 2018). "Oracle Wins Revival of Billion-Dollar Case Against Google". Bloomberg Businessweek . Retrieved March 27, 2018.
  62. (p.9 2017-118, 207-102)
  63. 1 2 Lee, Timothy (January 25, 2019). "Google asks Supreme Court to overrule disastrous ruling on API copyrights". Ars Technica . Retrieved January 25, 2019.
  64. Chung, Andrew (April 29, 2019). "U.S. Supreme Court seeks Trump administration views on Google-Oracle copyright feud". Reuters . Retrieved January 5, 2021.
  65. Stohr, Greg (November 15, 2019). "Google Gets U.S. Supreme Court Hearing in Oracle Copyright Clash". Bloomberg Businessweek . Retrieved November 15, 2019.
  66. Robertson, Adi (January 14, 2020). "Some of Google's biggest rivals are taking its side in a Supreme Court battle". The Verge . Retrieved January 14, 2020.
  67. "Docket for 18-956". November 15, 2019. Retrieved January 8, 2020.
  68. Higgens, Tucker (November 15, 2019). "Supreme Court will hear Google's appeal in massive copyright suit brought by Oracle". CNBC . Retrieved November 15, 2019.
  69. Robertson, Adi (February 13, 2020). "Oracle strikes back at Google in Supreme Court copyright case". The Verge . Retrieved February 13, 2020.
  70. Howe, Amy (March 16, 2020). "Justices postpone March argument session". SCOTUSblog . Retrieved March 17, 2020.
  71. de Vogue, Ariane (April 13, 2020). "Supreme Court to hear cases on Trump's financial docs, religious freedom and Electoral College via telephone". CNN . Retrieved April 13, 2020.
  72. Tsidulko, Joseph (July 13, 2020). "Oracle v Google Copyright Case Slated For Supreme Court Arguments". CRN. Retrieved July 13, 2020.
  73. "Case preview: Justices to weigh in on landmark copyright battle between Google and Oracle". October 5, 2020.
  74. 1 2 Higgens, Tucker (October 7, 2020). "Justices wary of upending tech industry in Google v. Oracle Supreme Court fight". CNBC . Retrieved October 7, 2020.
  75. 1 2 Gresko, Jessica (April 5, 2021). "Top court sides with Google in copyright dispute with Oracle". Associated Press . Retrieved April 5, 2021 via ABC News.
  76. McDermott, Eileen (October 7, 2020). "Justices Look for Reassurance That the Sky Won't Fall When They Rule in Google v. Oracle". IP Watchdog. Retrieved October 8, 2020.
  77. 1 2 3 4 Fung, Brian (April 5, 2021). "Supreme Court hands Google a victory in a multibillion-dollar case against Oracle". CNN . Retrieved April 5, 2021.
  78. 1 2 3 4 5 Mann, Ronald (April 6, 2021). "Justices validate Google's use of Java platform in Android software code". SCOTUSBlog . Retrieved April 7, 2021.
  79. Nanos, Elura (April 5, 2021). "The Supreme Court Just Sided with Google's Copying of Thousands of Lines of Code. Justice Thomas Went Off". Law and Crime . Retrieved April 5, 2021.
  80. Higgens, Tucker (April 5, 2021). "Supreme Court rules in Google's favor in copyright dispute with Oracle over Android software". CNBC . Retrieved April 5, 2021.
  81. Fritze, John (April 5, 2021). "Supreme Court sides with Google in years long fight with tech giant Oracle". USA Today . Retrieved April 5, 2021.
  82. Kendall, Brent; Greene, Jay (March 27, 2018). "Oracle Wins Court Ruling Against Google in Multibillion-Dollar Copyright Case". The Wall Street Journal . Retrieved March 27, 2018.
  83. Caballar, Rina Diane (February 19, 2020). "Google v. Oracle Explained: The Fight for Interoperable Software". IEEE Spectrum . Retrieved September 8, 2020.
  84. Lee, Timothy (May 26, 2016). "Why Google's victory in a copyright fight with Oracle is a big deal". Vox . Retrieved September 8, 2020.
  85. Livni, Ephrat (November 20, 2019). "US Supreme Court holds innovation in the balance in Google v Oracle". Quartz . Retrieved September 8, 2020.
  86. Auth, Dorothy R.; Wizenfeld, Howard (February 7, 2020). "Google v. Oracle: Will Software Be Free?". National Law Review . Retrieved September 8, 2020.
  87. Stricklett, Sue Ghosh (September 8, 2020). "Google v. Oracle: An Expansive Fair Use Defense Deters Investment In Original Content". IP Watchdog . Retrieved September 8, 2020.
  88. Finley, Klint (May 23, 2016). "The Oracle-Google Case Will Decide The Future Of Software". Wired . Retrieved March 27, 2018.