For you patent lawyers, and software engineers out there...
On May 19th, the Solitor General of the US urged the Supreme Court not to hear Google's appeal against the ruling of the Federal Appeals court against it. Oracle brought suit against Google's use of Java API stubs within Android for interoperabliity purposes. Google argued that APIs (application programming interfaces) are only a very small piece of Java's defining code; that they merely act as "common signposts". They argued that APIs should not be copyrightable because they are not the implementing code of the instructions, merely a communications dictionary to the functions. They act as industry standards for 3rd party use of products, and as such are subject to fair use. Oracle disagrees. Oracle believes all aspects of source code, including APIs should be copyrightable.
As a software entrepreneur doing cross platform mobile development this worries me. I use APIs all the time to integrate with third party products. That functionality used in websites to integrate with PayPal, Twitter, and Facebook are public facing APIs. With this ruling, there is nothing stopping these companies from deciding to charge for access to these APIs. They could one day allow it, and the next not allow at. That's what Oracle did.
Java was developed by Sun Microsystems. It was regularly used as on open source project, although never released under any of the open source licenses (I think). Numerous innovators have used java in this way for years. Oracle bought Sun. Now Oracle is deciding that Java shouldn't be used in an open source fashion anymore.
What does this ruling portend for mobile developers who are doing cross platform development with Apache Cordova? It translates basic HTML5/CSS3 into native code for numerous mobile operating systems. This native code is direct access to native APIs on those OSes. What if Apple or Google or Microsoft decides at some point in the future that they aren't going to allow access to their APIs via 3rd parties like the open source Apache project?
I hate the thought of having to develop 3 separate versions of my product. It would destroy my time to market. Do I need to worry about this? Will Oracle's win against Google's Android throw a major monkey wrench into the mobile development landscape?