Hacker News new | ask | show | jobs
by kiadimoondi 2286 days ago
I think there's a case to be made that there's nothing novel in an API itself (emphasis on the interface). The novelty comes from the implementation, whereby competition actually kicks in (novel algorithms, data structures, storage techniques, etc.). But maybe I'm missing something? I come from a distributed systems background, so my bias is likely titled.
2 comments

Naming decisions are pretty inherently creative, I don't this this argument works. "Stack", "push" and "pop" are obviously novel imho. The inventor of the stack api could have instead called them "LIFO", "Put" and "Take" for instance.
I agree, I'd never argue that there isn't creativity involved. It's essentially language. And someone said before that there's a base level of competency involved in making API decisions. It's more the argument of what's actually making you money or providing competitive edge. I can see edge cases where, with matching feature sets for two competing products, the API matters a great deal. API and functionality definitely influence each other, I just see it as a weak argument that copyright is broken when the interface is copied, not the implementation.
> It's more the argument of what's actually making you money or providing competitive edge

This would factor into the fair use analysis and the damages analysis, but not the analysis of whether or not the material was copyrightable in the first place.

PS. For what it's worth I agree with you that this isn't copyright infringement, I just think it's important to get the arguments for why it isn't copyright infringement right. The two arguments I like best are "the merger doctrine" (If there is only one way to write something, in this case a API that existing java libraries can use, then it isn't copyrightable) and "fair use" (Vaguely speaking an exception for copying we as a society don't mind, defined in the law here https://www.law.cornell.edu/uscode/text/17/107).

yep, APIs are a work of art. the API you chose would vary a lot by the individual who designed (and Acceptance tests they were required to pass) as such, there is a novelty in them. whether it is worth patenting or copyrighting is separate matter.
I agree there's nuance to the issue, and thst's where the argument is to be made. But I think it'd be a bad faith application of copyright or patent law, as your competitive edge largely doesn't come from API design but the product being interfaced with.
Then you find out java.time copies posix. Or is it convergence?