PITY THE 12 jurors engrossed in the labyrinthine patent and damages trial brought by Oracle over Google’s use of programming language Java in its Android operating system.
They’ve been subjected to weeks of arcane and convoluted details on how code is developed, on programming, on copyright, on patents, on open-source software. The judge himself appeared baffled at times with the complexity and conflicting accounts of engineers, lawyers and management, including the chief executives of both firms. How much worse for the jurors, who must decide on the core issues in the trial.
You could only sympathise with them when they decided last week that they would only part-decide on some of the key points. On May 7th they gave a semi-victory of sorts to Oracle (though both sides were claiming a win). But there’s more to come, and determinations are looming that could have worrying implications for software developers.
The question of how Java may be used by developers is at the heart of this lawsuit.
Oracle took possession of Java when it acquired Sun Microsystems. Versatile Java is ubiquitous on computing devices, from computers to mobile handsets, enabling applications to run in numerous operating system environments.
Google developers used Java in Android. Oracle sued Google, arguing that Google failed to license the use of Java and, therefore, Oracle would like a hefty $1 billion in damages. Google argued that Java had been an open-source platform for years, that it had the right to use it freely, and so owes nothing.
Those are the easy bits to understand. The devil is in the detail. The trial has offered some amusing moments, such as Oracle chief executive Larry Ellison not knowing whether Java is free. Then there are the duelling slide sets – Google and Oracle publicly posted tit-for-tat slide presentations, full of revealing internal emails. Having waded through all this, the jury decided last week that Google did infringe Oracle copyright on 37 APIs – application programming interfaces, a programming tool – and also on nine lines of Android code. But it also decided that Oracle couldn’t go after that $1 billion jackpot.
However, it couldn’t decide whether Google could use a “fair use” argument for Java – that it is entitled to use some portions in the creation of something new, without needing to pay for a licence.
Although there are other questions still to be determined, such as whether some Sun patents were “wilfully infringed”, as Oracle argues, or whether Google developers created code in ignorance of the patents, the copyright question eventually must be returned to by Judge William Alsup. This bit makes many US developers nervous – the issue of whether APIs, the bits of code that let software programs communicate with each other, and hence enable developers to create third-party programs that can plug into another piece of software, can be copyrighted, as Oracle argues.
APIs have never been copyrightable before, because they are not considered to be a creative invention, but simply a list of code elements that enable one piece of software to connect to another piece of software.
If APIs can be copyrighted, the relationship developers have with the companies they develop third-party software for could change. Potentially, developers would now need to pay for or gain permission to use APIs.
Critics argue such a situation is untenable and would stifle invention. At the very least, developers would find it more awkward and costly to create software. Suppliers of cloud services could also find themselves in a challenging position if major cloud providers such as Amazon could copyright its cloud APIs, regulating access to the cloud.
Meanwhile, in a timely ruling, the European Court of Justice determined last week that APIs can’t be copyrighted in Europe, stating, “To accept that the functionality of a computer program can be protected by copyright would amount to making it possible to monopolise ideas, to the detriment of technological progress and industrial development.”
If the US court decides APIs can be copyrighted, a bizarre, two-tier global software development environment would be created, in which US internet companies would likely be at a significant disadvantage, and Europe would be a far more attractive location for cloud service providers and software development.