Assume I have the source code for the Linux 2.6 kernel. Suppose I want to use just a piece of it. How small a piece does it have to be before I'm no longer violating the GPL?
What my question is really; "At what point does the source code take on a identifiable identity?" Its written in C (or at least a lot of it is). Most of the constructs for C are defined in the language. So you can't point to a specific subroutine or sort or whatever to say this is copyrighted or its not. My guess is that "prior art" would cover 95 to 99% of the "uniqueness" of any software product. Programmers borrow ideas and algorithms constantly.
An analogy might be helpful. You have a blob of clay. Its made of aluminum, iron, silicon, water, titanium etc. (in other words dirt without much organic material). If I subdivide the clay continually until I have split it up into individual atoms or molecules, its no longer clay. The water is what is holding it together. It might not even stick together when I push it back into a lump (I'm thinking of the open source guy that sued Linksys when he couldn't get their released source code to work). At what point does copyrighted software cease to be copyrighted when split apart? (edited 9-21-2008)
Besides having taken a materials science class in years past, the analogy to clay is valid. If you take the water out of clay by just letting it dry, it turns to dust. If you bake it in an oven at high temperature it turns into a ceramic. So consider the water to be the copyright holding the "software-clay" together.
Not that I would want it but if I had the source code to Vista or XP and wanted to use just a piece of it, how small a piece would it have to be to keep the Redmond gorilla placid? That is the question I think scares the crap out of Microsoft. I don't know if there has been a defining legal case for determining how small a code fragment can be to be copyrighted. Kind of like the Dead Sea scrolls, what size chunk is significant and does dropping one word make it different enough to be something else?
What prompted all of this thought (besides lots of dead time listening to wind howls from IKE) was that Microsoft evidently got a patent on up and down scrolling on a page. That requires software and not very much. The next thought was : "How idiotic are the US Patent Office people? My tax dollars are paying their salaries! Its past time to clean house."
Microsoft has turned into the biggest patent troll in the world. The only thing that makes any sense is that some attorney in their employ is considering that a defensive move to prevent other bottom feeders from suing Microsoft. I certainly hope that is the reason for that patent otherwise it makes no sense. If they try to enforce that patent I hope they get slapped down by the courts. (edit 9-21-2008)
In any case it puts a new light on the GPL for me.
Even the GPL does not address or even attempt to define the point at which the copyright becomes operative or the source code becomes definable as a protected entity. Following good programming practices it would seem probable that at least in small chunks, similar subroutines could be written by two different programmers. Kernighan and Ritchie could lay claim to everything written in C simply because there doesn't seem to be a lower definable limit to the copyright law. Has one violated the rights of another just because he does a binary sort or a command line parse in the same fashion? Or is it evidence that they read the same magazines or web pages?
I don't have an answer but it seems a question that needs to be answered definitively.