Jump to content
  • Advertisement
Sign in to follow this  
Rydinare

Source Code Copyright Question

This topic is 3781 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

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.

Share this post


Link to post
Share on other sites
Advertisement
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]

Share this post


Link to post
Share on other sites
> 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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!