I hope this is the right forum for my question. I am selling software which buyers get the full source code of. It is distributed through a 3rd party store system which does not let me know the actual identities of the customers.

The other day a customer out of the blue emailed me code which is very well usable in my software, it is not per se deal-breaking if it's not in there, but it's definitely also not something I would dismiss. You could argue it is very much increasing the worth of the product.

I have a question about the legality to use the code (about 2 hands full lines of code in a class of 300 lines already present in my software) I was sent by email without further comment about whether I am allowed to include it in the my software. He just said (paraphrased): "Any reason not to do it that way?" I did not ask for his code submission nor did I know the author before he emailed me.

EDIT Please excuse me. I had another look at the mail just now. The subject of the mail is literally: "[Suggestion] Optimization of >pluginXYZ<" This is an aspect I forgot to mention in the original question, in fact I for some reason did not even notice it consciously, my bad.

I answered him to say that I like his code and would like to put his suggestions in the package (which then all existing customers receive as free update) but have not received an answer.

Does somebody know the standard rules in such a situation where nothing specific is/can be negotiated? Am I allowed to include it because he sent me plain code which is 1:1 "pluggable" in my commercial package? I would not mind to credit the author of the changes in the file also, of course.

The obvious answer could very well be "No, you are not allowed to just paste it in your commercial software without express consent". But if you think about it, if I were now to be motivated to include an algorithm for the solution he gave but wasn't supposed to include his solution because he never expressly consented to it, well I cannot "un-see" his solution. And as I now know the algorithm because he personally suggested it to me, should I just do as if I never saw the mail, and try to come up with an algorithm for what he suggested to me which is expressly different to the one he sent me, to avoid any suspicion? Sounds non-sensical to me, but I am not a lawyer.

EDIT I had another look at the mail just now.(see EDIT notice above) I did try to contact him now for several more weeks and no success :( What would you say, does the fact that he sent this mail with the subject starting with "[Suggestion]" change the matter legally? He seems to indicate that he is presenting this solution to me for usage, don't you think?

  • Hi! Thanks for those who answered already. I did change the question just now, because it did not include an aspect which I previously did not include. I would be happy if you revised your answer if you think this changes the legal equation in any way. Thank you very much! – metafa May 31 '17 at 9:54

The basic principle about copyright protection is that the expression of an idea is protected, but the idea itself is not. So wholesale copying without permission is infringing. But the abstract algorithm is not protected by copyright (and let us assume that it also isn't patented). By way of analog, an insertion sort is a pretty easy concept to grasp, and once you understand it, you can re-create it, independent of how the original example (where from you learned about the sort) is expressed. So the question is whether it is necessary for you to copy that code (copyright protects against copying), or can you independently re-express the algorithmic idea (ideas are not protected)?

  • Thank you for your answer. I have edited the question. I know its only a very small aspect, but still...... I would love for you to revise your answer if you think this to be of any legal significance which could change the equation. Thanks! – metafa Jun 1 '17 at 9:25

The code has the author's copyright.

You need to get him to either sign a statement putting the source code into the public domain, or you need him to assign the copyright to you.

To put it in the public domain, he needs to write "This code is free to use by anyone. Signed XYZ (the author)."

In all honesty, the chances of some random private individual trying to sue you over a code fragment like this is practically zero. It costs hundreds of dollars in court fees alone just to file a lawsuit. If you have any concerns, just run the code through an obfuscator. This will change the "form of expression" of the code. In copyright law, the violation must be a "copy" of the copyrighted work, meaning have the same form of expression. Once it is obfuscated, it will no longer have the same form of expression so it will be immune to copyright claims.

  • 1
    It's far more common for software copyright to be licensed rather than transferred – Dale M Mar 29 '17 at 19:17
  • 1
    Of course it would - you can use my code but I can use it too is the main advantage of a licence over transfer - if I transfer, I can't use it – Dale M Mar 29 '17 at 20:09
  • 1
    @user2127346 I would just use the code. Run it through a obfuscator. Copyright only applies to code that exactly matches ("form of expression"). So by using an obfuscator the code will no longer match and you are free to use it with no risk. Also, the odds of some random private individual trying to sue you over a public code fragment is zero. – Cicero Jun 1 '17 at 11:18
  • 1
    @user2127346 I have added a paragraph on obfuscation to my answer. If you like my answer will you please upvote it and accept it? – Cicero Jun 1 '17 at 13:47
  • 1
    This answer is incorrect. Putting code through machine translation does not preclude a finding of infringement. It also overstates the degree to which the form of expression must be the same. Especially for software, courts find substantial similarity without literal copying via the abstraction-filtration-comparison test. – K-C Jun 2 '17 at 13:45

Not the answer you're looking for? Browse other questions tagged or ask your own question.