A Legal Blog by Aaron | Sanders, PLLC

Federal Circuit Feeds Us Some Humble Pie: Oracle v Google Reversed

Humble Pie Taste Like Sawdust but at Least it’s High in Roughage

It’s fair to say that I was a little bit invested in the district court opinion in Oracle v. Google. I really thought it was a great opinion, thought it really helped clear the air about the vexed issue of copyright protection for computer programs—and I said so, both in a published article, and in a multi-part blog post (starting here).

So when it became clear that the Federal Circuit Court of Appeals was set to reverse the decision, I had to resist getting defensive. While my Twitter feed exploded, mostly in outrage, at the actual reversal, I put off reading the decision until I could read it fairly. The Federal Circuit might have been reversed by the Supreme Court five times out of five this year, on the very subject (patents) it is supposed to be an expert on, but that doesn’t make it wrong. And just because I had publicly supported the now-reversed trial court opinion, doesn’t mean I was right.

Most of the criticism that I read had mostly to do with policy. In essence, they contended that the Federal Circuit to be legally wrong because APIs should…


Read More»

Copyright Protection for APIs after Oracle v. Google: The Trees Mattered More than the Forest

Part V: Oracle Wanted the Court to See the Forest for the Trees

Last time, I explained the painstaking “abstraction-filtration-comparison” test (or “AFC test”) that most courts use to determine the extent of copyright protection for computer code. The test is tedious and difficult to apply because you have to look at the software at several levels of abstraction—from basic concept to actual lines of code—and apply the test to each level.

Oracle’s Forest

From Oracle’s point of view, the problem with the AFC test isn’t so much that it’s difficult—Oracle has plenty of money for experts and lawyers—but that Oracle loses under the AFC test. Recall that Google deliberately avoided copying the protectable part of the Java API code (the implementation), and the rest of the Java API code was (the declaration) unprotectable under the Merger Doctrine. What Oracle needs is protection for a higher level of abstraction, but the individual methods are so short, there just isn’t enough levels of abstraction before you’ve run out of protectable expression and are completely engulfed by ideas, processes and functionality.

So Oracle needed a new way of looking at the problem: to stop looking at the API as a set of individual works, but…

Read More»