from the oh-come-on dept
Last week, the Solicitor General of the White House weighed in on Google’s request for the Supreme Court to overturn the Federal Circuit’s ridiculously confused ruling in the Oracle/Google case concerning the copyrightability of APIs (and whether or not repurposing them is fair use). Not surprisingly, as the Solicitor General has been siding with Oracle all along, it suggests that the Supreme Court not hear the case. Of course, it does so by completely misrepresenting what’s at stake in the case — pretending that this is about whether or not software source code is copyright-eligible:
This case concerns the copyrightability of computer code. To induce a computer to perform a function, a person must give the computer written instructions. Typically, those instructions are written in ?source code,? which consists of words, numbers, and symbols in a particular ?programming language,? which has its own syntax and semantics. The source code is then converted into binary ?object code??ones and zeros?that is readable by the computer.
It is both ?firmly established? and undisputed in this case that computer code can be copyrightable as a ?literary work.? 1 Melville B. Nimmer & David Nimmer, Nimmer on Copyright ? 2A.10[B] (2019). Section 101 defines a ?computer program? as ?a set of statements or instructions to be used directly or indirectly in a computer in order to bring about a certain result.? 17 U.S.C. 101. And various Copyright Act provisions recognize that a person may own a copyright in a ?computer program.?
Except… that’s not what this case is about. Even remotely. Literally no one denies that software source code is subject to copyright. The question is whether or not an Application Programming Interface — an API — is subject to copyright. As we’ve been saying from the beginning, the most frustrating thing about this entire case is that you have non-technically savvy lawyers and judges simply refusing to comprehend that an API is not software. It’s not executable code. It’s not “source code” for software. An API is a set of specifications for allowing the access of data, an application, or service. It’s a “method of operation,” which is simply not subject to copyright law. Indeed, back in 1996, the Supreme Court ruled in Lotus v. Borland that a user interface to a computer program is not subject to copyright under Section 102(b) as the interface is a “method of operation.”
In the Solicitor General’s brief, they wipe this away by insisting that the ruling in Lotus v. Borland is different because that was about an interface, whereas this case is about source code.
The Federal Circuit?s construction of Section 102(b) in this case does not conflict with those decisions. See 14-410 U.S. Br. 19-22. In Lotus, the First Circuit invoked Section 102(b) to find that the arrangement of menu commands presented to a software user was an uncopyrightable ??method of operation?? for the software at issue. 49 F.3d at 815-818. The case did not address the copyrightability of computer code, and the First Circuit has subsequently acknowledged, consistent with the decision below, that Section 102(b) codifies the idea/expression dichotomy.
Right. But this case also does “not address the copyrightability of computer code.” Because it’s not about computer code.
While it’s no surprise that the Solicitor General has now gotten this wrong, what was a little surprising was that Oracle’s lead lawyer in this case, spent half the weekend acting like a common Twitter troll, gaslighting the entire software community on Twitter, making repeatedly false claims about APIs, and then attacking anyone who pointed out that she’s flat out wrong by accusing them of being Google shills.
Annette Hurst, prior to this nonsense, was fairly widely respected intellectual property lawyer and a big time partner at Orrick, one of the largest law firms in the world. She’s been involved in some big copyright cases in the past, such as the famed Mattel v. MGA case (she was on the right side of that one) and also in the important Kirtsaeng case in which she again represented the correct side.
However, when it comes to the Oracle case, she seems to jump in to argue things that are blatantly ignorant of how software actually works. You may recall, after the jury in the district court found that Google’s use of the Java APIs were fair use, she laughably insisted that it would kill open source software because it meant software source code couldn’t be opened up any more. Except, once again, she was totally confusing an API with executable software code.
Years on, and she’s still not just confused, but actively misrepresenting things. Famed and well-respected litigator and law professor Mark Lemley called out the Solicitor General’s “indefensible” statement that Lotus v. Borland does not conflict with this ruling, and Hurst responded dismissively:
Google identified no circuit split so that?s exactly right. At some point you gotta think when the Congress and courts and executive branch keep telling you that you?re wrong, you?re the one who?s actually wrong not them. Software is protected by copyright.
— Annette Hurst (@divaesq) September 28, 2019
But, again, she’s focusing on the wrong thing. “Software is protected by copyright.” Well, duh. No one disagrees. This case is not about that. It’s about whether or not an API is protected by copyright. But Hurst keeps conflating executable software code and APIs. And while expert after expert called her out on this on Twitter, she just kept digging in deeper, variously calling any critic a Google shill or, perhaps worse, insisting that APIs are executable code.
Wrong and wrong again. The Java API is executable. https://t.co/A2jmF4Gcnl
— Annette Hurst (@divaesq) September 29, 2019
This is not just wrong, it’s head-slappingly, stupidly wrong. And every single reply to Hurst are people telling her it’s wrong in so many different ways.
The _implementation_ of an API is executable, but not the API itself! Easy to prove: For example, you can paste an API into Compiler Explorer (https://t.co/0GQwXPXQNW ), and then paste an implementation. Only once you paste the implementation do executable instructions appear. pic.twitter.com/24bu30PBNw
— Eirik Bakke (@eirikbakke) September 29, 2019
No its not. I'm a professional software developer and would never think that of an API. You are confusing the instructions with the vehicle.
— bosson (@bosson) September 30, 2019
have you ever actually written or interacted with an API apart from clicking the mouse on a web page?
The API is the interface to executable code. An API by itself just sits there blankly staring at you.
— Jim V.o.R. aka General Pesky of Wu-Tang (@JimYoull) September 29, 2019
An API is an interface. It's a specification. To say that an API is executable is to say that "the right pedal is the gas and the left pedal is the brake" is executable.
— Brandon Sheehy ? (@btsheehy) September 29, 2019
Guessing you are using all those words in special senses where they mean the opposite of what practitioners mean since that statement is clearly nonsense to a Java developer.
— Simon Phipps (@webmink) September 29, 2019
Conflating an API with the software behind it is like saying a restaurant's menu is the same as its food. It's just flat out incorrect.
Unless you make a habit of eating menus? ??
— Christopher Cashell (@Cashell) September 29, 2019
As more and more people called out this nonsense, literally her only claim was to argue that anyone taking the other side must have been funded by Google.
— Annette Hurst (@divaesq) September 29, 2019
What’s doubly ironic here is that the link she puts in that post, is to a shadowy non-profit whose only role in life is to write up laughingly misleading reports accusing tons of people of being Google shills based on shoddy (to downright incorrect) research. It has been forced to run multiple corrections to its bad reporting. And, the best part is: for an organization that claims its sole purpose is to shine a light on what it claims is Google’s secret funding… the Google Transparency Project refuses to name a single one of its own donors. Though, there is one who has taken credit: Oracle. The very company which has probably paid Hurst’s employer enough money for her to buy a few very nice homes just on this case alone.
Hurst may be a great copyright lawyer, but she doesn’t know shit about what an API is, and, incredibly and unfortunately, has convinced the Federal Circuit that an API is no different than software. She may succeed in convincing the Supreme Court that as well, as she’s apparently convinced the Solicitor General. None of that makes it right however. And her going around parading her ignorance and attacking those who actually know what the fuck they’re talking about concerning the difference between an API and executable code is a disgrace.
This is not something that one can just say it’s a difference of opinions over. We can disagree over whether or not APIs should be covered by copyright. That’s an opinion. We can disagree over whether or not Google’s copying of an API should be considered fair use. We can disagree over what we think the state of copyright should be. But what no one can deny is that an API is not executable code. And yet, Hurst continues to argue it and (ridiculously) has convinced some courts of this blatantly incorrect thing, which is helping her client get the opinions it wants on the other things above. And that’s despicable.