If Oracle wins its Android suit, everyone loses

Android's future is a small piece of what's at stake in the Google-Oracle lawsuit

April 16 sees the start of the court case between Google and Oracle over Android's supposed unlicensed use of Java technology. The case has changed character substantially since it started. Originally a patent lawsuit of epic proportions, various forces of erosion have reduced Oracle's patent case to approximately nothing. What's left is a copyright case that at first sight had many people scratching their heads; the picture hasn't improved much with the passage of time.

Nonetheless, if Oracle wins the case, software developers everywhere -- especially open source developers -- will suffer, not just Google. Here's the background you need to understand the implications.

[ For more on this topic, see "Why software patents are evil," by InfoWorld's Simon Phipps. | InfoWorld's Martin Heller dissected the initial lawsuit in "Oracle's Android lawsuit: A Pandora's box of serious evils." | Subscribe to InfoWorld's Technology: Open Source newsletter to stay on top of the latest developments. ]

Java history in a nutshell

Originally, there were two main elements to Oracle's case against Google. Both relate to Java and are part of the legacy of Sun Microsystems, inherited by Oracle. I was closely involved in the history of Java, having been part of the IBM team that adopted it in 1995, then working at Sun on open source, so a highly condensed Java history from the decade before Android may be helpful.

Back in the early days of Java, in the mid-1990s, Sun was faced with a market where the gorilla was Microsoft, with its instinct to grab anything shiny and potentially standard -- then embrace and extend it so that only Microsoft could benefit. Sun wisely foresaw this threat to Java and built a complex system of copyright, patent, and trademark barriers around it.

Those implementing "100 percent pure Java" were inoculated from all the threats of this bear trap, but anyone who tried to balkanize Java quickly discovered that they were at risk from multiple lawsuits, potentially from multiple companies. The prescience of this protection was vindicated when Microsoft did indeed try to "embrace and extend" Java, and Sun did indeed successfully sue Microsoft for a large sum of money to make it stop.

Fast-forward 10 years and the market had changed completely. A convicted monopolist, Microsoft was following a path previously trodden by IBM following its own antitrust settlement. Smothered in bureaucracy, risking legal action in any market it entered, struggling under out-of-date leadership, it was no longer the biggest gorilla in the jungle. Indeed, it had embarked on a whisper campaign against the new prime primate, Google.

Meanwhile, Google was carving a new path using its systemically generated wealth to fund strategic initiatives in markets most industry watchers had assumed were already stitched up. Most significant, Google created Android, a mobile device platform with Linux at its heart but with Java as its nervous system.

A key part of Google's strategy was for Android to be free from anything that would prevent it from being adopted and deployed anywhere in the world without obstacle by anyone. Wary of any intimate relationship with an obviously failing Sun Microsystems, Google avoided licensing Java from Sun. Doing so would almost certainly have required some form of per-device royalty, meaning adoption of Android would require both tracking and payment for use. But without a license, Google would have to engineer its way around the bear trap.

In an effort to do just that, Google hired many key staffers from Sun's Java team and invested much effort. Since Java uses a "virtual CPU" to run programs, Google procured a virtual machine for Android intended to avoid all of Sun's JVM patents. Google felt more relaxed about the actual Java language and programming interfaces, since the received legal wisdom of the software industry is that programming languages and interfaces can't be copyrighted. Google used independently implemented code to sit behind those programming interfaces -- most notably from the Apache Harmony project Sun had shunned. Finally, Google took care to avoid any Java trademarks; despite being Java all the way down, Google never promoted Android as a Java platform. Bear trap avoided.

Sun never tried to close the Java bear trap on Google's leg as it had with Microsoft. Indeed, Sun CEO Jonathan Schwartz welcomed Android as a new vehicle for popularizing Java as a development platform. However, Oracle's culture is a little different. One can imagine, sometime after the acquisition of Sun, an Oracle lawyer stumbling on a folder containing the rough outline of a lawsuit. Next stop, Larry's office.

The Oracle patent lawsuit

Born of a generation of developers who regard software patents as anathemic sociopathy, Google was slow to acquire a defensive patent portfolio. Eventually it began building a patent war chest (mainly by purchasing patent portfolios), but by the standards of its industry peers, it was poorly defended. Oracle, on the other hand, has a fearsome arsenal of software patents, both homegrown and acquired through the the many businesses it consumes each year -- including Sun, which itself had an impressive defensive patent portfolio.

When it initiated its lawsuit against Google, Oracle threw everything it had into the case, accusing it of both patent and copyright infringement. It accused Google of infringing multiple claims in multiple patents, loading so much into the case that the judge involved called foul. Fearing that the preparation for and argument of the case could take years, he ultimately insisted that Oracle limit the number of patents and the number of claims from those patents. Google got straight to work on the list of patents, challenging their validity and getting claim after claim invalidated.

As the patents were eliminated, the potential damages from the case went down and down, until today they are pocket change for Google. Hoping that this would mean Google and Oracle could settle out of court, the judge recently ordered the two companies' executives to appear at a settlement hearing. It didn't work.

What's left? There are still some patent claims. Oracle hopes it will be able to justify an injunction against Google -- a court order banning distribution of Android -- and that will be enough to force Google into some form of royalty-based arrangement. That would not be good for Android.

Patent licensing based on counting the number of products using the patent is a fundamental obstruction to open source. Even arrangements that are "reasonable and non-discriminatory" take away the freedom open source developers have to work without obstacle; an old-fashioned royalty arrangement that involved counting copies of Android would be a serious issue for the popularity of Android with handset manufacturers and software developers alike.

The Oracle copyright case

The main substance of the case is now a copyright claim that surprised most observers. Oracle is claiming that, by implementing the Java programming language and interfaces in Android, Google is in breach of Oracle's copyright.

This flies in the face of the received wisdom of the software industry. It's so widely accepted that programming interfaces and languages are beyond the scope of copyright that very few cases have ever been brought to court. In those that have, the received wisdom has largely been upheld.

This is a good thing. Without it, the lives of programmers would be much more complex. Header files and function prototypes would all need licensing from their owners, so programming for any operating system would at best require attention to license compatibility and at worst would involve total control of the programming lifecycle by the platform vendor.

If Oracle wins, the decision could set a legal precedent that legitimizes controlling behaviors by platform vendors -- and introduces a complex and unwelcome legalism into software development. Header files and function prototypes would need copyright statements and corresponding copyright licenses. Open source developers would need to check that the open source license on header files they were using was compatible with the open source license on their software. Corporate developers would receive instructions from their legal departments not to use GPL headers for fear of the license terms becoming applicable to corporate software. Complexity and confusion would return to a world where they have largely been expunged, bringing fear, uncertainty, and doubt back into open source software development.

This would be largely an American phenomenon. In Europe, there is continentwide law asserting that programming languages and interfaces are unlikely to be copyrightable, and even if they are, an exception written into the law allows copyright to be ignored if the purpose of infringing it is for interoperability. Any precedent set by an Oracle win would likely just harm the American technology industry and offer an advantage to its competitors.

That's why the case is of great interest. The need to pay royalties on Android would change the whole character of the mobile market. But it's not just the subject companies and technologies that are at stake. A precedent that programming languages and programming interfaces are indeed copyrightable would affect us all. I'll certainly be watching the case with great interest.

This article, "If Oracle wins its Android suit, everyone loses," was originally published at InfoWorld.com. Read more of the Open Sources blog and follow the latest developments in open source at InfoWorld.com. For the latest business technology news, follow InfoWorld.com on Twitter.

Copyright © 2012 IDG Communications, Inc.