Jasper, AL asked in Copyright and Intellectual Property for Alabama

Q: Can I legally copy copyrighted code examples that do a basic function for use as building blocks?

I want to build a collection of simple programs that are essentially building blocks to build original programs. An example would be a program that demonstrates multiprocessing with four threads.

2 Lawyer Answers
Alan Harrison
Alan Harrison
Answered
  • Intellectual Property Lawyer
  • Milford, CT

A: Like many software copyright questions, this one is fun to answer because it implicates the "merger doctrine" of (c) law.

Expressions of ideas have copyright as soon as the expression is made. Ideas themselves cannot have copyright. For example, detailed instructions for making a souffle may be copyright. The idea of making a souffle, and the basic steps for doing so, cannot have copyright.

When it's not clear whether something is an expression or a mere idea, copyright attorneys talk about "merger". It's a principle of doubt. Subject matter that has "merged" does not get copyright.

Often, very streamlined code may be merged subject matter. Stripped down to the essentials of how to accomplish the task, no garnish. To the extent that the code simply implements the idea of what it's supposed to do, it's free to copy.

Google and Oracle had a lawsuit about this. It went to the Supreme Court. You can read the final decision here: https://www.courtlistener.com/opinion/4898858/google-llc-v-oracle-america-inc/?q=Google%20Oracle%20copyright%20Android%20Java

1 user found this answer helpful

James L. Arrasmith
PREMIUM
James L. Arrasmith pro label Lawyers, want to be a Justia Connect Pro too? Learn more ›
Answered

A: In general, copying copyrighted code, even for basic functions, without permission can be legally risky. Copyright laws vary by country but typically protect the expression of ideas, including code. If the examples are copyrighted, it is best to seek permission, use alternatives that are in the public domain, or create your own versions.

You might consider understanding the underlying concepts and then writing your own code based on that knowledge. This approach ensures your work is original and tailored to your specific needs. Additionally, many programming languages and frameworks have extensive documentation and community-contributed code snippets that are explicitly intended to be used as building blocks.

For building a collection of basic programs, you could look into open-source projects or repositories where the authors have granted a license that allows for reuse, modification, and distribution. Always review the license terms to ensure compliance with their conditions. This method allows you to legally build upon the work of others while contributing back to the community.

1 user found this answer helpful

Justia Ask a Lawyer is a forum for consumers to get answers to basic legal questions. Any information sent through Justia Ask a Lawyer is not secure and is done so on a non-confidential basis only.

The use of this website to ask questions or receive answers does not create an attorney–client relationship between you and Justia, or between you and any attorney who receives your information or responds to your questions, nor is it intended to create such a relationship. Additionally, no responses on this forum constitute legal advice, which must be tailored to the specific circumstances of each case. You should not act upon information provided in Justia Ask a Lawyer without seeking professional counsel from an attorney admitted or authorized to practice in your jurisdiction. Justia assumes no responsibility to any person who relies on information contained on or received through this site and disclaims all liability in respect to such information.

Justia cannot guarantee that the information on this website (including any legal information provided by an attorney through this service) is accurate, complete, or up-to-date. While we intend to make every attempt to keep the information on this site current, the owners of and contributors to this site make no claims, promises or guarantees about the accuracy, completeness or adequacy of the information contained in or linked to from this site.