Here is the technology at the heart of the $9 billion legal war between Oracle and Google
At the heart of Oracle's lawsuit is the allegation that Google improperly used pieces of the mega-important Java technology in Android without paying properly for the privilege.
Google argues that the way it used Java constitutes "fair use," and that it's impossible to copyright the pieces of Java which it put into Android.
The outcome of this trial will send shockwaves through the tech industry: If Oracle wins, it's going to make it a lot more complicated, legally speaking, to build software that works with other software.
But what, exactly, is Java? Why did Google use it in the first place? And why is Oracle so mad?
Here are some answers.
A brief history of Java
Huge chunks of Amazon, Google, Netflix, PayPal, and lots of others all power their web applications and software with Java, right alongside other popular languages like C++.
Java gots its start at early Silicon Valley superpower Sun Microsystems in 1991, in a group led by famed programmer James Gosling. Gosling and his team based it on its forebear, the still-very-popular C++ language, but with an eye towards the future.
See, Java is known to be pretty slow, compared to lots of other languages. But it's stable, and reliable, and best of all, it works on any kind of PC there is, from Windows to Mac to Linux.
Hardcore hipster programmers kind of look down their nose at Java as stolid and old-fashioned, especially in the era of the smartphone and the web application, but it has lots of attributes that big, well-paying enterprises love.
"Java. Not exciting, hardly wearable, but very predictable. A language for building great big things for great big places with great big teams," wrote Paul Ford in the seminal Bloomberg Businessweek essay "What Is Code" in 2015. "People complain, but it works."
And because it works so reliably and so well, there's always a market for programmers who know Java. And, in turn, it means there are lots of programmers with Java expertise.
In 2009, Oracle bought Sun Microsystems. Soon after, Google's legal troubles began.
The rise of Android
In 2005, Google bought a startup called Android for around $50 million, bringing its team on board to help build a new mobile operating system.
That team, knowing full well that the smartphone market was poised to explode, was racing the clock to get Android to market. To do that, they built on top of freely available technologies, like the Linux kernel and Sun's Java programming language.
For Google, the thought was twofold: First, lots of developers already know Java very well, so they wouldn't have anything to re-learn when they were building Android apps. Second, thanks to its popularity, Java itself has rich, deep support for lots of behind-the-scenes things Google needed in a new operating system, and saw no reason to reinvent the wheel.
During this week's trial, former Google CEO and current Alphabet executive chairman Eric Schmidt testified that the company tried to pay Sun as much as $40 million to license Java for Android. Those talks fell apart, meaning that Google didn't use the official Java logo for Android or some of its technology.
But, and here's the crucial part, you can't copyright or own a programming language, any more than you could the English language. And so, Google moved ahead with Java in Android, replicating itself whatever pieces it couldn't license from Sun and building the rest from scratch.
Schmidt testified that Google didn't believe it was doing anything wrong, because that code was freely available. Sun may or may not have been really upset about Android's usage of Java, but it wasn't in the company's nature to go after Google. Oracle has no such hesitation.
This is where Google got itself into this legally-sticky territory, it should be noted: Oracle contends that while it may be legal for Google to use the Java programming language, it stepped over a line when it used some of that code.
Oracle's issue is that Google used some of Sun's Application Programming Interfaces, or APIs - kind of the "hooks" that computer programs use to talk to each other - to access some of those behind-the-scenes Java features. And while the Java language may be immune to copyright, Oracle says those connectors are its own intellectual property.
For what it's worth, the larger tech industry disagrees mightily that this usage violated Oracle's rights, or indeed that you can copyright an API. But it should also be noted that an e-mail from former Android boss Andy Rubin, which surfaced in court on Wednesday, could also indicate that Google was aware it was circumventing copyright when it used the APIs.
The outcome of this trial is going to have shockwave effects on the whole tech industry: If the APIs that are used to call on certain parts of Java are copyrightable and not subject to fair use, per Google's defense, then it's going to get real messy in the world of software, really quickly.
- Best 2K ultrawide monitors for gaming and streaming
- Best budget smartphones for gaming
- Best gaming keyboards with macro keys
- Best ergonomic mice for long working hours
- Best RGB mouse pads for your gaming setup