3 ms·
Here's my take. Google has a list of things that they think can be decreed by the judge rather than the jury as a matter of law, given the evidence presented.
by peeters 15y ago
Here's my take. Google has a list of things that they think can be decreed by the judge rather than the jury as a matter of law, given the evidence presented.
1) You can't claim ownership of the idea (the APIs) rather than the creative writing (the implementation).
2) The API declarations are not copyrightable for the same reason that you can't copyright a short phrase, like "Mary shears sheep." Furthermore, Google needed to be precise in copying the signatures, since changing would lead to incompatibility (with both the programmer's assumptions and their existing Java code).
3) The stuff that Google copied verbatim (or close to verbatim) was negligible. The ONLY thing that Google copied that was actually distributed on a phone was a 9-line function called rangeCheck() that any novice could write. It was only included because Josh Bloch used it when writing an alternative sorting method that he thought would eventually be merged into the Arrays class (where it would have direct access to the original method). Everything else is test classes and a couple of comments.
As part of this argument, Google tries to argue that the infringements are negligible with regards to the "work as a whole," which they argue is all of J2SE 5 (as that is how Oracle registered the copyright). I don't think this argument stands up. Oracle cites plenty of previous copyright cases where the judge has considered less than the overarching work as the "work as a whole" (for example, a defendant tried to argue that the article they had copied verbatim from a magazine was a small piece of the work as a whole (the magazine itself), but the judge considered the article itself to be a work. In this case it was still determined that the article was used under fair use provisions however).
4) Google's documentation of the APIs doesn't infringe. First, they are similar in substance because they are talking about the same idea. Programmers have common terminology and ways of talking about ideas (in this case, what a method/class does) that become more similar when you consider the fact they are trying to be succinct and unambiguous. Second, they are similar in organization because they use the Javadoc tool, which automatically generates docs from comments attached to the API declarations themselves. In other words, if the APIs are not seen as infringing, then neither can the Javadoc structure. They should not be considered a separate act of infringement.
5 and 6 were less interesting to me and were more about Google trying to get off on a technicality, so I don't summarize them here.
- taligent 15y agoSorry but I disagree with most of that. An API is hardly just a bunch of short phrases that all programmers use as common parlance. That's That's why Software Architects as a sub-profession exist. Because it requires skill and talent to construct a cohesive, consistent yet technically implementable API. People that actually work against APIs every day know this.
- peeters 15y agoYou don't have to apologize, those aren't my opinions. I was summing up Google's motion, which has 6 parts. My particular focus is on API design too, and I know the art that comes into it. But I would say that some APIs DO fall into this. Calling the equals method "equals" and having it take one argument and return a boolean is comparable to a "short phrase". There aren't many other ways to express the concept. When you start to look at a library or component as a whole though, it starts to take on a lot more value and uniqueness. You only have to start comparing mocking or assertion libraries in Java to realize that a huge portion of the differentiation between the libraries (and why people choose one over another) is the way it reads and its expressiveness, not its implementation details. And I think some teams at Google recognize this too, if you look at Guava and Guice.
- Drbble 15y agoBut the creativity in the API is inseparable from compatibility, and compatibility is fair use. When you take out the portion that is required for legally protected compatibility, what's left is documentation and implementation, neither of which Google copied.