Developers
August 3, 2020

Oracle vs Google: What Their Court Case Means For Developers

Few court cases will have a more profound impact on software development than Oracle vs Google.

Oracle and Google have been locked in a bitter court battle for years, one that will have a profound impact on how software is created. While the court case revolves around Google’s Android operating system (OS), the repercussions will be felt throughout the industry.

History of the Case

The issue began when Google developed and released the Android OS in 2007. One of the decisions Google made that was instrumental to Android’s early success was making it compatible with Java libraries.

Java is one of the most popular programming languages in existence. It has been in the top three most popular languages since 2000, remaining in the top two since 2005. This popularity helped assure widespread adoption of Android, as there was a wealth of developers who could almost instantly start creating applications for the new OS.

At the time, Sun Microsystems viewed Android as a positive thing for the Java community. In fact, in a blog on Sun’s website, CEO Jonathan Schwartz said the following:

“I just wanted to add my voice to the chorus of others from Sun in offering my heartfelt congratulations to Google on the announcement of their new Java/Linux phone platform, Android. Congratulations!

I'd also like Sun to be the first platform software company to commit to a complete developer environment around the platform, as we throw Sun's NetBeans developer platform for mobile devices behind the effort. We've obviously done a ton of work to support developers on all Java based platforms, and were pleased to add Google's Android to the list.”

Things changed, however, in 2010 when Oracle bought Sun Microsystems and became the new owners of Java. Almost immediately, Oracle sued Google, claiming that Android infringed on Oracle’s newly acquired copyrights.

In particular, Oracle claimed that Google improperly copied the Java application programming interfaces (API). This is where it gets tricky, as many individuals have a hard time understanding how APIs work. Essentially, an API is a way of standardizing functions and interactions between software and services.

How-To Geek has one of the best analogies, comparing an API to a menu in a restaurant. The menu lists the dishes, gives each one a name and describes their content. The diner can then order one of those dishes and the kitchen prepares and provides what they ordered. The diner doesn’t have to see or know all the behind-the-scenes effort that goes into making the dish, nor does the kitchen staff see exactly how the diner eats the dish. The menu provides a layer of abstraction between the two.

Similarly, an API provides a layer of abstraction between different programs and services, allowing a developer to get what they need much easier. Many developers use an existing program’s APIs to make their own software compatible with it. They may use a program’s API to make it easier for their customers to move to or from the other program. Similarly, web developers will use APIs to access information and services other web applications offer. For example, a website may use APIs to aggregate hotel prices and offer a one-stop-shop for customers looking to get the best deal.

In their ongoing court battle, Google won the first round in 2012, with a court ruling that APIs were not subject to copyright protection. An appeals court, however, overturned that part of the case and said APIs could be copyrighted. The case now moves to The Supreme Court for a final decision.

What’s At Stake

If Oracle successfully argues their case before The Supreme Court, and APIs are considered subject to copyright, the decision will impact virtually every type of software development on the planet.

First and foremost, this will not impact the software that started everything to begin with, namely Android. In recent versions, Google has based Android on OpenJDK, the official, open-source version of Java that Oracle makes available under the GPL. This eliminates Google’s custom version with the offending APIs .

If Oracle wins its case, however, countless other companies, both startup and established, may not fair so well. Open-source software that relies on APIs to provide compatibility could be targeted. Web applications, such as the example above, could suddenly find themselves being sued.

Even Linux, the darling of the open-source community, could find itself in the crosshairs. Why? Because Linux uses POSIX, an API that is based on, and compatible with, the APIs of the UNIX OS. As a result, the current owner of UNIX could sue any Linux vendor.

It’s little wonder that companies across the industry, from IBM to Mozilla to Microsoft to Red Hat to the Computer & Communications Industry Association to the Internet Association have filed briefs supporting Google’s case.

While the case was originally slated to be heard during the 2019-20 term, the coronavirus pandemic forced it to be postponed till the 2020-21 term. Given what’s at stake, it’s a safe bet developers and companies around the country will be waiting with bated breath for the outcome.

TagsOracleGoogleJava
Matt Milano
Technical Writer
Matt is a tech journalist and writer with a background in web and software development.

Related Articles

Back
DevelopersAugust 3, 2020
Oracle vs Google: What Their Court Case Means For Developers
Few court cases will have a more profound impact on software development than Oracle vs Google.

Oracle and Google have been locked in a bitter court battle for years, one that will have a profound impact on how software is created. While the court case revolves around Google’s Android operating system (OS), the repercussions will be felt throughout the industry.

History of the Case

The issue began when Google developed and released the Android OS in 2007. One of the decisions Google made that was instrumental to Android’s early success was making it compatible with Java libraries.

Java is one of the most popular programming languages in existence. It has been in the top three most popular languages since 2000, remaining in the top two since 2005. This popularity helped assure widespread adoption of Android, as there was a wealth of developers who could almost instantly start creating applications for the new OS.

At the time, Sun Microsystems viewed Android as a positive thing for the Java community. In fact, in a blog on Sun’s website, CEO Jonathan Schwartz said the following:

“I just wanted to add my voice to the chorus of others from Sun in offering my heartfelt congratulations to Google on the announcement of their new Java/Linux phone platform, Android. Congratulations!

I'd also like Sun to be the first platform software company to commit to a complete developer environment around the platform, as we throw Sun's NetBeans developer platform for mobile devices behind the effort. We've obviously done a ton of work to support developers on all Java based platforms, and were pleased to add Google's Android to the list.”

Things changed, however, in 2010 when Oracle bought Sun Microsystems and became the new owners of Java. Almost immediately, Oracle sued Google, claiming that Android infringed on Oracle’s newly acquired copyrights.

In particular, Oracle claimed that Google improperly copied the Java application programming interfaces (API). This is where it gets tricky, as many individuals have a hard time understanding how APIs work. Essentially, an API is a way of standardizing functions and interactions between software and services.

How-To Geek has one of the best analogies, comparing an API to a menu in a restaurant. The menu lists the dishes, gives each one a name and describes their content. The diner can then order one of those dishes and the kitchen prepares and provides what they ordered. The diner doesn’t have to see or know all the behind-the-scenes effort that goes into making the dish, nor does the kitchen staff see exactly how the diner eats the dish. The menu provides a layer of abstraction between the two.

Similarly, an API provides a layer of abstraction between different programs and services, allowing a developer to get what they need much easier. Many developers use an existing program’s APIs to make their own software compatible with it. They may use a program’s API to make it easier for their customers to move to or from the other program. Similarly, web developers will use APIs to access information and services other web applications offer. For example, a website may use APIs to aggregate hotel prices and offer a one-stop-shop for customers looking to get the best deal.

In their ongoing court battle, Google won the first round in 2012, with a court ruling that APIs were not subject to copyright protection. An appeals court, however, overturned that part of the case and said APIs could be copyrighted. The case now moves to The Supreme Court for a final decision.

What’s At Stake

If Oracle successfully argues their case before The Supreme Court, and APIs are considered subject to copyright, the decision will impact virtually every type of software development on the planet.

First and foremost, this will not impact the software that started everything to begin with, namely Android. In recent versions, Google has based Android on OpenJDK, the official, open-source version of Java that Oracle makes available under the GPL. This eliminates Google’s custom version with the offending APIs .

If Oracle wins its case, however, countless other companies, both startup and established, may not fair so well. Open-source software that relies on APIs to provide compatibility could be targeted. Web applications, such as the example above, could suddenly find themselves being sued.

Even Linux, the darling of the open-source community, could find itself in the crosshairs. Why? Because Linux uses POSIX, an API that is based on, and compatible with, the APIs of the UNIX OS. As a result, the current owner of UNIX could sue any Linux vendor.

It’s little wonder that companies across the industry, from IBM to Mozilla to Microsoft to Red Hat to the Computer & Communications Industry Association to the Internet Association have filed briefs supporting Google’s case.

While the case was originally slated to be heard during the 2019-20 term, the coronavirus pandemic forced it to be postponed till the 2020-21 term. Given what’s at stake, it’s a safe bet developers and companies around the country will be waiting with bated breath for the outcome.

Oracle
Google
Java
About the author
Matt Milano -Technical Writer
Matt is a tech journalist and writer with a background in web and software development.

Related Articles