4

Open Source licenses are all underpinned by copyright law. Without copyright law, Open Source would fall apart.

Copyright was originally written for creative works, and does not protect facts, ideas, systems, or methods of operation, including algorithms. At https://www.copyright.gov/circs/circ01.pdf, It's notably listed that "Mere listings of ingredients or contents" are also not protected, which could apply to some portions of rendered code (for example, the function table in a dynamic library could be considered a listing of contents).

With these things in mind, it would seem that the entirety of my code isn't protected by copyright. This is fine to me, I would not expect, for example, function headers that I write to be under copyright (it would be very painful to anyone who wanted to write a function that takes in an array and outputs an int). This leads to my question however; what specific parts / qualities of my code are protected / protectable by copyright, and therefore are licensable under open source licenses? Answers specific to the United States are preferred.

A caution:

The answer "all of your code is protected" would be very very bad if it was true. This is because we know factually that not all subsets of your code are protected. If we know that the entire work is protected, but not all subsets, then we can say that any specific given subset of your code might not be protected, or in other words, if anyone takes almost (but not all) of your code, the answer "all of your code is protected" indicates that this portion of your code may not be protected.

15
  • 7
    May I suggest you're suffering from the "coloured bricks" view of copyright, which is not a good model. You might want to read this answer, which I wrote, outlining a mental model that, while far from flawless, causes less problems than the coloured bricks model. Commented Oct 3, 2024 at 20:01
  • 3
    No, it's not. It's a way of thinking about copyright, and how it subsists in a protected work. You're assuming that a protected work consists of protected bits and unprotected bits, and if you can get the unprotected bits out on their own, you can use them. Copyright doesn't work like that. Commented Oct 4, 2024 at 5:57
  • 1
    As you can see from that link, the AFC test is not universally regarded as a good model. I accept the US thinks about copyright that way, but unfortunately the US is still trying to come to terms with wanting copyright to be global while many other countries don't want to do it the US's way. I note also that your question asks which bits of your code are protected and thus licensable under an OS licence, but you don't need to sort out the first to accomplish the second. Licence it all; let the end-user who claims some of it can be used outwith the copyright, sort that out. Commented Oct 4, 2024 at 6:10
  • 1
    It may be worth pointing out that when you choose the license of your code, you are not under any kind of obligation to specify which parts are protected and which are not. It's a bit like when books write in the front matter "no part of this work may be reproduced without permission ..." -- well, what that really means is that no part, that would normally require permission, may be reproduced without permission. It doesn't really make sense for book publishers, nor for code publishers, to spell out exactly what kinds of uses do not legally require permission (such as quotations). Commented Oct 4, 2024 at 11:16
  • 3
    "I would not expect, for example, function headers that I write to be under copyright" -- why not? If you wrote it, then you've got a copyright on it automatically. For very short programs (e.g. "hello world programs", "compute argv[1]+argv[2] and show the output", etc.), the likelihood that multiple authors happen to produce the same creative output is likely, but under copyright law, this is no problem, in principle each author has her own copyright to those pieces of individually-authored trivial code. I think you might be mistakening copyright law for patent law, in some sense. Commented Oct 4, 2024 at 11:27

2 Answers 2

17

I get the feeling you're looking for a simple black and white answer, which gives you a set of criteria you can apply to work out if some code is protected by copyright or not. However, that's not the way copyright works - even in one jurisdiction, individual judges and courts disagree on this (perhaps most famously, Google vs Oracle), and different jurisdictions certainly will rule differently for exactly the same issue.

4
  • 2
    Thank you for responding. I am indeed attempting to get a super focused answer. I want to provide some constructive criticism to this answer- Just because courts will disagree on topics and laws does not stop lawyers from giving legal advice involving certain scenarios (for example) .. Even if we don't know how it typically could be applied, we know how the law should be applied, which is what I'm looking for. Commented Oct 3, 2024 at 19:16
  • 17
    I'm not sure why you think we, a bunch of laypeople, know how the law "should" be applied when taking again Google vs Oracle, there was a split opinion between 1) the district judge 2) the three federal judges 3) the majority of the Supreme Court and 4) the minority of the Supreme Court on how the law should be applied. Commented Oct 3, 2024 at 20:18
  • 'I'm not sure why you think we, a bunch of laypeople, know how the law "should" be applied' Because the most basic underpinnings of open source being able to even function in our society are rooted in this concept, for a start. Commented Oct 7, 2024 at 18:07
  • @tuskiomi: Open source is legally unsound in the US regardless, because 17 USC 203 can be used to blow up any sufficiently-old project no matter how careful we are. There has to be some informal trust and cooperation for FOSS to work. It cannot be solved purely as a matter of law. Commented Oct 7, 2024 at 21:18
7

The law in general, and this applies also to copyright, does not apply to sets and subsets in a mathematically correct manner. Lawyers, judges and law makers are generally not mathematicians and they have no problems with defining different rules to a subset that is part of a larger set or the subset by its own or even the history of how things came to be (and apply the history rules even if that history is unknowable).

In principle, the copyright protection applies to all the code and there is no way you can extract a subset out of it and state that it is not protected. The only exception here is if you can prove that there is no context in which that subset could ever have been subject to copyright protection. That would be the case if

  • the code in question is literally the only way to do it.
  • the subset is a list of natural facts. It would have to be facts about other things than the code you extracted the facts from, so a list of the function names doesn't qualify.

Also note that while copyright law protects your expression of an idea, it does not prevent that others may come up with very similar expressions of the same idea. It is entirely allowed that two people independently write a hello-world type of program that looks almost identical. And both of them would have copyright protection on their own version.

6
  • "In principle, the copyright protection applies to all the code and there is no way you can extract a subset out of it and state that it is not protected" Which principle? what principle says this? Commented Oct 4, 2024 at 22:11
  • The principle that copyright of a computer program includes the right of its author to control the total OR PARTIAL reproduction of the computer program. For example see article 99 section a of the Spanish law on intellectual property. portaljuridic.gencat.cat/ca/document-del-pjur/… Other jurisdictions may have similar rules. Commented Oct 4, 2024 at 22:34
  • @Pere copyright has never had the principal of total control of partial works... as a matter of fact, it's extremely important that partial works are able to be taken and used within the context of copyright. The ability to dictate both total and partial reproductions of a work and the ideas that found a work is called a monopoly. Commented Oct 4, 2024 at 22:48
  • 5
    @tuskiomi copyright law indeed gives the author of a work a monopoly on controlling reproduction. Commented Oct 5, 2024 at 11:49
  • 1
    @tuskiomi: I don't know where you got that idea from, but it is wrong. 17 USC 106 protects the right to create "derivative works," which are explicitly defined as including "abridgements." Similar laws exist in most other countries. Reviews are protected by fair use in the US and by more specific doctrines in other countries. Commented Oct 7, 2024 at 21:10

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.