Showing posts with label interface. Show all posts
Showing posts with label interface. Show all posts

30 June, 2016

Goliath v Jury - Google's Use of Java APIs Fair Use, Says Jury

The fight between Google and Oracle over the Java platform, specially the API (Application programming interface) for the program and its copyright protection, has been raging for what feels like aeons. This blog has discussed the Court of Appeals (where Google was found to have infringed the code's copyright protection through verbatim copying into its Android operating system) decision some two years ago, but many have waited for the jury decision in the saga, which was handed down only a month ago.

By way of a short primer for those who have not followed the matter closely, the case dealt with 37 API packages released by Oracle (at the time Sun Microsystems) which pertained to its Java platform. Google sought to implement Java into its budding mobile operating system, Android, but both parties could not agree on a proper licencing arrangement. Nevertheless, Google implemented the APIs into its own platform, Dalvik, which consisted of 160 different APIs (of which 37 were Java APIs). Due their verbatim copying into the Dalvik platform, Oracle took Google to court, asserting copyright infringement.

After the earlier decision in various stages in the US judicial system, Google consistently lost and was deemed to have infringed the copyright in the APIs. The jury in this instance sought to look at whether Google's use amounted to fair use, and thus not infringing the rights in the works. This decision was hugely important, as Google faced damages totalling nearly $10 billion.

Blake couldn't contain himself at the thought of
unlimited, free APIs
Judge Alsup gave extensive instructions to the jury as to their assessment on fair use under US law. The jury decided the matter in three days, reaching a unanimous verdict of a finding of fair use by Google. One could argue against their finding of fair use, with Google's use not being prima facie very transformative (due to the verbatim copying of code); however, building the Android platform using the Java API did change it to something more than just Java. The judge also emphasised the fourth factor, the effect of the copying on the potential market for the work, which, in this writer's mind, could have been the linchpin for the jury's decision. Even though Java is implemented into many systems, it in itself is not an operating system, although its free incorporation into such clearly would impact on its potential market. The jury saw that Google's use was fair, and one can only wonder what persuaded them to reach the conclusion.

Although there is not much to discuss on the substantive side of the case, as is usual in this blog, the decision still is an important development in the world of technology and computer programming. As Google's statement on the win expresses: "Today's verdict that Android makes fair use of Java APIs represents a win for the Android ecosystem, for the Java programming community, and for software developers who rely on open and free programming languages to build innovative consumer products". Arguably, Google does have a point. Java has become night ubiquitous in the computing sphere (although the emergence of HTML5 could, arguably, make it obsolete), and a lack of an ability to use the technology would severely hinder any attempts of building a popular, fleshed-out operating system. On the other side of the coin, this is a blow for reaping from what you've sown, and Oracle has a right to be upset with their loss (and incredibly monetary loss through unacquired licencing fees for the hugely popular Android platform).

Many in the software industry seem to welcome the decision, such as Al Hilwa, who saw that "... most developers would likely prefer not to be burdened by copyrights around APIs". This writer is puzzled with this response, since many programmers might not be so keen to share the fruits of their labor for free. Oracle have indicated that they will appeal the decision, and this writer keenly awaits any new developments in the never-ending story that is Oracle v Google.

Source: BBC News

18 June, 2014

APIs Protected By Copyright, Programmers Stand Aghast

The more and more information becomes digitized and hidden beyond a invisible wall to the layman in the form of code and programming languages, the more convoluted its application can become in the world of intellectual property law. One phenomenon of this world are APIs, or in other words, Application Programming Interfaces. APIs are software-to-software applications released by companies, like Google, which enable other developers to more easily access and use their services, such as embedding Google's search services onto a web blog allowing for readers to search the site more easily. Effectively it allows for the two applications to communicate between each other without any interference by the users themselves. APIs have been fought over for some time by the two tech giants, Google and Oracle, since 2012, and came to a head early last month in the US Court of Appeals.

The case, decided in May 2014, dealt with 37 API packages released by Oracle (at the time Sun Microsystems) which pertained to its Java platform. The two parties, Google and Oracle, attempted to reach an agreement to use the Java platform in Google's new mobile operating system, Android, but failed to do so eventually. Nevertheless Google developed its own similar platform to be used in Android, Dalvik, which consisted of over 160 APIs, of which 37 corresponded to the Java APIs in contention; something which Google had copied verbatim into its own code. Oracle subsequently took Google to court over copyright infringement, and in a decision by the District Court of California some two years ago the court saw that APIs were not copyrightable. Oracle appealed the decision, which ended up in the Court of Appeals last year.

Many developers' thoughts after the decision 
Under the 'merge' doctrine, if there is only a finite amount of ways through which an idea can be expressed it is said to 'merge' the idea-expression doctrine, or in other words, prevents copyright from protecting the expression as part and parcel to the idea. Should there only be a single way to implement said idea no copyright protection will be given to the merged idea. The District Court initially saw that Oracle could not protect its APIs as their expression was the idea, and could not be protected. On appeal the Court of Appeal saw different, deciding that the copied code could have been implemented in unlimited ways, not limiting the expression of the idea and warranting copyrightability. The declaration of the source code by Oracle therefore does not preclude its copyrightability, as was seen by the District Court initially. Even if the code consists of short phrases or sentences, i.e. lines of code, it does not preclude copyright protection.

Should the disputed APIs be merely a system or a method of operation, they cannot be protected under copyright. A myriad of cases have stated that programs and code cannot be protected by copyright; however the approach by the District Court was seen as being erroneous. Under the Court of Appeals' decision even though computer programs contain functional elements it does not fully leave out the possibility that they may contain elements which are protected by copyright. This does not completely cover the effect of the program, but merely the expression within that code for that function. Should Google have implemented that very function through a different expression, there would be no risk of infringement.

Google's last argument was for interoperability, in that the verbatim copying of Oracle's code was essential for the interoperability of Java and Android, initially supported by the District Court. However, the Court of Appeals saw differently, as precedent heavily approached interoperability as a fair use right, not as a requirement for copyrightability. This gave the final blow to Google's argument in the appeal case, with the Court of Appeals fully rejecting the District Court's initial decision and deciding that APIs could be protected by copyright.

Needless to say this decision has created quite the fervor and will undoubtedly be appealed on Google's part. The precedent set can be argued to be dangerous, and present a hurdle for the free development of technology, at least on the programming side. As more and more programs have to be able to interact with each other for a convenient, practical and fast experience for the consumer, locking down APIs can hinder this development quite significantly. Developers could be cherry-picked or even prevented from using certain APIs or even charged exorbitant amounts for their use; however this is pure speculation. Whether the case goes further will remain to be seen, and will set an interesting cloud over the programming sphere for the time being.

Source: Ars Technica