3 ms·
The principle is more general. According to copyright law, you can copyright creative expression but not anything that is necessary to the functionality of wha
by btilly 7y ago
The principle is more general.
According to copyright law, you can copyright creative expression but not anything that is necessary to the functionality of what you're building. However those might be protected under patents, trademark, or trade secrets laws.
Previous to this case, the code that implements the API can be copyrighted, since it is possible to implement the functionality with different code. But the code that specifies the API interface is absolutely required for compatibility if you want code that is written for one system to be compiled against the other.
However a national precedent put down by the Federal Circuit (the same court that caused software patents to blossom out of control) decided that there is enough creative expression in API interfaces for them to be copyrighted, despite them being necessary for compatibility.
Most people in software think that the previous precedent was better. Hopefully the Supreme Court will agree. (They overturn the Federal Circuit more often than not.)
Going to your fast food example, I'm pretty sure that trademark law applies, which is quite a bit different. But you can't copyright or trademark the act of making the meal larger. (You could patent it..but McDonald's didn't. And even if they had, the patent would now be expired.) But you can trademark the term used to ask for it. And so Wendy's is not allowed to use that term. They can understand it, but not use it. However at some point if "supersize" falls into common use, Wendy's could file a lawsuit saying that it is generic, and THEN they could use it. (Losing trademark due to a term becoming generic is one of the differences between trademark law and copyright law.)
- SilasX 7y ago>They can understand it, but not use it. Right, and isn't that what Google is doing? "Hey, if you send a message in the Java language/API, we will understand it and do the same thing that a real java program will do." "Hey, if you request that a meal be supersized, we'll understand what you intend and execute the Biggie-size operation, which matches what McDonald's would do." Of course, there is the difference that, unlike Wendy's, Google is (analogous to) telling everyone "you can ask the cashier to supersize your meal" instead of just rolling their eyes and accommodating confused consumers. >Going to your fast food example, I'm pretty sure that trademark law applies, As in the sibling subthread, I think the example sidesteps the trademark complication because Wendy's doesn't ever use "supersize" in promotion, they just passively accept user-initiated requests that use the term, and do so in a way compatible with their McDonald's-derived expectations.
- withjive 7y agoAs an Android developer during the first G1 era, I feel that Google was really taking advantage of the well established Java developer base. Having developers already understand Java, was a huge thing for Android when it first came out. So when you say: > Wendy’s doesn’t ever use “supersize” in their promotions IANAL, So I’m not sure Google didn’t do the same... I also think Oracle is also not happy with that.
- SilasX 7y agoRight but what if the java API is nominally “secondary”: “oh use this Byzantine Android api we have ... but if you just treat it like java, it’ll guess what you mean, ruby-magic-method style”?