Part II: When Expression and Function Collide
We’re talking about computer code in Oracle v. Google, and computer code is challenging because it’s expressive but also functional. Last time, I explained that when functionality gets mixed up with expression, we try to separate the expression from the functionality and protect just the expression. But I implied that sometimes they can get too mixed up to be separated. What do we do then? A couple of examples might help.
Consider a manual for motorcycle maintenance that describes a method for cleaning out a motorcycle’s carburetor. The manual is certainly copyrightable, but you have to exclude from copyright protection the method for cleaning the carburetor. If you photocopied the pages describing the method, you’d be violating copyright. But if you described the method in your own words, you’d be fine. The expression is what’s protected, not the ideas (or facts or functions).
With software, this principle takes on overwhelming importance, since software is, by its nature, functional. It makes computers do useful things. Indeed, it may strike some (non-developers) as strange that computer code should be protected the same way novels, movies and music are protected—that code can be “expressive” in the first place.
Indeed, one can imagine a piece of software code so functional that it can’t be protected at all. This happens when the original expression is dictated by functionality, efficiency, convention or other unprotectable things like facts or ideas. (Among lawyers, this is known as the “Merger Doctrine” because the protectablee and non-protectable elements have merged together.) Consider my personal recipe for pancakes:
2 c. all-purpose flour, divided 1 ½ c. & ½ c.½ t.
1 ½ t. baking powder
½ t. salt
1 T. sugar
2 c. buttermilk
3 T. butter, melted
scant ¼ t. vanilla
2 large eggs (you can get away with 1 egg)
Heat a griddle to medium heat. To check proper temperature, sprinkle water on the griddle. If the water “dances” and slowly evaporates, it’s the right temperature.* If the water just sits there and bubbles, it’s too cool, and if it just quickly evaporates, it’s too hot.
Combine dry ingredients, except the reserved ½ cup of flour. Combine buttermilk, butter and vanilla. Whisk in eggs. Check the temperature of the griddle. If it’s the right temperature, mix the wet mixture into the dry mixture, stirring gently. Once the dry ingredients are completely integrated, fold in some or all of the remaining flour. This is a judgment call: use more if the mixture appears thin, less if it appears thick.
* It turns out there’s a term for this behavior: the “Leidenfrost Effect.” A nerdier way to write this whole paragraph would be: “Heat pan to Leidenfront Effect.”
Ask yourself: is this copyrightable? (Or, more precisely, how much of this is copyrightable?) It’s mostly facts, isn’t it? Of course, by itself, that doesn’t mean the recipe isn’t copyrightable as a whole. All it means is that you can extract the facts and use them in your own work using your own words. The way I expressed those facts is copyrightable, right?
Well, maybe not, because there aren’t very many ways to describe this way of making pancakes. Much of what I wrote was dictated not by my amazing creativity but by convention and necessity. Start with the ingredient list. It’s just a list of facts. The ordering of lists can be original, but here, it’s dictated by convention. In recipes, it’s normal to list ingredients in the order they are to be used. OK, but what about the way I described the flour and butter. I could have written “1 ½ c. flour, ½ c. flour” and “melted butter.” But, again, the use of divided and melted was dictated by convention. That’s just how recipes are written, and if I described those ingredients in another way, I risked misunderstanding.
OK, but what about the whole structure of the recipe. I chose to list out out the ingredients, then described the steps for using those ingredients—a highly conventional way of setting a recipe. But I could have followed the more modern Joy of Cooking method, where you introduce the ingredients, in a highlighted as they used. That’s a more efficient way, isn’t it? If that’s the case, though, then efficiency, not creativity, is dictating the way I described the recipe. Like convention, efficiency is just another outside force. I happened to choose the traditional format, and that choice isn’t creative.
Well, what about the rest of the recipe? There’s more originality at work there, certainly. But, again, how many different interesting ways are there to describe this process of making pancakes? You can’t change the order of the steps because they’re dictated by function. You can’t alter much of the verbiage—such as whisk, stir, combine and fold—because they’re dictated by convention. You can’t change the names of the ingredients because they’re just facts. You don’t want to add unnecessary verbiage because that’s inefficient and stupid.
What about the last sentence of the recipe? That seems kind of original. After all, I could have written, “Using your best judgment, add more flour if the mixture appears thin, less if it appears thick.” But is that really all that significantly different? I suppose there might be some creative choice there—it’s a close call.
When you’ve stripped out all of the non-protectable elements, there just isn’t much left that protectable. Perhaps my use of judgment call, but if that’s it, it’s probably too short to get copyright protection. That’s another important principle at work here: copyright doesn’t protect short phrases, slogans and the like.*
* Big exception in the Sixth Circuit: sound recordings. Even tiny reproductions of sound records (sampling) may be infringing. It’s not clear whether other circuits will go along.
Put it another way: if you saw me making pancakes according to this recipe, and you wrote it down, it would look a lot like my recipe. That’s because so much of what I wrote was dictated by the circumstances. To at least the extent those two versions overlap, those elements aren’t copyrightable. If I sued you because your work was substantially similar to mine, you’d hope I wouldn’t have a case, right? Otherwise, I’d pretty much own the idea of this particular way of making pancakes.
It turns out, that’s kind of what Google did with the Java API. It didn’t just make copies of the API’s files (i.e., the “methods”). It re-wrote the methods from scratch based on their functionality, and gave them the same names as they had been assigned in Java (because otherwise they wouldn’t work and/or would be hard for Java programmers to recognize).
Next time we’ll apply this principle to Google’s copies of the Java API.
Thanks for reading!