11 ms·
This might not just be a disaster for Google - it could be a disaster for software everywhere. If APIs become copyrightable, what happens to any open source sof
by Aqueous 6y ago
This might not just be a disaster for Google - it could be a disaster for software everywhere. If APIs become copyrightable, what happens to any open source software the implements a proprietary API?
Supreme court judges just do not have the conceptual framework to properly adjudicate this. I don't think it's going to be possible to teach them the difference between interface and implementation within the parameters of these arguments. And beyond that the conservative majority is predisposed to treat everything as property. This is not going to end well.
- rektide 6y ago> This might not just be a disaster for Google - it could be a disaster for software everywhere. This case has been a ticking time bomb, where the law is to decide whether ideas are patentable. Extremely scary news, seeing it go badly.
- ocdtrekkie 6y agoAPIs being copyrightable doesn't actually harm implementations of APIs that fall under fair use. (Fair use exemptions specifically apply to copyrighted things.) Interoperability is fair use. And things like something being non-commercial, such as a lot of open source software, is a major factor in determining whether or not usage is fair. Things like WINE or NES emulators or the like would fall very comfortably into fair use. It's nowhere near as world-ending as Google's public policy team would like you to believe. But given that Android is not fair use (it's not interoperable, they just wanted to glom on the popularity of the platform), it sucks for Google.
- binarybits 6y agoSorry, but this is not an accurate summary of the state of the law. Whether Android's implementation of Java was fair use is one of the questions the Supreme Court is considering. Google was absolutely trying to achieve interoperability with Java, so if Google loses it would make it more difficult for others to claim fair use. Fair use is complicated so others might succeed where Google failed, but a loss for Google would be bad news for interoperability generally.
- pizza234 6y ago> Google was absolutely trying to achieve interoperability with Java I don't think this is such an easy argument. Google's interest was ultimately the bottom line. Without discussing the copyrightability, from a strictly monetary perspective, APIs are product that, in this case, has a very high monetary value (market share == $$$), and Google chose it for this very specific reason (developers == market share == $$$). Again, I don't imply that copyrightability is good or bad, but the entire matter has been about money, and strictly from that perspective, ownership has a sense.
- nradov 6y agoI don't believe that Google was really trying to achieve interoperability. If it was then they would have passed the Java Technology Compatibility Kit (TCK) tests. Other companies did that and are legally in the clear for their Java implementations. Why didn't Google?
- ghaff 6y agoBecause they were too arrogant to do so? Note that Microsoft was eventually forced to make peace with Sun over Java after a long lawsuit.
- nradov 6y agoI'm not privy to Google's management thinking but I suspect they made that decision to save time and hit a market window. Android originally used the open source Apache Harmony Java implementation which didn't comply with the Sun (Oracle) Java license for the TCK. If Google had dropped Harmony they would have had to either write their own Java implementation from scratch or license one from another vendor like IBM. They had plenty of resources to pursue those other options but either one would have take more time and allowed Apple to build a lead in the smartphone market. So Google stuck with Harmony and now they're facing the legal consequences.
- curt15 6y ago>Interoperability is fair use. That seems incompatible with the text of Section 107, which includes the amount copied as a factor for determining fair use. The more compatible your implementation is, the more you have to copy, so the logical end of this reasoning is that Android's implementation of Java would be fair use if it had copied all of the API, not just a subset.
- AstralStorm 6y agoWhich it did under open license starting from OpenJDK 9. Oracle argues probably this has given Google an advantage, which is, in technical terms, bollocks, as Oracle was not making an operating system.
- garaetjjte 6y ago>And things like something being non-commercial, such as a lot of open source software, is a major factor in determining whether or not usage is fair. Why it should? It would mean that implementing commercial Java runtime without Oracle license is not possible?
- ocdtrekkie 6y agoWhether usage is commercial or not is a big part of the first factor in the fair use test: https://en.wikipedia.org/wiki/Fair_use#1._Purpose_and_character_of_the_use https://en.wikipedia.org/wiki/Fair_use#1._Purpose_and_charac... You could arguably implement Java without a license from Oracle provided you were using the GPL, as OpenJDK is released under the JDK, and presumably includes the entire Java API. The problem for Google, of course, is OEMs would've balked at being forced to open source all of their proprietary modifications to Android. Wikipedia says the OpenJDK was released in 2007, so Google could've legally used the Java API under GPL terms, but chose not to, and also chose not to pay for Java licensing.
- AstralStorm 6y agoOpenJDK is not released under GPL, but a much more permissive license.
- pabs3 6y agoThe OpenJDK license is GPLv2, with the ClassPath Exception: https://en.wikipedia.org/wiki/OpenJDK https://en.wikipedia.org/wiki/OpenJDK
- garaetjjte 6y ago>would've balked at being forced to open source all of their proprietary modifications to Android OpenJDK have linking exception, so it doesn't apply. In fact Android uses OpenJDK now. It also makes Oracle case looks phoney, suing Google for Java usage while having released freely available OpenJDK. But that's not the point, I think implementing API/ABI/protocols/whatever should be allowed whether or not vendor wants it. There are many reimplementations of competitors APIs, and ruling in favor of Oracle would basically break that. Under that interpretation Wine would be in danger too, as significant part of Wine development is commercial (by CodeWeavers making their CrossOver product).
- orangecat 6y agoThings like WINE or NES emulators or the like would fall very comfortably into fair use. That is not at all clear. But given that Android is not fair use (it's not interoperable How is it not? Lots of code written for the JVM will build and run unmodified on Android. Not 100%, but WINE isn't 100% compatibile either.
- badsectoracula 6y ago> Interoperability is fair use. What about improving the API? E.g. some languages may be mostly but not 100% compatible with existing languages and provide more or less the same API but not be 100% the same - both the in the runtime library (API) and the language itself. For example Free Pascal is mostly compatible with Delphi but not the same and its runtime library is mostly the same as Delphi but also not the same.
- jacobr1 6y agoCopyright already accounts for "derivatives." The GPL uses this to prevent proprietary forks for example.
- phkahler 6y ago>> If APIs become copyrightable, what happens to any open source software the implements a proprietary API? That has implications for language implementations too. Who would own the standard library for any given language? What about programs that call API functions? Are they derivative works too? An API is necessarily functional first and foremost. It would cause chaos and some weird dystopian future if Oracle wins.
- pfortuny 6y agoIt is usually in the interest of the designer of the API to have as many users as possible. BUT in this case we are talking not of using part of an API (say the Math library to implement a physics engine is assembly and link it) but of reimplementing a whole language which has, as of today an when the events discussed took place (even if we agree to hate it) an owner.
- simonh 6y ago>It is usually in the interest of the designer of the API to have as many users as possible. When they first design and publish it yes, but Oracle didn't design and publish the Java APIs, they bought them after they had becomes very popular and widely used. At that point they don't need to care about making it popular, it already is, all they care about is milking that existing ecosystem for every penny they can get. If future API publishers care about this they can just license out their API spec, but right now Oracle just wants to be able to squeeze whoever they can until the pips squeak.
- pfortuny 6y agoI know, I know. But if the argument is abstract then we have to keep it so.
- dredmorbius 6y agoIn a market-consolidating world this argument rapidly loses persuasive power.
- guram11 6y ago> This is not going to end well relax, its 2020 so now lets just enjoy how "crazy" this whole thing can go to and finally if Oracle wins... we RIOT, won't end well alright
- burtonator 6y agoSo if Oracle implements a proprietary API in GPL software does that mean that all Oracle software is copyleft?
- thechao 6y agoThis is a great question. In the last ten years of this shenanigans I’ve not seen it asked. As an owner of GPL’d APIs, it’s food-for-thought.
- cma 6y agoOracle will no longer be able to use an SQL based language as IBM will have ownership of the API.
- bigbubba 6y agoI wish I could believe this is how it would actually play out in reality.
- Wowfunhappy 6y agoLittle note: what you're really asking is whether the authors of GPL software would have grounds to sue Oracle for copyright infringement. As another HN commenter put it to me when I made the same mistake: "The GPL is not viral." If one party breaks the terms of the license, then normal copyright goes into effect.
- dragonwriter 6y ago> So if Oracle implements a proprietary API in GPL software does that mean that all Oracle software is copyleft? No, not at all. OTOH, it does mean if they implement a GPL interface in proprietary software it does mean that they are in violation of copyright (barring a fair use defense) and the GPL, potentially triggering the loss-of-license provisions of the GPL and other legal consequences.
- beerandt 6y ago>>"that the conservative majority is predisposed to treat everything as property..." This is misleading at best. For example: RBG, despite her left-leaning reputation, was easily one of, if not the, most pro-copyright and pro-IP justices on the bench. (Relatedly, she also was pretty pro big business, which rarely fits the portrayed narrative.) Not all areas of law, especially at the Supreme Court level, easily translate into right/left politics. https://www.law360.com/articles/1312244/ginsburg-remembered-as-steadfast-pro-copyright-voice https://www.law360.com/articles/1312244/ginsburg-remembered-... https://www.realclearmarkets.com/articles/2020/09/23/justice_ginsburg_was_a_leader_in_protecting_intellectual_property_rights_578330.html https://www.realclearmarkets.com/articles/2020/09/23/justice...
- x3ro 6y agoThis is a strawman. The argument wasn't that no left-leaning people would treat things as property, but that most conservatives would. As such, you're not attacking the actual argument with your point.
- pc86 6y agoIt's not a strawman at all, as the original statement is clearly setting up the flip side of that argument - that left-leaning justices are less likely to do so.
- Talanes 6y agoWell, even then, showing one left-leaning justice with pro-property stances doesn't actually disprove that argument. Less likely things still happen some of the time.
- grasshopperpurp 6y agoI'm no expert on RBG, but I always pegged her as a Neo-Lib, rather than a Leftist.
- cultus 6y ago
- nradov 6y agoThat's not really the court's responsibility. There is no legal definition of "interface" or "implementation". They're just trying to interpret a gray area in the law and it could come down either way. Any real solution will have to be legislated.
- cabaalis 6y agoA certification group that allows a good marketing point could also achieve. Just making up a name, "Our APIs are certified by Open API Association" might encourage developers to develop with A given company's API.
- rlewkov 6y ago"Any real solution will have to be legislated. " So true. Congress can amend the particular section of the code to explicitly exclude APIs from being copyrightable ... if they want to.
- empthought 6y agoYes, this is, has always been, and always will be the case.
- ianlevesque 6y agoI thought Congress only existed to appoint judges.
- jacobr1 6y agoOr approve executive appointees to create administrative law ...
- deleted 6y ago[deleted]
- dragonwriter 6y ago> That's not really the court's responsibility. Yes, it is. > There is no legal definition of "interface" or "implementation". There is a legal definition of what is included, and what is excluded, from copyrightability, and (though its quite fuzzy, in large part because it was trying to incorporate a fuzzy judicial doctrine grounded in the First Amendment into the statute) what is included, and excluded, from "fair use" even if it otherwise violated copyright. The courts job is very much to test existing concrete things against those definitions.
- interestica 6y ago> Supreme court judges just do not have the conceptual framework to properly adjudicate this. It's why silly (and inadequate) analogies emerge: "Justice Clarence Thomas compared Google's copying of the Java APIs to a football team taking a rival's playbook."
- fdye 6y agoWhat really sucks is this was a perfect time for a lawyer to use Justice Thomas' analogy to better explain the difference. I would have tried something like: "Close your honor, but let me expand on this further. Imagine instead that your opponent publishes their calls and they are regularly available to all individuals of the general public. However, while they may describe a call for going long, they do not give any specifics if the receiver starts from the left, center, right side of the field, how fast he should go, who should block for him, etc. They essentially are just assigning a call to a general concept of 'go long'. Now as a competitor team, I look through their publicly available calls and say "Hey, thats a good idea, we should have a call for 'go long' as well". However, in practice my team does start from the left, and then cut in the center of the field to receive the ball. This may, or may not be totally different then what my opponents choose to do when they call "go long" The additional benefit is if I transfer a new coach onto my team, he can use the call "go long" and even though the team accomplishes the goal, possibly by a different route, he can make the call to accomplish essentially the same thing." Note: Not a huge sports guys, so perhaps my football analogy broke down a bit there, but hopefully you get the idea.
- ballenf 6y agoI think the playbook is just a bad analogy because it misses that point of what an interface is. It's the means of connecting two dissimilar mechanisms. A translation layer. I'd have argued it's more like copyrighting doorknob placement (opposite hinge, at hand height) and operation (twisting) on doors vs. patenting a novel mechanism inside the doorknob. A football playbook is more like the blueprints of the inside of the doorknob. Of course it's patentable if playbooks are patentable (I presume they are if considered works of choreography as in a dance).
- miohtama 6y ago> This might not just be a disaster for Google - it could be a disaster for software everywhere. Not in the EU where there is precedence with SAP/R3 saying APIs are not copyrightable.
- afwe 6y agoThe tech world is in the US, not the EU.
- kevin_b_er 6y agoWell the tech world in the US is about to end by all measures.
- Wowfunhappy 6y agoIf you can't sell your products in the US, I think you're going to have a problem.
- protomyth 6y agoSupreme court judges just do not have the conceptual framework to properly adjudicate this. Justice Breyer's QWERTY analogy was pretty good. Also, Google's lawyer is supposed to supply that framework in oral and the brief.
- rayiner 6y agoRead Sotomayor’s and Kagan’s questions at 20-22, 52-58: https://www.supremecourt.gov/oral_arguments/argument_transcripts/2020/18-956_kifl.pdf https://www.supremecourt.gov/oral_arguments/argument_transcr... I think the Justices were struggling a bit for analogies, but got the basic gist of the difference between implementing code and declarations. The difficulty is that they have to think about this in terms of the relevant legal concept (merger) not the relevant technical concept (interoperability). You can copyright expressions of ideas, but not ideas themselves. Merger doctrine says you can’t copyright an expression of an idea if there is only one way to express the idea, because then the idea “merged” into the expression. Do declarations merge into the idea of the implantation? In some sense clearly they don’t. If you have a set of functions that operate on an object, the convention in C is to put the object first and the parameters after. You “append, into this vector, this value.” In Common Lisp, it’s often reversed. You “append this value to this vector.” Both express the same idea—a command for appending a value to a vector—but there is a creative choice in the expression. But you can think of the same idea at a lower level. “Calling a function named push to append an element to a vector where the first parameter is the vector and the second parameter is the element.” In that case, there is really one way to express that idea. Why would you think of the “idea” at such a low level? Because that’s what you’re doing when you’re interfacing with an actual API. The “idea” isn’t some abstract hypothetical function for appending, it’s the actual “push” function with parameters in the specific order. The problem is that interoperability is not really something that goes to copyright-ability, but fair use, which comes after copyrightability. Dictating how you see the “idea” based on interoperability seems a bit like a phase ordering violation.
- asdfasgasdgasdg 6y agoIf APIs become copyrightable, we just have to change our strategy a little bit. Instead of making a compatible API, you write a program to modify other programs, which detects calls to the target API and transforms them to a shim that is not copyrighted, which can call either the copyrighted API or your new API.
- colejohnson66 6y agoI don’t think that would work as it could be construed as a derivative work
- asdfasgasdgasdg 6y agoDoubt it. But since I don't have millions of dollars or a need to litigate this in court at the moment, neither of us will know any time soon.
- tzs 6y agoThere are two problems with that. First, as colejohnson66 pointed out, that may be a derivative work. This will depend on how your transformer actually works. I can't think of any way to do it that does not involve having access at run time to a copy of the copyrighted API. If that copy is part of the transformer, there is a good chance the transform is a derivative work. If the transformer does not include the copyrighted API, instead getting information about it from some external source that the user must supply at run time such as via an input file describing the API using some sort of API description language then it is much less likely to be a derivative work. Well, at least if it somewhat general, working with several APIs described in that language rather than just working with the one particular copyrighted API. Second, even if it is not a derivative work, the people who use it to make the shim might be infringing. Usually that would not be your problem (unless you do something like indemnify your users, which I'll assume you would not be insane enough to do). However, you have to at least consider contributory infringement. If I infringe someone's copyright using tools I got from you, and those tools have no substantial use other than infringing copyright, you can be held liable along with me for the infringement. As with the derivative work case, if you can make the transformer general purpose so that it can be used for transforming APIs that are not copyrighted too, you should be able to avoid contributory infringement.