8 ms·
U.S. Supreme Court Denies Google's Request to Appeal Oracle API Case
- hahainternet 11y agoCould someone more knowledgeable on the relevant legal issues add some comment? This seems remarkably bad for the industry in general.
- spiralpolitik 11y agoWe need to wait for the lower court to decide if Google's use fell under "fair use". If it doesn't then it is bad news.
- justinlardinois 11y agoSpecifically the district court. The case made it to a federal appeals court, which ruled that APIs are copyrightable (the district court had ruled they were not), and then remanded* the case back to the district court to decide if Google's fair use defense was valid. Google appealed the federal court decision to the Supreme Court, which decided to not hear the case. *Appeals courts in the United States do not rule on the facts of a particular case; they only decide if the lower courts properly applied the law. This doctrine is either by law or tradition, depending on the particular appeals court. When an appeals court overturns a legal decision made by a lower court, it typically remands the case back to the lower court to clarify any facts necessary to resolve the case.
- dragonwriter 11y ago> Google appealed the federal court decision to the Supreme Court The appeals court decision -- both the district court and the appeals court are federal courts. > Appeals courts in the United States do not rule on the facts of a particular case That's not always true; matters of fact can be appealed, and there are different standards of review on appeal for different kinds of fact question, however, appeals courts generally prefer not to reach fact questions, particularly if the appeal was over a question of law and not specifically on the fact question, and appeals courts generally do not answer questions -- particularly fact or mixed fact/law questions -- that have not been addressed by the court below, as is often the case where the appeals court reverses a finding of law of the lower court, which then makes relevant a fact question that the lower court did not answer because it would have been irrelevant under the lower court's view of the law.
- SomeStupidPoint 11y agoHere's a question: The ruling found that APIs form a substantive body of work, similar to something like a play. However, if I took a play and used a computer to detect the sentence boundaries based on punctuation and randomly permuted the sentences, then wrote a book about what happened when I said random subsets of those sentences in random order to a set of undergrads, I'd be considered to be doing derivative work, even if I listed every sentence of the original work, as long as I substantially commented on each sentence in the context of my experiment. In the context of APIs, isn't it possible to automate the performance of this experiment and writing of subsequent report?
- andrewguenther 11y agoI'm not quite sure what you are trying to draw a parallel to here. What does this final report represent?
- justonepost 11y agoGoogle can still win this on fair use.
- t3f 11y agofwiw to @justonepost's point the wsj pointed out [1]: "U.S. Solicitor General Donald Verrilli responded with a brief that urged the court to sidestep the case, particularly because the fair-use issue hadn’t been resolved in the lower court. Mr. Verrilli also said one of Google’s main arguments against copyrights on the Java packages was without merit." Times like this when I miss groklaw. [1] http://www.wsj.com/articles/supreme-court-denies-google-appeal-on-oracle-suit-1435585873 http://www.wsj.com/articles/supreme-court-denies-google-appe...
- spinlock 11y agoI hope that's the ultimate outcome. I'd be OK if we allow copyrighting of APIs as long as using those APIs falls under fair-use.
- AnimalMuppet 11y agoIt would kind of defeat the point of publishing an API, wouldn't it? "Here's my API, but you can't use it without violating my copyright." Well, then, you might as well not have published it. But the issue here is actually re-implementing the API, not calling it. The court could rule that an API could be copyrighted (and therefore freely called, but not freely re-implemented). The result would be that an API becomes a one-way interface. You couldn't have multiple competing implementations, you could only have one. That's still a big change for the software landscape...
- spiralpolitik 11y agoYou could have multiple competing implementations, they would for example either have to use the same header files provided by the copyright holder, implement a set of interfaces packaged in JAR file provided by the copyright holder (see JDBC as an example), or generate stubs from an IDL file provided by the copyright holder.
- andrewguenther 11y agoUnfortunately this was a terrible case to have been the first of its kind (in the US). There was much more at play here than API copyright. Google didn't just copy the Java APIs, but it took the syntax as well. Oracle also presented evidence that Google had directly copied implementation of a few API functions, which Google actually admitted was true, but claimed it to be negligible. While all of these claims were examined separately, all of them combined made it much harder for any individual victory.
- Oletros 11y agoOne 9 lines function, nothing more was copied. The only other thing were 7 test files that were not part of the implementation
- andrewguenther 11y agoCorrect. But it was still copied and it still didn't help their case.
- bitmapbrother 11y agoYes, it was copied by the original author that wrote it back when he was employed at Sun. Additionally, those 9 insignificant lines were irrelevant to the case. The fact that it was even presented showed how desperate Oracle was.
- spinlock 11y agoSo you admit that there was copying. /s But, in all seriousness, the 9 lines + 7 files are damning. It also shows that the engineers who implemented Google's project had been tainted by exposure to Java.
- NeutronBoy 11y ago> But, in all seriousness, the 9 lines + 7 files are damning. It also shows that the engineers who implemented Google's project had been tainted by exposure to Java. I think that's one of the key points. How can you claim a clean-room implementation, when there are (small) portions that have been directly copied? It weakens the case for the rest of the code.
- bane 11y agoAs a result, I've decided to write a perl script that generates random APIs in some API-space, compress the new API and then store it all as blobs to disk while simultaneously filing for a copyright on all of these APIs.
- gnoway 11y agoAre you sure that's a good idea? You might inadvertently implement someone elses's API that way.
- dragonwriter 11y agoInadvertent similarity is only an issue with patents, not copyrights.
- justinlardinois 11y agoThat's not true. Inadvertent similarity can still be copyright infringement. Sam Smith's "Stay with Me" is a good recent example.
- dragonwriter 11y ago> Inadvertent similarity can still be copyright infringement. No, it can't. Copyright violation requires an actual copy or derivative work, not independent works that have coincidental similarity. > Sam Smith's "Stay with Me" is a good recent example. Its an example of something where one party claimed copyright infringement, the other party claimed inadvertent similarity, and the facts were never resolved because the two parties reached an undisclosed settlement. It is not an example of something both actually being copyright infringement while also actually being inadvertent similarity.
- netheril96 11y agoWasn't copyright protection only applicable to creative expressions of a human? Computer generated expressions are not protected by it, if I understand it correctly.
- remarkEon 11y agoLower court ruling, if anyone is interested. Makes for some intriguing reading. http://cases.justia.com/federal/appellate-courts/cafc/13-1021/13-1021-2014-05-09.pdf http://cases.justia.com/federal/appellate-courts/cafc/13-102...
- erlich 11y agoWhat are the implications if Google loses? Is Google going to switch to another language for Android development? Apple has already showed it is possible.
- chc 11y agoApple changed the language, but kept the APIs mostly the same.
- rdsnsca 11y agoYes they did , but they owned the APIs.
- gnoway 11y agoWould this be enough though? As I understand it the issue is that Dalvik implements large portions of the Java API so that developers can write Java and run on Android without Android actually providing a Java VM. So introducing a new language to run on the same VM doesn't work. If anything it reinforces how similar Dalvik is to the JVM. And that's what's really terrible about this, because before you could provide a clean-room reverse-engineered implementation of something and that would be OK. If I'm understanding this decision correctly, you can't do that anymore; if this were the law 40 years ago then there would never have been an "IBM Compatible" and who knows what consumer computing would look like today.
- cwyers 11y agoThe ruling says that APIs are copyrightable. It does not say that Google is infringing, yet -- the court has yet to rule on whether or not Google's use of the Java APIs falls under a fair use exception. The argument being advanced, as I understand it, is that Google's use of the APIs does not qualify for fair use because it was not being used to create an implementation of the JVM, but because it was being used to create a different runtime (Dalvik) which uses some of the Java APIs but is NOT an attempt to be compatible with the JVM. So it is possible to rule that Google infringed upon Oracle's copyrights without ruling that something like the IBM-compatible PC infringing.
- Beltiras 11y agoThe original judge in lower court actually taught himself coding to understand the case and came to the conclusion that APIs were not subject to copyrights (ie. he understood the issue). How the appellate court could come to a different conclusion is utterly beyond me.
- rayiner 11y agoI don't think those who "understand the issue" must necessarily agree with the lower court. I've been coding since I was 13 and I agree with the Fed. Cir. here. The concrete Java declarations that make up an API are a protectable work of authorship. The abstract operations they describe are not. E.g. POSIX C headers are protectable. But Lisp FFI declarations that compile down to the same ABI do not infringe because they targets the unprotectable method of operation, and do not copy the protectable textual description of those operations. I think a lot of coders want the lower court to be right for pragmatic reasons. I totally appreciate those pragmatic arguments, but they're not based on having a better technical understanding of the issue.
- cfallin 11y ago> E.g. POSIX C headers are protectable. But Lisp FFI declarations that compile down to the same ABI do not infringe This distinction does have a certain clarity to it, but isn't there a certain sense in which there's "only one way" to describe an API for a given language? "int foo(int a, int b)" is hard to write another way; perhaps I can rename the parameters. (Your Lisp FFI example sidesteps this issue because API declarations in different languages will, of course, look different.) In other words, I think there may be an "information content" argument. If the abstract operations are not copyrightable, and there is only one obvious way to write down the API's function prototypes in (e.g.) Java or C, does the source code really carry additional copyrightable value?
- pcwalton 11y agoI wonder whether, for example, Java's "double sinh(double x)" from java.lang.Math could be found to be infringing on the pre-existing "double sinh(double x)" from math.h. The API is literally textually equivalent, right down to the variable names, despite the language being different. (I'm genuinely curious what case law now considers the line to be; this isn't a rhetorical question.)
- deleted 11y ago[deleted]
- nickbauman 11y agoWhich people? LLVM assembly declarations are much more lower level and less accessible to developers than source code APIs. While there is a relationship between the two it's apples and oranges.
- Negative1 11y agoOut of curiosity (and as an exercise), what if Google decided to convert all the Java code and APIs to Scala (assuming they had permission from Typesafe)? Would that still be infringement considering they are using the JVM (Dalvik or ART) but not actual Java code? Doesn't even Scala use (or transcompile to) Java code which could be infringement?
- rayiner 11y agoI think Oracle has a "thin" copyright here--the literal Java declarations. Expressing the APIs in Scala (or Clojure) and compiling down to whatever they compile down to these days shouldn't infringe.
- vfclists 11y agoWhy do you guys talk about Oracle as though Oracle created Java? Sun created Java. worked to gain greater control over it and was bought out by Oracle. A lot of us here don't identify Java with Oracle, we just regard Oracle as "a great vampire squid wrapped around the face of Java ecosystem and the software industry, relentlessly jamming its blood funnel into anything that smells like money* LOL
- andrewguenther 11y agoBecause Oracle has ownership of the Java's APIs in this case? Sun really has nothing to do with any of this.
- wtallis 11y agoWell, Sun does matter a bit when it comes to questions of what license terms were or were not offered and with what motivations. If there's any doubt about what Sun actually did back when they were independent, then Oracle is somewhat constrained by what Sun was trying to do (Open source Java), not what Oracle is trying to do (close Java while leaving only a GPL implementation open-source).
- marcoperaza 11y agoOracle bought Sun. So all that was Sun's, buildings, employees, servers, copyrights, and patents, now belongs to Oracle.
- culo 11y agoThat's why we need more open source under MIT license in the API space. Fast growing OSS projects like KONG [1] for API management or Strongloop are a way to avoid to invest in technologies that are not fully open or usable under the right license. [1] https://github.com/mashape/kong https://github.com/mashape/kong
- spiralpolitik 11y agoI'd go further and add that the API should be under some governance framework so that a single entity cannot make unilateral changes to the API.
- bcg1 11y agoCouldn't Google just comply with the license and re-release their code under GPL with linking exception like the original standard library? Maybe pay a fine but at least Android survives. They should have just paid the vig to Oracle and been done with it, instead they have a knock-down-drag-out and end up with a precedent that damages all software development everywhere. All involved are acting like a bunch of jerks.
- carussell 11y ago> Couldn't Google just comply with the license and re-release their code under GPL with linking exception like the original standard library? Yes. Alternatively, .NET is licensed under Google's preferred permissive license these days. Neither of these will happen, however.
- grellas 11y agoA few thoughts: 1. This is a denial of a petition for writ of certiorari, which is a fancy legal term for a request that the U.S. Supreme Court exercise its discretionary jurisdiction to consider the appeal. This means that the court can hear it or not, as it deems fit, and only if it sees some really pressing reason to do so. 2. The above standard is very tough to meet and only the rare case will do so. 3. Here, Google had prevailed on the copyright claims at the trial level because the trial judge, rather than applying precedents mechanically, had rather bravely attempted to synthesize a byzantine body of law through what I believe was a brilliant synthesis of copyright law as applied to software interfaces that allowed him to conclude that APIs were not copyrightable (see my earlier assessment here: https://news.ycombinator.com/item?id=4050490#up_4051761 https://news.ycombinator.com/item?id=4050490#up_4051761). On appeal to the Federal Circuit, however, the court rejected this attempted synthesis and applied conventional precedents to conclude that APIs were indeed subject to copyright protection. Even in doing so, the Federal Circuit did not grant judgment for Oracle but instead sent the case back to the trial court to determine if Google could prevail on its defense that its mirroring of the java APIs was a fair use of otherwise protectable code and therefore not infringing. 4. In exercising its discretion whether to hear an appeal of this type, the Supreme Court considers not only the importance of the issues raised by the appeal but further considers whether such issues are ripe for determination by the highest court of the land. What that means is that the court is not interested in addressing questions that may prove academic to the litigants in the case. It is interested only in resolving cases in which the issue it is being asked to resolve is critical to the outcome of the case. Here, that standard was not met. Why? Because the appeal is from a case that Google has not yet lost. Should Google have the case tried on remand, and prevail on its fair use argument such as to win definitively on the copyright issues, then there is no need for it to obtain a determination that APIs are not copyrightable at all. In such a case, that latter issue becomes moot. Thus, in denying Google's writ, the Supreme Court may well have concluded that it is simply premature to take up the API issues until all of them have been first finally decided by the lower courts. 5. The other major fact to note here is that a denial of this sort of writ by the Supreme Court has no legal significance in terms of ruling on the merits of the claims presented. The denial simply means that the court is not interested in taking up those issues at this time. It is entirely possible that the case could be tried in the lower court, that Google could lose on all copyright issues in that trial, that Google could appeal once again, that the Supreme Court would eventually grant a future writ to hear these very issues, and that the Supreme Court could rule in Google's favor that APIs are not copyrightable at all. 6. Having lost on the copyright issue before the Federal Circuit, Google has a pretty tough fight before it in this case. For the same reasons, though, that Judge Alsup had originally concluded that copyright law should not even protect APIs, it has a potentially compelling fair use argument to make and may therefore win on that issue. If it does not, it can once again appeal to the Supreme Court for redress. That would be a long shot, but it is possible. 7. The only thing certain about this case now is that a long, drawn out legal battle will follow before anything is definitely decided. The issues are important for our tech age and, in this case and otherwise in the federal courts, only time will tell whether Judge Alsup's original synthesis (or some variation) favoring freer interface use or the Federal Circuit's maximalist IP views will ultimately prevail.