Advertisement

Source Code Copyright Question

Started by February 06, 2008 02:51 PM
5 comments, last by Rydinare 16 years, 9 months ago
This came up because one of my teammates wanted to "borrow" a piece of code, so I was curious what the legal stance on this is. Here's the situation: we use a commercial software library with a commercial license on a per-developer basis. Only some components of our code have a dependency on this package. The others do not, which has it's advantages. However, one of the lower level components could make use of an enumeration from within this commercial third party library, but we don't want to introduce the other dependencies. The suggestion from this developer was to copy the enumeration and put it in one of our namespaces. Would this be legal? My instincts think it may be questionable, but I wasn't 100% confident enough to give a full answer. Thanks.
Well, you're certainly right to question it, rather than boldly going ahead. That said, for an enum, I personally wouldn't avoid copying it if it were necessary for inter-operation, though it would probably be better if it's value were documented somewhere outside the code and you implemented your own enumeration.

When it comes to functionality, that should really be avoided. If you can spec and re-implement the function with a programmer who hasn't seen the code then it's probably OK to use your reproduction, in my opinion -- the code is either sufficiently trivial to be reproduced easily, or sufficiently novel/complicated to prevent it from being duplicated -- which is probably a decent enough measure of what you should do. If its code that any decent programmer can (and has) written, then your reproduction is fair game, IMO. If your programmer can't get it right without peeking at the code, then you need to have an agreement/license with the original author and/or vendor.

EDIT -- Tom's right, it was trademark law, not copyright, and trademeark has no bearing here. Ignore the following:
Quote: It's also worth noting that, at least in the states, you cannot [corrected]trademark[/corrected] a number. This is the reason that Intel abandoned the #x86 nomenclature in favor of the Pentium (rather than 5x86) moniker -- AMD and others had been using x86, 1x86, 2x86, 3x86 and 4x86 to name their own compatible CPUs, and Intel wanted to create their own strong brand/product identity. The only way to protect their name was to move away from numbers to a real name that they could [corrected]trademark[/corrected]. Since an enumeration is really just a named value, and a value in this case is just a number, I'm not entirely sure that that value, itself, can even be protected.


However, the usual stipulation applies: I Am Not A Lawyer and if you're truly concerned, you should consult one.

[Edited by - ravyne2001 on February 6, 2008 4:43:52 PM]

throw table_exception("(? ???)? ? ???");

Advertisement
> The only way to protect their name was to move away from numbers to a real name that they could copyright.

No, not copyright - trademark. Different form of IP law.

-- Tom Sloper -- sloperama.com

There is no difference in the license on the code if you leave it in its original file or crtl-c, ctrl-v it somewhere else it still isn't yours.
Quote: Original post by stonemetal
There is no difference in the license on the code if you leave it in its original file or crtl-c, ctrl-v it somewhere else it still isn't yours.

Sigh.


The law allows for fair use for many purposes, and some collections of data aren't even own-able.

This particular case is an issue of interoperation. Generally if you must copy something insubstantial for interoprational purposes, it is often legal.

The OP was also vague on the scope and purpose. If this is an internal-only tool that will not be distributed to anybody, it is easier. You have certain property rights by owning a license, so for internal usage even copyright protections may not apply.

Specifically, copyright protects the right to reproduce "substantial and material" portions (a single enumerated list is probably not substantial and material"), the right to prepare derivative works, the right to distribute copies to the public, and rights to perform and display the work publicly.


Based on the very limited information given, it sounds like this is one of those many permitted cases.
sigh indeed.
Quote: Original post by frob

The law allows for fair use for many purposes, and some collections of data aren't even own-able.
true.

Quote:
This particular case is an issue of interoperation. Generally if you must copy something insubstantial for interoprational purposes, it is often legal.

While true the license more than likely states doing so is a violation of the license to keep just this sort of thing from happening and customers buying licenses.
Quote:
The OP was also vague on the scope and purpose. If this is an internal-only tool that will not be distributed to anybody, it is easier. You have certain property rights by owning a license, so for internal usage even copyright protections may not apply.

Specifically, copyright protects the right to reproduce "substantial and material" portions (a single enumerated list is probably not substantial and material"), the right to prepare derivative works, the right to distribute copies to the public, and rights to perform and display the work publicly.


Based on the very limited information given, it sounds like this is one of those many permitted cases.


Copyright also covers derivative works which if you need code from their code base to make your app work, will more than likely apply, there by making the license the more important part of this debate than copyright. So like I said coping stuff from their library doesn't make it yours, and as such follow your license when it comes to working with their library.
Advertisement
Quote: Original post by frob
Quote: Original post by stonemetal
There is no difference in the license on the code if you leave it in its original file or crtl-c, ctrl-v it somewhere else it still isn't yours.

Sigh.


The law allows for fair use for many purposes, and some collections of data aren't even own-able.

This particular case is an issue of interoperation. Generally if you must copy something insubstantial for interoprational purposes, it is often legal.

The OP was also vague on the scope and purpose. If this is an internal-only tool that will not be distributed to anybody, it is easier. You have certain property rights by owning a license, so for internal usage even copyright protections may not apply.

Specifically, copyright protects the right to reproduce "substantial and material" portions (a single enumerated list is probably not substantial and material"), the right to prepare derivative works, the right to distribute copies to the public, and rights to perform and display the work publicly.


Based on the very limited information given, it sounds like this is one of those many permitted cases.


I apologize for the late response. I was away for the weekend. I appreciate your response. This will be part of an application that we ship. However, the application already statically links to the library, which is allowed via the license. I guess it's a question of locality of source code. It will not be part of any third party API that we ship to customers.

I guess ultimately it comes down to what the license says?

FYI, at this point, I told the other developer to take a different approach, to play it safe.

This topic is closed to new replies.

Advertisement