In this article, we’re going to be taking a step back from most of the technical stuff (although the issues posed by this article are technical in their nature) and we’re going to talk about a current event in Java that could potentially have lasting consequences for anyone developing in Java. The issue we’re talking about is a court case, that is centered around the issue of whether API’s (which you’ll recall from the last article are appliance program interfaces) can be copyrighted, even if the base language that they interact with – like Java – is free and open source. We’ll go into detail about a particular court case concerning this problem that is currently ongoing and we’ll also go into the possible ramifications of what might happen if the case goes either way.
The particular copyright lawsuit we’re discussing in this article is Google vs. Oracle, which concerns the possible misuse of copyrighted material by Android. Oracle claims that the Android operating system includes 37 Java packages that are, in fact, Oracle’s intellectual property. We’ll talk more about the tech aspect of this case in a little bit, but in essence, Oracle is claiming the copyright on the API’s – the ways that the Android programs interact with Java – rather than the Java packages themselves. Because the United States Supreme Court has, until now, refused to try cases about API intellectual property rights, this case is more about distinguishing the definition of fair use in this particular situation than it is about actually determining the legality of copyrighting APIs. This means that, whatever the outcome for this case, it will determine what all disputes like this one are going to look like in the future.
In general, copyrights exist to protect the creator of something like a book or a play or a photograph or a computer program or a patent. The copyright gives the user certain privileges about how that work can be used or distributed and how it can be sold or rented. A copyright also ensures the copyright holder that a certain amount of income made from the sale or use of their intellectual property goes to them. Where it gets tricky is the concept of fair use – that is, use of copyrighted material by someone who doesn’t hold the copyright that is still legal. Things like parodies and use for educational purposes are usually the kind of things we talk about when we talk about fair use, but some copyrighted material has become such an iconic part of popular nomenclature that protection for them is a little looser. For example, the Kleenex brand of facial tissue has become so ubiquitous that a lot of people refer to any facial tissue, regardless of brand, as Kleenex, and the people who copyrighted Kleenex originally can’t actually sue over that. So how does this stuff fit into a discussion of APIs? Well, we’ll talk about the possible ramifications of copyrighting APIs later, but for now, consider that, if Oracle wins this case, it will mean that copyrights on APIs can be enforced like any other intellectual property, and that fair use protection around them will get a lot stricter.
Call to code vs. code
At this point, you might be thinking that all this discussion of fair use and copyrights and Kleenex is great – but isn’t Java free and open source? Wouldn’t that make this whole issue moot because Oracle is trying to sue over something they don’t even hold the copyright on? The short answer is sort of, and the long answer goes into the particular tech definition of what an API is. What Oracle is doing is not trying to claim that they hold the copyright on Java’s code – that’s factually incorrect and anyone claiming the copyright on any variety of open source code will get themselves laughed out of court. What Oracle is claiming a copyright on is the API, which means that they aren’t claiming a copyright on the code, they’re claiming a copyright on the way that code is called by an external program. There’s a very fine distinction here, which is made even more confusing by the fact that Java includes plenty of open-source APIs in it. What Oracle claims, however, is that the Android operating system uses APIs that Oracle owns, and that they did so without seeking permission or paying Oracle the royalties they’re due as the copyright holders on that intellectual property.
As we mentioned before, the Supreme Court has, until now, dismissed cases like this and refused to offer a ruling on them. However, now that Oracle vs. Google is now being tried in court, its outcome – no matter what – will set a precedent for how cases like this work in the future. If Oracle’s claim is upheld it will also, very likely, set off a few more court cases like it almost immediately as people who have possibly allowed their APIs to be used by programs decide to sue for a settlement because of the formerly-unattributed use, which used to be par for the course but now has legal precedent to support a settlement claim. Some people claim that if Oracle wins this case, it will mean a damper is put on innovation in the tech sector as people become more concerned with protecting their copyrighted material than they are with advancing technology. Others point out that there are individuals who make money off of holding intellectual property and then renting it out to people, who will likely make a lot of money as a result.
However this case turns out, it will be a big moment for the tech industry, and for Java. It’s possible that, if Oracle’s claim is upheld, it might result in Java’s open-source nature getting a little more controlled. It’s also possible that, if Google wins, everything will stay the same. The only thing we can really be sure of is that this case is an important moment in tech history, and it’s one you’re going to want to watch closely.