Earlier quoted context omitted.
I've always understood API as "Application" (meaning application, program, something similar to script) "Programming" (creating code, writing) "Interface" (abstract definition of meaning of variables and functions, preferably with some code that makes those meanings "live", something real, "behind" those variable and function names). Maybe I'm wrong. However code is code, be it a library, module, framework, API, prog…
Code can implement an API, but an API is not code. Not using any reasonable definition of code. Code is something you are theoretically able to execute, in one way or another.
Computer Scientists Ask Supreme Court to Rule APIs Can’t Be Copyrighted
161–170 of 170 posts
Re: Computer Scientists Ask Supreme Court to Rule APIs Can’t Be Copyrighted
#162Earlier quoted context omitted.
It also doesn't mean that they're not still Google employees.
If you know any of the back story of those names you would have known that none of them would need to affiliate with any company. They are basically the deity of our age. Without them we would not have modern computers and the only handhelds we have are rocks.
Re: Computer Scientists Ask Supreme Court to Rule APIs Can’t Be Copyrighted
#163Earlier quoted context omitted.
OK, for some time I've lived in one file projects (PHP) where I've defined interface and in the same file implemented the code itself, so I've seen too little difference... Maybe in other projects the difference is sharper. Is MOOPH module copyright protected?
> Is MOOPH module copyright protected? // Most likely yes. Because you gave it a specific implementation that is not required to make it work. The functionality - and any elements of the module that spring directly from that functionality - is not copyrightable. If you gave a programmer pseudo code for your module and they created near enough the same module from it then the creative elements don't lie in the aesthet…
Re: Computer Scientists Ask Supreme Court to Rule APIs Can’t Be Copyrighted
#164Earlier quoted context omitted.
That is not good enough. Sun Was bought by Oracle and things changed. If Microsoft declines further, whats stopping from Oracle or someone else repeating the same?
Did Sun ever make a public statement that anybody is allowed to independently re-implement (subsets of) the JRE class library APIs? I don't recall such a promise. Probably it's tied to the notorious TCK certification process that always was entirely at Sun's discretion. Actually many years ago Sun has successfully sued Microsoft over Microsoft's incomplete JRE implementation, but I guess that was more about breach-of…
When Google Announced Android, CEO of Sun at the time welcomed the project and acknowledged it as a positive to Java Community.
Re: Computer Scientists Ask Supreme Court to Rule APIs Can’t Be Copyrighted
#165Why was Microsoft's J thing an illegal Java bastardization, but Google's Dalvik/Android is not?
Re: Computer Scientists Ask Supreme Court to Rule APIs Can’t Be Copyrighted
#166Earlier quoted context omitted.
> Of course, if you did so, the fact that you ended up with the same API means you have removed any expressive portions, and are left with purely functional constructs and short names. That presupposes that there is nothing expressive in the structure of the API itself, beyond the names. But the combination and structure of calls in an API is an expression in and of itself, as evidenced by the fact that the same func…
It would seem to me that the exemptions in 17 USC 102(b), reading its text, could certainly be interpreted so as to apply: "In no case does copyright protection for an original work of authorship extend to any idea, procedure, process, system, method of operation, concept, principle, or discovery, regardless of the form in which it is described, explained, illustrated, or embodied in such work." I could easily see an…
I can copyright the text of my proof, but not the fact being proved.
Re: Computer Scientists Ask Supreme Court to Rule APIs Can’t Be Copyrighted
#167Earlier quoted context omitted.
"That presupposes that there is nothing expressive in the structure of the API itself, beyond the names. But the combination and structure of calls in an API is an expression in and of itself, as evidenced by the fact that the same functionality (e.g. file access) can be expressed in many different ways." By this argument, everything ever, including my shopping lists are creative expression and copyright eligible. Co…
> By this argument, everything ever, including my shopping lists are creative expression and copyright eligible. I'm not sure that necessarily follows, but if you do use creative expression in write your shopping list, why is it not copyright-eligible? Just because it's a "shopping list"? Where do you draw the line? And what if you no creative expression is involved in writing some code... is it not covered by copyri…
What would it mean to use creative expression to write a shopping list?
"And what if you no creative expression is involved in writing some code... is it not covered by copyright? " It is clearly not covered by copyright in that case.
I'd need to see specific code to answer the rest of your questions.
Copyright is not a binary thing. There is essentially a 'strength of protection' that goes along with it. For example, you can have copyrights on compilations of works. Your copyright does not extend to the underlying works. Anyone can copy them (assuming they otherwise have rights).
"I'm sure you know this, but copyright expressly excludes protection for functionality (leaving that to the realm of patents), and isn't that what methods and processes are?"
No.
Re: Computer Scientists Ask Supreme Court to Rule APIs Can’t Be Copyrighted
#168Earlier quoted context omitted.
It would seem to me that the exemptions in 17 USC 102(b), reading its text, could certainly be interpreted so as to apply: "In no case does copyright protection for an original work of authorship extend to any idea, procedure, process, system, method of operation, concept, principle, or discovery, regardless of the form in which it is described, explained, illustrated, or embodied in such work." I could easily see an…
If I understand correctly, facts can't be copyrighted. I therefore can't copyright a^2 + b^2 = c^2. I can copyright the text of my proof, but not the fact being proved.
Re: Computer Scientists Ask Supreme Court to Rule APIs Can’t Be Copyrighted
#169Earlier quoted context omitted.
> By this argument, everything ever, including my shopping lists are creative expression and copyright eligible. I'm not sure that necessarily follows, but if you do use creative expression in write your shopping list, why is it not copyright-eligible? Just because it's a "shopping list"? Where do you draw the line? And what if you no creative expression is involved in writing some code... is it not covered by copyri…
"but if you do use creative expression in write your shopping list, why is it not copyright-eligible?" What would it mean to use creative expression to write a shopping list? "And what if you no creative expression is involved in writing some code... is it not covered by copyright? " It is clearly not covered by copyright in that case. I'd need to see specific code to answer the rest of your questions. Copyright is n…
Make it rhyme? Interject humor? Use archaic language? :-)
The question is, of course, why would you ever bother when it's only ever going to be you who reads the shopping list? But that's not the case with APIs! APIs are made primarily for other people to read, understand and compose other programs with. If I were to design an API that I wanted other people to use (and I have), I'd try my hardest to make it as attractive as possible.
> I'd need to see specific code to answer the rest of your questions.
I did give a list of examples, but your next paragraph answers my question, in a way. I guess "hello World" is probably not copyright-eligible, but more complex programs are. My question is, what if a complex program was just a mechanical implementation of a very detailed spec?
As to the methods and processes bit, I'm not quite clear what aspect of those you fear would be covered by copyright. If it's the actual implementation, it's just the code, which is already copyrightable. If it's the functionality or the "idea" behind the code, it is explicitly excluded.
This brings me back to my general belief that copyright is not appropriate for protecting code. (Good) code is supposed to be as boring as possible! The actual creative expression in programming goes into how problems are solved, i.e. the "idea" behind the code, and that is explicitly excluded by copyright.
Re: Computer Scientists Ask Supreme Court to Rule APIs Can’t Be Copyrighted
#170Earlier quoted context omitted.
> If they're "doing the exact same things" then they're the same API. And yet somehow I can reliably differentiate the Java API from the C++ API from the Python API etc. etc. doing all the same things in their respective standard libraries. That is, each one expresses the same concepts in different ways. You seem to be conflating the concepts represented by an API with the specific expression of that API. This being…
They aren't doing the same things. You can't copyright a bolt with specific dimensions and thereby prevent anyone else from making nuts compatible with your bolts or bolts compatible with your nuts because you can't copyright function. It is also true that you can't copyright the entire concept of a bolt, but how does that help you? Let's try a specific example. Here's a function from the C library: int tolower(int c…
This specific case is not talking about copyrighting "java.io.File(String filename)" or "Character.toLowerCase(char c)" in isolation, but rather the overall collection of the whole API. It's all about covering the "structure, sequence and organization" of the API, and there's not much of that in a single function call.
But your point about linking relates to another point I made elsewhere (https://news.ycombinator.com/item?id=8581069): you can compile arbitrary textual code to binary code that links to the same symbol in the function table. That is, "new File(fname)" in Java and "open(fname, 'r')" in Jython can both point to the same symbol ("invokespecial #4" in Java bytecode). This is what I mean by "different API for same functionality". Google argues that they needed "binary compatibility" (by citing the Sega and Sony cases), but you do not need to copy the API wholesale for that! They could very well have defined their own new API (e.g. "android.fs.FileObject android.fs.FileSystem.openReadOnly(String fname);") that compiles down to the same bytecode, but then they wouldn't have been able to leverage the widespread pre-existing Java knowledge in the industry.