Last week the Federal Appeals Court made a shocking decision in the Oracle vs. Google API fight. The court decided that Oracle could copyright its APIs for Java. This effectively makes it impossible for others to build fully-compatible alternative software components.
This is huge and, in my opinion, a very very bad thing.
We attach the word “open” to a lot of things in technology but I believe there are certain areas where true openness is critically important and APIs are at the top of my list.
“Open Source” is often portrayed as the Holy Grail of openness in technology and yet I don’t think open Source is much of a factor at all. To be clear, the open source movement itself has revolutionized the software industry. Open source components are now the building blocks of most technology company’s offerings and have dramatically reduced the cost of developing new software. That said, it is generally not feasible for individual IT organizations to try to directly use Open Source components for major functions; it is simply too costly to support. It would be like me trying to build my own smartphone with open source. Sure, it’s possible, but the cost of integration and support would never be worth it.
This is why there are so many companies building products and services around open source components. Companies like Red Hat and Cloudera exist because it is simply too hard for individual companies to build and support their own software stack.
I don’t think that the “open source-ness” of a product should be a major purchase consideration for an individual business. It is like demanding the source code to the TV set you just bought so you can have more control. For all but a few this is meaningless.
Open APIs on the other hand are absolutely critical for business consumers and I believe they should be at the top of every IT checklist. Open APIs are what fuel innovation and make vigorous competition possible. APIs are todays equivalent of the standardized protocols of 20 years ago. Without open APIs, companies and users will become trapped and innovation will slow.
While I really don’t care if the code running in my TV is open source, I do care a great deal that the API’s (the external interfaces – e.g. HDMI, Remote IR codes, audio, power) used by my TV are completely open. This simple fact is that, if I am unhappy with my TV, I am going to go out and buy a new one, and not try to reprogram my existing TV. The thing most likely to “trap” me into the same brand, however, is not the source code; it is the API’s.
I am a strong believer in the ability to patent true innovation in software but API’s do not fall into that category. They are simply the interaction method across a boundary layer. Innovation accelerates when companies offer API compatibility with popular APIs. Since the federal government has chosen (at least for now) to allow proprietary APIs, consumers must now require open APIs as a condition of purchase. Open APIs, I believe, are the critical factor for “open-ness” in software.