3 ms·
No, I'm not imagining it as a website. An API is literally just a table of contents. meat.beef .. BeefAndPotatos .. BeefAndCabbage fish.cod .. CodWithPeas
by hugi 6y ago
No, I'm not imagining it as a website. An API is literally just a table of contents.
meat.beef
.. BeefAndPotatos
.. BeefAndCabbage
fish.cod
.. CodWithPeas
.. CodWithChips
This is literally an exact representation of what an API looks like. You go to a recipe and you execute it expecting a result. And you get one, the implementation of it is up to the author of the book.
- dragonwriter 6y ago> An API is literally just a table of contents. An API is more like a set of mechanical gears that just happen to be shaped a little like words. If I change the names of things in a table of contents to synonyms, I can still use it to find what I am looking for. If I change the names of things my implementation of an API, it no longer functions as an interface for the things that worked with it previously. An API, despite looking like works, is not a literary expression of a process, it is a machine for executing the process itself, and its shape, is essential to its function.
- rocqua 6y agoI do really like the TOC argument. If I were to take the TOC from another book. Copy only the TOC, write all the chapters and sub-chapters without having even read the other book (only the TOC). Suppose then, than I publish the book explicitly as a replacement for the other book. Not as in "this is the same" but as in "if you find a reference to a chapter in the other book, you can also just look here". Would that be copyright infringement? What happens if I do this to a technical document (think a 3gppp spec) where the TOC runs for 10 pages for a 300 page document, with headings nested 5 deep?
- pdonis 6y ago> An API, despite looking like works, is not a literary expression of a process, it is a machine If this argument is valid, it means that APIs are not copyrightable, they are patentable, because copyright is only for expressions of ideas, not for machines; patents are what apply to machines. And Oracle has already lost on the question of patent infringement in this case (back in 2015, IIRC).
- wtallis 6y agoI've been saying for years that Oracle's objective here seems to be acquiring what is effectively patent protection with copyright duration.
- Dylan16807 6y agoAs a machine, it would be patentable if the machine was made of something other than abstract concepts.
- nobody9999 6y ago>As a machine, it would be patentable if the machine was made of something other than abstract concepts. Processes, whether they're made up of abstract concepts or not are patentable[0]: "Processes are patentable under the U.S. Patent Act if they meet certain criteria. A process patent is a form of utility patent that covers methods of changing the functionality or characteristics of a material during a particular use. The patent-holder is granted exclusive protections and rights to that process for 20 years. When one patents a business method or, in some cases, a computer program, this is a form of patenting a process. It's now possible to patent subscription-based services, targeted advertising networks, online auction sites, portal sites, email systems, and even discussion forums. As our society has evolved, intellectual property (IP) issues have evolved along with it. What constitutes IP these days is so much more than the newest machine or physical invention. Today we have genetically modified seeds, new strands of DNA, computer software, chemical formulae, and more. As these issues become more complex, patent law has to evolve to address new concerns. For example, one can now patent business models and software through the U.S. Patent and Trademark Office (USPTO)." [0] https://www.upcounsel.com/can-you-patent-a-process https://www.upcounsel.com/can-you-patent-a-process
- Supermancho 6y ago> An API, despite looking like works, is not a literary expression of a process, it is a machine That is incorrect. > . If I change the names of things in a table of contents to synonyms, I can still use it to find what I am looking for. If I change the name to be something you cannot refer to, you cannot. > If I change the names of things my implementation of an API, it no longer functions as an interface for the things that worked with it previously. This is irrelevant to the API. The API does not make a guarantee about functionality. If I have an endpoint /foo and later /foo increments an internal counter by 1, the API remains unchanged. Documentation supplements and is not part of the API per se, which is an important distinction. The fact that Documentation and an API are being referred to in conjunction, was a failure that software will suffer for more than the lifetime of my children.
- dragonwriter 6y ago> This is irrelevant to the API. The API does not make a guarantee about functionality. The only purpose of an API is providing mechanical access to functionality.
- Supermancho 6y agoThat's what I said. However, that is not how the original case was presented and has affected the course. The API "describes something" has been convoluted with the API itself.