6 ms·
This advise by the Solicitor General hinges on an interpretation of section 102(b) of the copyright act. That section essentially says that "methods of operatio
by badlogic 11y ago
This advise by the Solicitor General hinges on an interpretation of section 102(b) of the copyright act. That section essentially says that "methods of operation" can't be copyrighted.
The Solicitor General does not understand that APIs are a formalized description of "methods of operation" (page 14). I suggest reading the entire advisory, it's quite frustrating and contradicts itself.
- markvdb 11y agoI agree that one shouldn't ascribe to malice what can be ascribed to incompetence. ("The Solicitor General does not understand...") BUT! At the White House level, incompetence equals malice. We have every right to expect competence from a level as high as the White House.
- RexRollman 11y agoWell, these are the same people who think you can safely backdoor encryption.
- iwwr 11y agoI think they value power and control above safety.
- harryh 11y agoJustice department officials and congressmen are most definitely not the same people.
- bcg1 11y agoFBI is part of the justice dept. http://www.fbi.gov/news/speeches/going-dark-are-technology-privacy-and-public-safety-on-a-collision-course http://www.fbi.gov/news/speeches/going-dark-are-technology-p...
- underscores 11y agoYou can safely backdoor encryption. If you don't know how, well, you are just stupid (which is what I figured anyway).
- dragonwriter 11y agoThe SG is a subcabinet Justice Department official, not part of the Executive Office of the President (White House).
- protomyth 11y agoThe SG does what the President tells him/her. This is the policy of the Executive Office of the President. The Justice Department is part of the Executive Branch and not some independent agency.
- throwawaykf05 11y agoAll code is a formalized description of "methods of operation". Unless you believe software achieves practical results without the benefit of hardware. And that's assuming you write pure assembly, else you also have firmware, operating systems, drivers, libraries, runtimes, or whatever supporting infrastructure is needed for your code to do anything meaningful.
- bediger4000 11y agoI agree that all code is a formalized description of "methods of operation", unless the legal phrase "methods of operation" has some exotic, inobvious meaning, like "secure in their persons, houses, papers, and effects, against unreasonable searches" has taken on. That's why the US shouldn't allow software patents. Software is either mathematical or a formalized description of a method of operation.
- throwawaykf05 11y agoOn the contrary, patents are exactly what are intended to cover methods of operation. A lot of court decisions regarding copyrightability explicitly mention this. Note, patents usually don't cover the formalized description itself (mainly because it would result in an overly narrow patent) but rather what you can use software to do. Here's a claim from the infamous one-click patent: 1. A method of placing an order for an item comprising: under control of a client system, displaying information identifying the item; and in response to only a single action being performed, sending a request to order the item along with an identifier of a purchaser of the item to a server system; under control of a single-action ordering component of the server system, receiving the request; retrieving additional information previously stored for the purchaser identified by the identifier in the received request; and generating an order to purchase the requested item for the purchaser identified by the identifier in the received request using the retrieved additional information; and fulfilling the generated order to complete purchase of the item whereby the item is ordered without using a shopping cart ordering model. It's a description alright, but there's nothing mathematical or formalized about it (though a software implementation would be a lot of code - formalized description - that applies a bunch of mathematics).
- rayiner 11y agoThere is nothing contradictory about it: as you say, the API is not the method of operation, it's one of many possible descriptions of the method of operation. I don't think anyone is confused by what an API is--its a simple concept.
- hurin 11y ago> There is nothing contradictory about it: as you say, the API is not the method of operation, it's one of many possible descriptions of the method of operation. I don't think anyone is confused by what an API is--its a simple concept. Then what exactly is an API, if it's so clear and simple to define in your opinion? Depending on how one stretches it, everything that is not assembly is an API. I don't know the details of the particular legal argument involved but it's going to get very murky if you claim certain levels of abstraction are copy-rightable and others are not.
- bcg1 11y agoI disagree. Unless "method of operation" is some godforsaken legalistic bastardization of the language, APIs are methods of operation, not a description. In Java you must use those exact symbols to use the software... the description would be the documentation and Javadoc comments about the code, which I agree could certainly be eligible for copyright protection
- rayiner 11y agoWalking is a method of operation. A video of someone walking, or a story about someone walking is a tangible description, not the method of operation itself. The concept of a function with the name cupcake that takes an integer and returns an integer is different than the description "int cupcake(int x)." The interoperability aspect is a red herring--there is no right to interoperate.
- hurin 11y ago> Walking is a method of operation. That's not the way most people are using the term, if you are going to use it differently from everyone else, you should clarify the meaning of your usage of the term. > The concept of a function...is different than the description... I would say that's either not true or entirely non-obvious, because to establish that the concept is what is being described in the later case is you had to provide some form of description in the previous case, in this case: > a function with the name cupcake that takes an integer and returns an integer happens to be the common-english equivalent for > int cupcake(int x) The primary difference being that one is valid as an English-sentence and one is valid as a declaration in c, it's not altogether clear why you consider the common-english-expression as having some kind of special precedence, or how such an example helps us establish the difference between a concept and a description of a concept (even supposing such a duality does exist). > The interoperability aspect is a red herring--there is no right to interoperate. Not a lawyer, but I was under the impression that the Supreme court indeed has and at times does consider the effect on the common good from a particular interpretation of a law in their decision making.
- ChairmanZach 11y agoYet Google claims that the implementing code should be protected by copyright. How is "return a > b ? a : b;" not a method of operation if "public static int Max(int a, int b)" is... If the implementation, CODE(!), is of course a formalized description of methods of operation, the declaring code (or API) is providing a means of access to it. Something that takes quite a bit of thought and creativity to do well.
- mc808 11y agoNeither one of those is substantial enough for copyright. They should be considered in the context of a whole body of work. Using books as an analogy, an API most closely resembles chapters and headings. Is it copyright infringement to write a new book that follows the same outline as a previous book? (I don't know...)
- shit_parade2 11y agoSpoiler: no it's not.
- ChairmanZach 11y agoNot only do APIs resemble the chapters and headings of a book, they aslo include the contract that the content under those headings have exactly the same behaviour. Google didn't just copy the "heading" java.lang.Math.max() they also copied the contract that calling this method should always return the bigger of the two arguments. Ergo, the "content" under the heading is the same, or rather the any differance between the content of Oracle's book and Google's book is irrelevant As any programmer knows, you code against interfaces not implementations. And if you don't realize that declaring those interfaces take both effort and creativity then you probably aren't a very good programmer.
- Oletros 11y ago> Google didn't just copy the "heading" java.lang.Math.max() they also copied the contract that calling this method should always return the bigger of the two arguments. Irrelevant, the contract is not part of the trial