views:

362

answers:

5

Given that Wikipedia is licensed under the GNU Free Documentation License, if one were to take pseudocode or actual code examples from it and translate them into a given programming language, could this be considered making a derivative work? More generally, how does copyright work for encyclopedias, code cookbooks, internet forums to which small code snippets are posted, etc. if someone uses code from such sources?

A: 

In general you have no way of telling if you can use the code unless there is an explicit notice attached. The laws are different in every country. In most countries any code is automatically copyrighted if is sufficiently complicated, but only the courts can decide how complicated is sufficient. For code from books you should read any copyright notices in the book.

PiedPiper
+2  A: 

IANAL. However, as far as I am aware, there is no practical copyright claim available for algorithms.

Unless that algorithm is patented (a silly issue in itself, but outside of the scope of this answer), such as the LZW compression patents that encumbered many compression routines until earlier this decade, you are (for all practical intents and purposes) free to be inspired by the algorithm and use it in your code.

This is because algorithms are not copyrightable. They are not supposed to be patentable either, but such is the insanity we live with. So an algorithm not covered by patent is free to use in your code.

This is related to text copyright. You cannot copyright a plot device. You can copyright characters, blocks of text, etc. But plot methods and story structure cannot be protected by copyright. This analogizes to software, in that algorithms cannot be under copyright, even though the specific expression of how the algorithm is written can be.

So, as long as you don't copy-paste the pseudocode into a comment, you're safe.

Myrddin Emrys
A: 

The answer is that you should go to a legal bookshop, and walk to the section on intellectual property law, and pick out a good introduction to intellectual property law, take it to the checkout, buy it, and read it. Alternatively, you could keep doing what you're doing, and pay a lawyer to tell you the answer. What you should not do is ask a bunch of programmers on the internet.

Marcin
Such a silly answer. -1 if I had any votes left today.
Laykes
+3  A: 

Note: The following should not be construed as legal advice.

"[A] computer program, whether in object code or source code, is a 'literary work' and is protected from unauthorized copying, whether from its object or source code version". Apple Computer, Inc. v. Franklin Computer Corp., 714 F.2d 1240 (1983)

However, in Computer Associates Int'l, Inc. v. Altai, Inc. the US 2nd Circuit Court of Appeals created the Abstraction-Filtration-Comparison test to determine if infringement exists. In the Filtration portion, copyright is denied where the code is "the only and essential means of accomplishing a give task" or where it would be "virtually impossible to write a program to perform particular functions in a specific computing envrionment without employing standard techniques."

As always, processes themselves are not protectable. Code snippets are such low level works that they are only standard processes and lack the creative spark necessary for a copyright. Remember, copyright protects computer programs only "to the extent that they incorporate authorship in programmer's expression of original ideas, as distinguished from the ideas themselves."

To make a long story short, these code snippets lack original expression - they are simply processes or instructions which consist of the basic building blocks of a program. Thus, using this code in your own projects would not constitute a derivative work.

Jordan L. Walbesser
A: 

on wikipedia, on the edit page, there is a disclaimer saying you shouldn't edit unless you want the edits sold for a profit by others, etc..., so yes for wikipedia.

hintss