As someone who obsesses over API design, it is interesting for me to reflect on why I don't consider APIs copyrightable, even though I have spent so much effort and creativity designing them.
The issue makes the most sense to me when I think of APIs as communications protocols. Indeed APIs for remote services literally are communications protocols. But even for the in-process case an API is the means by which two decoupled pieces of code communicate.
In this sense, APIs aren't that different from languages themselves. If you get really abstract, you could think of LISP as nothing but S-expression syntax and everything else (including define, lambda, etc) as an API.
Languages themselves aren't copyrightable, even thought things you can say in a language are. Languages like Lojban certainly had a lot of creative design go into them, but that alone doesn't make them copyrightable.
So even though I think you can make a pretty convincing philosophical argument for why APIs shouldn't be copyrightable, the critical deciding factor to me in is a practical one. Allowing APIs to be copyrightable would be a huge and unwarranted advantage to incumbents at the expense of innovation and disruptive technology. Users of any API would be locked in to one particular provider of that API.
The ability to swap out one component for another is a fundamental tool for software engineers, and it's a fantastically pro-competitive check that keeps people honest. If your API provider BigCo raises their prices and no one else is allowed to compete with them because their API is copyrighted, how is that good for anyone except BigCo? In particular, someone else may have developed a superior way of implementing the API; allowing them to do so could help move the entire industry forward. Protecting BigCo from this disruption gives them no incentive to move their own tech forward; they can continue to coast on the vendor lock-in of their customers. We're not talking about letting others copy their product, but rather allowing others to speak the same language that everyone is currently speaking to BigCo.
I agree with Joshua Bloch's sentiment that API design is "tough" and "a noble and rewarding craft," but I don't think either of these imply legally-protected status. I think it would be terrible for the industry if the judge ruled that APIs are copyrightable.
The issue makes the most sense to me when I think of APIs as communications protocols. Indeed APIs for remote services literally are communications protocols. But even for the in-process case an API is the means by which two decoupled pieces of code communicate.
In this sense, APIs aren't that different from languages themselves. If you get really abstract, you could think of LISP as nothing but S-expression syntax and everything else (including define, lambda, etc) as an API.
Languages themselves aren't copyrightable, even thought things you can say in a language are. Languages like Lojban certainly had a lot of creative design go into them, but that alone doesn't make them copyrightable.
So even though I think you can make a pretty convincing philosophical argument for why APIs shouldn't be copyrightable, the critical deciding factor to me in is a practical one. Allowing APIs to be copyrightable would be a huge and unwarranted advantage to incumbents at the expense of innovation and disruptive technology. Users of any API would be locked in to one particular provider of that API.
The ability to swap out one component for another is a fundamental tool for software engineers, and it's a fantastically pro-competitive check that keeps people honest. If your API provider BigCo raises their prices and no one else is allowed to compete with them because their API is copyrighted, how is that good for anyone except BigCo? In particular, someone else may have developed a superior way of implementing the API; allowing them to do so could help move the entire industry forward. Protecting BigCo from this disruption gives them no incentive to move their own tech forward; they can continue to coast on the vendor lock-in of their customers. We're not talking about letting others copy their product, but rather allowing others to speak the same language that everyone is currently speaking to BigCo.
I agree with Joshua Bloch's sentiment that API design is "tough" and "a noble and rewarding craft," but I don't think either of these imply legally-protected status. I think it would be terrible for the industry if the judge ruled that APIs are copyrightable.