The problem for Google on the copyrightability front is that "compilations" of non-copyrightable items can be copyrightable even if the underlying items themselves are not, if the "selection, coordination, or arrangement" of those items involves sufficient creativity to be considered an "original work of authorship".
For example, individual recipes are generally not copyrightable, but if you compile a set of recipes and publish them in a cookbook, the cookbook itself becomes copyrightable.
As applied to Java, individual method signatures like min and max might not be copyrightable, but someone had to go in and organize those individual methods into classes, and organize those classes into packages. That act of organization likely implies that the Java API (taken as a whole) constitutes a copyrightable work, even if the individual method signatures are not.
What's worse for Google is that code has always been considered copyrightable so arguing that APIs are non-copyrightable is essentially carving out an exception for a specific type of code.
As is common when HN discusses legal matters I see a lot of people blaming the judges for not understanding tech, but the problem here isn't really the judges so much as the law itself. We should not be surprised if Oracle ends up winning here, at least on the question of copyrightability. Google may have an out related to fair use, but that seems like a long shot as well.
Perhaps my understanding of APIs is different because I'm an engineer and not a lawyer, but how is this not an open and shut case?
The cookbook analogy is not applicable for the same reason one could not apply it in Baker, accounting methods are not of themselves copyrightable creative works. (They may be patentable, but I believe patentability is NOT at issue here.)
Selecting and arranging recipes requires creativity. I do not believe API code of a math library is in any way the same level, having designed hundreds of APIs and several SDKs myself. Perhaps creating a specification upon which the API design based upon is, but that leads right back to Baker. What am I missing here?
[1] https://en.wikipedia.org/wiki/Baker_v._Selden
Edit: And if you think about it, an API code is really just a set of templated forms for conveyance of data between systems. In this sense it is really no different from the accounting ledger templates in Baker.
Second edit: It would be worthwhile to enlighten the judges on the early history of computer programs and their ties to recipes which should make the cookbook analogy and its potential misapplication here even more obvious.
Third edit: Another line of enquiry would be to discuss differences between API contracts and APIs. They are not the same, though often confused, even by practicing software engineers.
But what is discussed here is not the cookbook but just the table of contents. The actual recipes are different.
Making another cookbook with chapter 1: salads, chapter 2: soups etc. is common practice. The question is how much detail you are allowed to copy in order to allow for interoperability.
For instance, a dinner might call for the Oracle potato salad of Section 1.3 and Oracle tomato soup of Section 2.2. If your cookbook has your recipes (not Oracle's) in the same Sections in your book, that is useful for your readers/chefs, since they can easily switch their menus to your book.
Are you allowed to do that? That is the question.
> arguing that APIs are non-copyrightable is essentially carving out an exception for a specific type of code.
Disagree. APIs are talking about code but not code by themselves alone. Just like "The potato salad recipe is in Section 1.3" talks about a recipe but is decidedly not a recipe by itself.
If the law currently thinks that should be copyrightable, then the law should be changed.
"Google's lawyer, Robert van Nest, asked Schwartz whether, during his tenure at Sun, Java APIs were considered proprietary or protected by Sun."
"'No,' Schwartz said in explaining the nature of open software. 'These are open APIs, and we wanted to bring in more people...we wanted to build the biggest tent and invite as many people as possible.'"
https://www.cnet.com/news/former-sun-ceo-says-googles-androi...
The justices that brought up the case’s procedural history were all unanimously skeptical that the Federal Circuit correctly set aside the fair use verdict in favor of Google. I think the most likely outcome of this case (especially with the absence of Justice Ginsburg) is a remand to the Federal Circuit with instructions to pay more attention to the trial court’s findings.
The problem with this theory is that class and package declarations are still just recipes. There is a recipe for making chocolate chips. Then there is a recipe for making chocolate chip cookies where one of the ingredients is chocolate chips. It's recursive but it's not fundamentally different. Saying you can copyright a recipe for chocolate chip cookies because it's just organizing the recipes for chocolate chips and butter and brown sugar is pretty ridiculous.
Or to state it more plainly: the problem is legislators not understanding tech, and not updating our laws to account for the way computers and the internet have transformed society over the last 40 years. This was a similar gripe in the Net Neutrality arguments on HN. It's truly insane that regulatory bodies are using public utility laws from 1934 - before even the mass adoption of television - to create the rules that govern the internet.
As an IP-minimalist, I'm surprised anyone can look at the mental gymnastics that people go through in order to draw some arbitrary line between acceptable and unacceptable copying, and come to any other conclusion than "this whole system is ludicrous".
APIs aren't cookbooks, they are toolboxes, and Oracle is claiming to own the idea of putting your Flathead next to your Phillips
Is binary API copyrightable? That's a cookbook too.
Is API as build target copyrightable? I just want this code to run.
Is processor ISA copyrightable?
I have to put gas in tank, oil in engine, water in cooling system for car to run. I have to press clutch, turn a key for engine to start. Is this copyrightable?
Every thing is creative. There are many ways to make same thing. Sometimes we care not about creativity but compatibility. Qemu runs x86, ARM. Open Office opens Microsoft Word files. Google Cloud Storage is interoperable with Amazon S3 [1]. I can construct my own client.
And yet we have PNG, OGG, AV1, RISC-V — there are some issues with MP3 (patent), GIF (patent), H.264 (patent), x86 (patent), ARM.
An API doesn't require an implementation and copyright is handed out automatically. Could I then write and run a generator that just starts spitting out endless variations of possible APIs (combinations of dictionary words?). Does that mean I would end up holding the copyright for most of the 'common sense' APIs people would want to use for software projects?
European judges got that right.
Recipes that contains more than just the basic list of ingredients and instructions can be copyrightable. Include a picture, illustration or a bit of creative text and copyright will apply on that. That's the true reason why cookbooks fall under copyright (while the actual list of ingredients and instructions do not, which people do lift out of cookbooks for example).
Even when applying copyright to an "arrangement" of items that are not copyrightable, as in a database, there needs to be creativity expressed, otherwise it will not qualify for copyright.
Not exactly; an API can be completely re-implemented from scratch and still be compatible. If it was just about the API code, there wouldn't even be a case.
The idea that an API could legally be an "original work of authorship" makes a lot of sense; but the technical implications could indeed harm the industry overall.
Essentially what this means is: I build a system, you're not allowed to build a compatible system. Yet another reason why open source is the only way forward.
How is heat transferred to the pot? From the stove to the pot, this is the API, and how it's implemented doesn't matter. Oracle claims that this specific thing, that you turn on any button and make it heat up is copyrightable.
But we all know that a stove is useless without that API. We would have to buy a whole new kitchen equipment for all stoves that we are going to buy.
A further question is: When will it end with copyright claims? I mean, at somepoint somebody will claim that the effing powerplug is also copyrightable. But we all know that nobody (speaking of % of the population) even has the skills to connect a device without a power plug without potentially harming themselves.
All technology is useless without APIs. Nonetheless I think that copyright laws is essentially full of flaws here, because if we focus on speech alone (of which most copyright laws are based on), someone might even argue that specific words are copyrightable if they are "uncommon enough".
> To develop a legal BIOS, Phoenix used a clean room design [2].
I think there was some creative process in designing BIOS.
There is no difference between binary and text format, it is just a serialization. WASM text format and binary format. Java source and bytecode.
API documentation is certainly copyrightable, even text definition file. A lot of creative process goes to putting braces, spaces, commas, naming
static double min(double a, double b)
versus static double
min (double x, double y)
both would be valid reimplementation of java interface.Yes, problem is copyright law.
Yep I second this. I think there’s a parallel “legal news” community somewhere pointing at us here going “those nerds don’t understand how law works” :)
What we should _all_ be doing more actively, imo, is nudging our representatives to update the law to create legislation that answers definitively “whether APIs are copyrightable or not”. Albeit, that is a much more difficult and slower process.
Well, you know what they say about democracy as a form of government though: “something something yeah, it kinda sucks but it’s the best we’ve got something”
Congress would have made that exemption when they made the law in the first place.
>A “computer program” is a set of statements or instructions to be used directly or indirectly in a computer in order to bring about a certain result.
This is an important fact people keep forgetting. Asking the Court to bluntly create legislation is never ever going to happen.
That's another aspect. API isn't code, only implementation produces executable code, API only helps ensure that those chunks of code fit together, like book's spine holds pages together and in order.
"There is a prevalent practice of licensed copying of declarations and often that is done through what is called open-source licensing" ...(6 minutes later) "sometimes, often the license terms don't include the payment of money, they simply include a requirement like whatever improvements you make have to be given back to the programming community. Have to be made known to other potential programmers. But the copyright holders authority to impose and enforce those licenses obviously depends on the proposition that the code is copyrightable to begin with. And so those licenses would be a pointless gesture otherwise and the very fact that they are offered with such frequency tends to dispel the idea that there is a common understanding in the relevant community that this material is not copyrightable at all."
Hmmm... First Free Software project that will dye after this is WINE that implements Windows API ( https://www.winehq.org/ )
Sometimes it does feel that embracing awful system is the best way to topple it.
Found the source of Windows XP? It’s alright, you shouldn’t be condemned for publishing it, it will only help with bugfixes and security, and as long as the owner refuses to sell it...
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.
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-...
https://www.realclearmarkets.com/articles/2020/09/23/justice...
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.
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.
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."
Not in the EU where there is precedence with SAP/R3 saying APIs are not copyrightable.
Any real solution will have to be legislated.
Justice Breyer's QWERTY analogy was pretty good.
Also, Google's lawyer is supposed to supply that framework in oral and the brief.
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.
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
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.
It seems to me that now is the time to start thinking about putting together a mass effort to get Congress to change copyright law, to establish clearly the semantic distinction between API and implementation, and to make it clear that the API part can be "copied" in the name of interoperability.
No, that's not an easy thing to accomplish, especially without armies of highly paid lobbyists, but I'm guessing that a few big companies - like cough Google cough might be interested in supporting such an effort.
More generally, I feel that one of the main reasons the Supreme Court is such a powerful body nowadays, and why cases like this are considered so important, is because Congress has become so ineffectual. We have internalized the idea that the Supreme Court has the last word on every matter before it. But it emphatically does not. The Supreme Court is only the last word on constitutional cases. So many decisions - this one, certain decisions on gerrymandering - are completely overturnable by Congress.
« Any legislation dealing with either computer or photocopying issues enacted and based upon these recommendations should be subject to a process of periodic review. »
Microsoft also supported Google in this case.
I put myself in their shoes, if I had never looked at a line of code I couldn't even start to imagine what an API vs real code is. I'd probably think it's some made up concept that Google is using to save money and circumvent the law.
Expert witnesses play a role in trials, they play no direct role in appeals where fact claims (to the extent they are reviewable at all, which is normally limited when, as in this case, there is a jury-trial-by-right, because otherwise you obviate the right to a jury trial, though its worth noting one of the issues in this case is that the Federal Circuit tossed aside the jury verdict using a standard which is not usually appropriate for review of fact questions in such a scenario) are decided by review of the trial record and, to the extent that the trial record is not sufficient, remand to the lower courts for further proceedings with legal guidance.
> Do we really expect judges in their 60s and 70s to understand basics of coding in order to come to the right conclusion?
We expect the parties to have developed their fact claims at trial or, failing that, to be able to explain to judges why any issues needing factual evidence are insufficiently developed in the trial evidence such that if they were critical it would require remand (and the reason better be something like "we were improperly prevented by the trial court from presenting evidence" or "this is a issue that somehow was allowed to be raised for the first time on appeal so we had no opportunity to present evidence on it at trial".)
Can substitute any field for "coding" above and come to the same conclusion.
Quickly getting up to speed on the terminology and issues of fields in which they have no formal training or first hand experience is a big part of the job description of being a justice.
Processes--and a good example is business processes like SOPs, etc.--have inputs and outputs.
An API is a name for that process, plus a description of the required inputs.
Can you copyright a name and a description of inputs for a process?
macOS and iOS (and indeed Apple itself) would not exist as we know them today, if at all, without very liberal cross pollination of APIs. In a parallel universe where APIs are copyrighted to the extent that Oracle wants, GNU would not exist. Konqueror and Safari could not use Microsoft's XMLHttpRequest(). The list goes on and on.
It’s also true that Safari couldn’t have used XMLHttpRequest unless Microsoft had licensed it. But that might have sped up the incorporation of an open standard alternative.
It would definitely have created a different history to the one we have now if APIs were assumed to be copyrighted, but it’s not reasonable to just assume that everything that has been based on them would not have been built some other way.
Which, of course, is completely false. All of them have many, many reimplementations of open APIs in their many layers of software. It's just that no one was stupid enough to copyright those APIs and try to sue someone else for implementing an API before.
Oracle's actions threaten to upend the common understanding of software ecosystems and throw everything into disarray.
Apple wouldn't have to just use hard-to-find screwdrivers, they could just make a new screw shape, copyright the design, and then it'll be even harder to open their gadgets.
The world is going to be fine.
e.g.: if this court case was decided before Google made Android, then Google would have had to use something other than Java to do it and they wouldn't have been able to attract such a large developer base to make apps. Maybe they would have come up with a new language, or reused whatever else was viable at the time. But, maybe their OS wouldn't have been so overwhelming in its popularity and other OSes, like PalmOS and the windows phone OS, could have remained alive today. I think there's a lot of people, maybe the majority, who would agree that Android's UI was inferior to one or both of those alternatives.
e.g. #2: looking to the future, the resulting fragmentation could mean that even new OSes will have to be developed (edit - since even kernel APIs could be covered by copyright). That could be pretty bad for open source and hacking in general - except that as another poster has pointed out, closed-down software might turn out to be pretty useless compared to open-source. Maybe Oracle winning could be a really good thing for reinvigorating the development of new paradigms in software.
This is a future I like to envisage as well. New programming languages (for example), struggling for traction, might feel obliged to clearly open source their APIs, to demonstrate their openness. Corporates, tech giants etc. might in turn gravitate towards such more-open platforms, leading to a virtuous circle of innovation and steady migration away from technologies that try to use their APIs for extortion.
It's a terrible idea.
If Oracle wins, to me with zero knowledge around copyright laws and legalese topics, means small to medium companies will close down out of fear of getting sued for using or implementing a competitor's APIs.
Not only that, it feels like the whole technological "civilization" will collapse after this and I'm not exaggerating, because thousands of people will lose their job simply because companies will prefer to close down than go to court with huge companies the size of IBM, Amazon, Alphabet, and Oracle to name a few, and that thought alone lead to financial meltdown...as if we didn't have enough problems already with the pandemic!
If we continue like this, it would feel like living in "Minority Report", that we could get sued for simply thinking about implementing a competitor's API!
On the positive side, I'm quite curious to see where this could go.
We already are in the state you describe, except for patents. The doubly linked list is patented [0]. Selling something over the internet was patented [1]. The list could go on and on.
Every major software company has so many patents that they could find an infringement in almost any software company.
Why hasn't this happened? Because, like copyright, someone needs to actually bring suit. That doesn't happen that often. It happens more often with patents in the form of patent trolls actually, and there's no reason to believe api copyright suits would happen more often than patent suits... I think api copyright suits are actually going to be less lucrative and harder to prove on average.
So yeah, it seems like the current state of software patents is already far worse than APIs being copyrightable would be, and yet the sky is not falling, civilization is not collapsing, and business continues like usual.
Well, the decision is binding on the US only so this is an exaggeration.
But the more I think about it, and read feeble attempts to relate software to other industries, I am starting to think I was wrong. In my experience, especially where good design is encouraged and respected, I can spend far more time designing the API than implementing it! If I create a proprietary API shouldn't it be protected? Or am I misunderstanding the nature of the debate?
I could easily come up with dozens of analogies that explain this concept in terms understandable by senior citizens, and it’s inexcusable that this lawyer can’t do the same.
Even so, the Java API is clearly documented and publicly available and anyone can look it over. It's clear that it provides a contract to the software developer saying things like "if you give me this data when you call this method, I will give you data that looks like this in return". The idea that an API is a contract, I think is sound and the analogy holds water, in my opinion.
Is there really nothing creative about writing an API? Well, I think that's an arguable point. When you drive a car you steer a wheel and when you type you press buttons; it's arguable that these are simply obvious implementations that many people might independently develop on their own. It's mechanical and, perhaps, lacking in creativity. But the Java API? Some portions, for sure, are obvious: any collection of things has a "length" method. But someone did come up with a plan for managing the namespaces and the package names and some packages have APIs that are pretty clever and, perhaps, reveal true creativity.
Still I'm against protecting APIs from third-party re-implementation. I did not find Oracle's arguments at all compelling and, in my view, that was really their job here. Instead they pretended that this idea of an API as a contract anyone could re-implement was totally alien to them and that struck me as a bit dishonest.
I'd like to see a more compelling argument before we upend how we thought APIs worked for the past forty years.
Microsoft Word .doc format claimed to be awful [1] and yet there are a lot of clients.
[1] https://www.joelonsoftware.com/2008/02/19/why-are-the-micros...
A little bit of both; the right is more inclined to strong, especially commercial, property rights even for things like copyright that are expressly, both Constitutionally and statutorily, bounded and contingent, while the left is (from a judicial perspective) generally more supportive of public interest limitations in general and fair use, which while statutorily enshrined was judicially created based on the First Amendment before being written into statute, in particular.
That said, its far from a perfect mapping and you'll often see splits that don't follow party lines in copyright, and the late Justice Ginsberg, while one of the more liberal justices on the court, was known to favor strong copyright.
in general, outside of perennial hotbutton issues that are permanently both highly politically salient, stable in partisan orientation, and at the focus of judicial selection, which copyright very much is not any of, divisions of the court aren't strongly determined by party even when they happen to align with party.
> Eagle-eyed readers may have noticed that the argument seemed to split along partisan lines. Kavanaugh, Thomas, Alito, and Gorsuch—all apparent Google skeptics—are the court's conservatives. Sotomayor, Breyer, and Kagan form the liberal wing. Chief Justice Roberts, who asked tough questions of both sides, has often been seen as the court's swing vote since the retirement of Justice Anthony Kennedy in 2018.
> Grimmelmann argues that this was a coincidence. The late liberal Justice Ruth Bader Ginsburg, for example, was known as a copyright hawk and could easily have sided with Oracle if she were still alive. Before his elevation to the Supreme Court, Justice Gorsuch authored at least one dovish opinion on copyright issues. In the 2014 Aereo decision, all of the court's liberals (along with two conservatives) held that Aereo had infringed copyright, while three other conservatives dissented.
I mostly agree with you, but let's give credit where credit is due. Justice Sonia Sotomayor, from TFA:
> "[...] since 1992, [courts have said] the application-programming interface, of which the declaring code is a part, is not copyrightable. Implementing codes are. On that understanding, industries have built up around applications that know they can copy only what's necessary to run on the application, but they have to change everything else. That's what Google did here. That's why they took less than 1 percent of the Java code... Everybody knows that APIs, declaring codes, are not copyrightable. Implementing codes are. So please explain to me why we should now upend what the industry has viewed as the copyrightable elements, and has declared that some are methods of operation, and some are expressions. "
Talk about cutting off your nose to spite your face.
2. The amount of money Oracle would get back (and going forwards) in licensing fees for Android would probably dwarf most financial prospects from any API reimplementations that might be at risk.
It's sort of perplexing that Google would send someone who can't explain this point of view well.
I thought that was rather straightforward.
What wasn't straightforward to me was Oracle trying to argue that somehow, it makes sense that everyone should be forced to write their own language runtimes, and that somehow you can separate Java the language and virtual machine from the entity hierarchy, or that that is even a tenable state of affairs. Goldstein should have been slamming the "in Java" point hard.
Further, why was no one arguing that programming languages themselves are the front-end manifestations of interoperability by converting high level linguistics down to machine code?
This isn't hard.
But now, on the topic of copyrighting APIs... it's stupid, and it's protectionist, and it's the kind of thing a company does when they can't compete or want to try to block competition. Most types of copyright are bogus for the same reasons. Not only is there the strong possibility of more than one person coming up with the same idea at approximately the same time, in different places, but very few ideas are truly unique or revolutionary. Instead, it becomes a race to see who can copyright (or patent) something first - either defensively or with future hopes of preventing competition or extracting payment from a competitor.
If modern copyright and patent law had always existed, humanity would be decades or perhaps centuries behind where it is now.
https://www.supremecourt.gov/DocketPDF/18/18-956/128391/2020...
Oracle themselves are doing it, could someone with a better legal mind explain to me how this doesn't make the case simpler to decide?
Is it that they're saying, it should be illegal but since it is not we are playing the game by the current rules, but we hope to change those rules?
> "Google's lawyer, Robert van Nest, asked Schwartz whether, during his tenure at Sun, Java APIs were considered proprietary or protected by Sun."
> "'No,' Schwartz said in explaining the nature of open software. 'These are open APIs, and we wanted to bring in more people...we wanted to build the biggest tent and invite as many people as possible.'"
I feel like I would raise this fact repeatedly, if i was trying to make my case.
Winning on fair use is not a disaster for Google. Google winning on fair use on procedural grounds, if the Court uses that as an excuse not to even answer the copyrightability question (the narrowest possible grounds for a Google victory), does not, contrary to the article's claim that "a Google win on a narrow procedural question would create a lot of legal uncertainty in the software industry", create any new legal uncertainty for the industry.
So if Oracle wins here, they will get fuxxed by Amazon?
They only got screwed when Oracle bought Sun.
It's not enough to say that Lee is writing for a specialized audience while the Times caters to a more general audience. Even after accounting for that, Lee's coverage of the case is superior.
I suspect this has less to do with reporters than editors.
Because Android is so entrenched, there's no "going back". Google merely paying a fine doesn't change the fact it's still using Java API's moving forwards. Google would have to license the Java API from Oracle... but then who sets the price? Oracle could set something absurdly 1000x higher than reasonable by holding the entire Android ecosystem hostage, no? Would the court decide not just penalties for past usage, but a negotiation for future usage? How would they determine that? (And if they did, couldn't that create a moral hazard? Companies steal IP from someone who refuses to sell, get "too big to fail", and get to keep the stolen IP in the end.)
I'm not familiar with how the law relates to ongoing conflicts that are so massive they can't be undone without great harm to individuals and businesses far beyond the actual parties in dispute.
I understand that Android currently uses OpenJDK, under its public license, so I think the ramifications will be "Google pays buttloads of money to Oracle for past misuse and continues happily on its way". At least as far as the Java APIs are concerned; there will be lawsuits flying back and forth everywhere in the industry over every other reused API that isn't explicitly licensed, which will probably also effect Android in some way.
Listening to the oral arguments I have a hard time counting to 5 either way on the issue of API copyright and Google’s merger doctrine argument, but I think it’s quite likely that there are 5 votes to send the case back to the Federal Circuit with instructions to take another look at fair use.
Essentially, the district court jury found in favor of Google on fair use and the Federal Circuit set that verdict aside on the grounds that no reasonable person could conclude there was fair use. None of the justices sounded happy about that.
Also based on that:
If it would why would API's be different?
If not how was it applied differently here?
What if in the above scenario, I added some extra chapters so the TOC has all the chapters the other book had, but the TOC is not a 1 for 1?
If my analogy is wrong, what am I not seeing?
I know as someone who writes software, API's not being copyrightable is preferable, but I would like to understand how the law sees it when dealing with real physicals works and understand if the law is applied the same when it moves to less concrete works.
If I want to support a Windows program on Linux I have no choice but to implement the Windows API. Likewise, if I want to interface with a program that stores data in S3, I have to replicate the S3 API.
That's why I think that there's no good analogy for software APIs among traditional media.
As far as the law goes, Google's argument is that because software APIs are arbitrary choices and necessary to be copied for interoperability that software APIs are noncopyrightable under section (b) of this statute. https://www.law.cornell.edu/uscode/text/17/102
If Java is also a standard, then laws applicable to all sorts of standards apply. And this could be a relatively good line of defense.
An API itself is not necessarily a standard. More importantly, a distinction would have to be made between a standard and its implementation.
Technical argument is whether API is procedural or textual. Procedures cannot be copyrighted only patented, including design patents and algorithm patents. But API itself is not procedural.
QWERTY sequence of letters is not necessarily copyrightable because it's not a document or result of machine processing of one and as such is a bad analogy.
An API actually has a source code and mechanically processed version. Oracle publishes it as documentation, which is probably copyrighted, and Java source code, which was copyrighted until OpenJDK.
The trick here is to define minimum creativity required for copyrightable work. If the API is narrow and trivial, you probably cannot copyright it anyway. There is additonal trouble when said API has no meaning without an implementation or is not published. Reverse engineering may be prohibited by a licence.
> 2) Also realize that the SCOTUS' job is not to decide what's right, but to decide what's legal given the constraints and allowances of both the Constitution and law. Even if a Justice were to feel like copywriting APIs would have terrible knock-on effects, she would be compelled to rule in favor of granting them if she believed that the laws passed by Congress required it.
So much of the arguments were specific to the Google/Oracle incident and not as much about the implications except for the thing about QWERTY and perhaps some vague analogies. I thought at the SC level it should always consider 'terrible knock-on effects' and act accordingly considering but not strictly bound to what came before.
As someone else in the comments said, I'm on Google's side here on the basis of this being the general industry assumption for a long time and interoperability generally being a good thing. On the other hand, does anyone here honestly believe that a complex API some team spent a lot of time designing isn't really a creative work?
Patenting API's imo is like patenting a rule set for a game (say like football). Imagine someone patenting rules for a football and afterwards it's allowed only to play the game if you are "licensed" by the patent holder.
anyways- the Googles defense team seems bland. Not sure whether they really understand the idea of what API is and what's it's purpose and that API's textual representation is absolutely non-essential.
Maybe it's just what Google wants- to test the water and this is more of a opening act and the real play is only ahead of us! ;)
B. "Faceoff", "versus", and " debate" pander to the competitive culture of American business and politics.
Independently arriving at the same API name is a defense from copyright violations. If both of us write the exact same method name, and we can both prove we didn't copy the other's, that's enough. We both have copyright over our own api call that we wrote.
Copyright probably shouldn't apply in any case that we could both independently create the same thing (in the same way the sentence "Hi, how are you" isn't copyrightable, but a chapter of shakespeare is -- the former is not a real expression of unique creativity).
So no, copyright does not determine the "1 true owner" of something that was not copied. That's patents.
Is there any more independent media article describing what went on in the hearing?
While I believe that it would be better for society if the court sides with Google, I personally think that APIs can be a creative work, and thus would have copyright protection under the law. However one of Google's arguments is that Oracle is trying to use copyright to acquire a patent-like right, referencing the case of Baker v. Selden[0]. Despite being from 1879(!) I found this case to be especially relevant and I'm quite interested to see how the court will consider it into their opinion.
In his arguments, Oracle's lawyer argues that declaring code is not distinguishable from implementing code and thus deserves all the same copyright protections. As a programmer I find this argument quite unconvincing, as there is clearly a technical distinction in many systems, see: .h files, dynamic linking, etc.
In fact, a couple of justices did a better job articulating Google's position than Google's own lawyer.
"It's like the QWERTY keyboard," Breyer said in a question to Oracle's lawyer. "You didn't have to have a QWERTY keyboard on typewriters in the beginning. But my God, if you let somebody have a copyright on that now, they would control all typewriters, which really has nothing to do with copyright"
Well, what were they supposed to assume?
It's shameful that it's been 40 years since computer programs were explicitly protected in the US under copyright law, and this remains an unsettled question.
This situation is an extremely poor advertisement for the practice of passing vague laws and letting their boundaries be settled over time by court cases and precedent.
It's painful to have to listen to lawyers argue by an analogy between function declarations and Harry Potter chapter titles.
You only need to learn to drive one car, and you can drive them all. But under the hood the cars are completely different. Gas, diesel, battery, hybrid, all have the same API, yet no one says that you copied a car if it has a steering wheel.
One could probably reinvent the (steering) wheel and possibly make a better interface to the car, but that would result in people having to learn how to drive your car specifically.
And it makes a degree of sense - take the articles example lang.java.math.sum - there are a limited number of ways "adding up an array" can be expressed in English. All of which are obvious and based around domain jargon - all very hard to copyright.
However what interests me about this case is how fast it all unravels
Is this about the math.sum part of about the lang.java part? It cannot be the math.sum because then every other language from Rust to Python gets clobbered.
If it is about the lang.java then hey maybe Oracle has a point. But it only means "you cannot copy lang.java.math.sum and that surely is an accident of language design - for example in Python the same call is math.isinf. That's the part used in the code that I write, that's the import signature. The API.
So from my pov this should be a very narrow ruling - if the import signature is not obvious and is unique (lang.java.x) then yeah fine Google, they stole your developers.
I also wonder about how transferable the obvious part is - math.ist_unendlich is fine for german speakers. Is that obvious if the rest of the manual is in English?
And if Google had gone for lang.gava.math.sum (don't tell me it was not at least discussed :-)?
It does overall seem a big fuss over a small hill of beans. If the supreme court rules in a narrow and well defined manner they just move the industry in favour of open and free, in a broad and badly defined manner they move the industry off US shores. Neither side is that bad for the software world
https://en.wikipedia.org/wiki/Lotus_Dev._Corp._v._Borland_In....
The issue was that the Borland Quattro spreadsheet had the ability to emulate the menu hierarchy of Lotus 1-2-3.
So the SCOTUS was asked to weigh in on whether a software menu system represents a copyrightable expression of an idea.
What ended up happening was one justice recused himself and the eight remaining members were evenly split.
In essence, they threw up their hands and gave up. It may as well have been a coin toss.
As an imperfect analogy, think about the fact that many companies no longer want to use GPL code because of the legal ramifications. Open source authors would want their code used at those places use other licenses such as MIT.
The fear mongering about all sorts of cases in which might be affected (API, file formats) area under the assumption that the copyright holder has disallowed use which is the problem.
I suspect many will include provisions to allow it in their licenses otherwise the ecosystem for their products would shrink radically.
That's ridiculous for software APIs, I could be okay with APIs having some temporary copyright for a shorter amount of time, say 5 years, but that's just unreasonably too much.
Do we have any other technical fields where technical work fall under copyright? I feel that's the main issue, copyright was clearly designed for work of art and fiction.
That said, at this point, I don't even care about the interpretation of the law, this issue has to just be addressed by the executive branch, truth be told, the rules should be explicitly stated, and I almost feel someone could make a case and sue the government with being so vague, allowing multi billion businesses to get built and a whole industry assuming they had the correct interpretation of the law, when in fact it gets interpreted differently. I don't know if this is possible to sue the government for, but like, how enraging is it if everyone for years clearly thinks they know the rules and all abide by some interpretation of it worth billions of dollars. Clearly the law needed to be revised a long time ago.
- breaking the domain of work into well modeled types
- information hiding
- keeping dependencies together and/or variously keeping data dependencies apart
- leaving room for extensibility
- speed of operations
- and promoting the correct use i.e. single v. multi-threaded or one server vs. distributed
That's real work, and getting a "good API" i.e. recognized throughout industry as well adapted to the problem domain (say SQL for DB work) or copy-on-write for C++-strings almost always reflects a better implementation which bubbles into the API.
Absolute lunacy.
Maybe it should be compared to English dictionary, where American English cannot use words from pre-existing British English.
If there are "copying" examples like this in the case, I am surprised it wasn't thrown out way earlier.
And actually I think a ruling that APIs are copyrightable would be very good for copy left licenses and languages described in open standards, because they would not leave on at the mercy of a single monopolist.
At the same time there needs to be dissolution within FAANG. Hopefully this loss will help that instead of putting strain on the developer community.
Also, the comment > I'm concerned that under your argument, all computer code is at risk of losing protection under 102(b)
It seems rather incorrect in case of reimplementing an API. It's not like the underlying logic has been changed or copied it's just that the top level API has been modified to be compatible with the system being used. Or am I missing something?
> Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: [...]
But reimplementing the API is neither using the source code nor distributing it, so would it be covered or not?
https://www.supremecourt.gov/search.aspx?filename=/docket/do...
Could have avoided all of this and as a society we could have moved on an built better things. Only the lawyers won here.
Something for the current FAANG's to consider, buy the company that has goodwill but isn't doing well financially for various reasons.
"Justices wary of upending tech industry in Google v. Oracle Supreme Court fight"
https://www.cnbc.com/2020/10/07/supreme-court-hears-google-v...
If Android had been implemented in such a way as to allow pre-existing java applications to execute natively this would be a very different situation.
If IBM had been allowed a universal copyright on the API for its BIOS, it’s very likely you wouldn’t be reading this on the device you’re using today.
I read somewhere that they were planning to but didn't due to SUN's hardware business. They should have sold that business off to another company and kept the software side of it.
Or just settled with Oracle a long time ago.
Legislate!
Way to go, Google.
1) Non-lawyers experiencing the Dunning-Kruger effect 2) People not realising that Supreme Court appeals are 99% about the written submissions, with the oral hearing barely relevant to the final decision at all.
I don't see how losing even a few billion dollars could be a disaster for Google at this point. They control most of the smart phones in the world, and that's worth much more than that amount of money (regardless of whether using Java was the right choice or not).