views:

232

answers:

6

Emphasis on structure:

  • Code layout/interfaces
  • Physical file layout etc.
  • Naming of files and classes etc.

My understanding is that if the implementation is completly different then your ok to use the layout as that can't really be 'copyrighted'?

For example if a solution has X, Y, Z projects with classes arranged in certain folders, each with a particular interface and passed around in a particular way. My question is: is this 'code design' copyrighted or free to use in my own project?

A: 

The test is, could you stand in front of a judge and convince him that your code which looks startlingly similar to the complainants code is not in fact a copy.

anon
Essentially it would be a copy that only differs by implemntation... so your saying that would be deemed as a copy and therefore illegal?
Adam Naylor
I'm saying nothing is legal or illegal until it is found to be one or the other in a court of law.
anon
+1  A: 

The chief recommendation you'll find on Stack Overflow is to consult a lawyer.

With that said, (and I am not a lawyer!), if the structure of code was all it took to be considered copyright infringement, it'd be awfully hard to develop software.

George Stocker
+1  A: 

What the copyright protects is the text. You say that you'll have the same hierarchy of files with the same layout and interfaces. This means that your text will have largely the same structure as the original and will look very similar to the original.

You may have hard time proving that it's not a copy. You better not try this.

sharptooth
+1  A: 

sharptooth is correct: Copyright is about text, the idea is that any text that needs creativity to write is under some protection against use by others.

The question is, if the structure of a project is something that falls under the needs creativity clause, because a text as "Hello world!" certainly doesn't.

The answer is: It depends. If you have a small project with 4 or 5 files in it, the structure is trivial, so my guess would be no. If you have a project with over 100 files, and the interfaces form a well defined structure that is somehow reflected in the file structure, the answer could very well be yes.

When in doubt, it doesn't hurt to ask whoever wrote the original solution. If he is a nice guy, he might feel flattered and tell you to go ahead with it. Maybe you want to offer citing his name in your documentation/about box, as this would give him some publicity. If you think his structure is so good that you want to copy it, he probably deserves that.

Disclaimer: IANAL, and this post can not be considered legal advice in any way

Treb
A: 

I'm not a lawyer, but I did read of a case quite a few years ago where one company successfully sued another for copying the structure of a large program exactly, with different code and names.

As far as the file format goes, if you copy a file structure for the purpose of being interoperable, you're probably on much sounder ground than if you copy an internal file format to save time and creativity. Copyright, in general, cannot be used to stop somebody from doing something, only to stop somebody from using somebody else's work to do it. Nor can unimaginative grunt work normally be copyrighted (at least in the USA); the courts have held that there has to be some creativity involved.

From a moral point of view, if copying the structure is so much easier than coming up with your own, then there's a good deal of value to the exact structure, and you should give credit somehow.

And, as always, I'm not a lawyer, this is not legal advice, and despite this it appears to me you may face legal problems. When doing something that is likely to have legal problems, get a lawyer. It can be so much cheaper than not getting one.

David Thornley
A: 

The below is of course not advice nor something to be relied on in any way.

As has been noted, for something to be protected under copyright law, it must have a degree of creativity. Or, to approach that from another perspective, where something is purely functional it cannot be protected under copyright law (but possibly it could be patented).

If the structure, as you described it, is purely functional in an unimaginative way, then it cannot be protected by copyright. This might be the case where you are coding for an API which requires certain classes to be placed in certain files and folders with a certain naming convention. However, note that if you are making a new API similar to such an API then you should not be surprised to find that creative choices have been made in doing the structuring, which would render the structure protected.

It could be, as was also noted already, that the quantity of code makes a difference. If within the structure there is very little code, then there is an increased chance that some creativity has been used in creating the structure.

It could also be that a structures would as such have been protected against copying had it not ended up in the public domain. For example, I would be surprised to find someone arguing that the MVC way of doing things is protected. It could also be that the structure you wish to copy is or could be released (possibly at a price) under a licence which allows you to do so, and allows you to modify.

Your own use of the word "particular" may well give you the answer. Things that are particular have a habit of involving creativity. Arguably this even extends to purely functional things, as illustrated by the patent law 'eureka' requirement that could be paraphrased as non-obvious novelty.

The consequences of a wrong assessment could be severe, so it would always be best to consult a copyright lawyer who can examine the structure.

E Wierda