In a related difference of opinion…As a freelance programmer code comes from 3 places. (1) I write it from scratch, (2) I use some OpenSource code with compatible licensing, (3) I use some of my own libraries that are not strictly licensed one way or the other.Whatever code I write is usually going to be “work for hire” and so it will become the property of my client. He or she will have to decide what that means to the general public as in OpenSource or if it’s considered intellectual property.On the other hand, if I included 3rd party licensed software then it’s pretty simple. Everyone has to adhere to the terms of whatever license(s) are written. Just about everything is going to work here. Even the GPL is manageable to a large extent.The real challenge is what about my code library? My intended license is generally “non-exclusive use”, however, my client wanted to be able to decide whether this code could be used or not. I suppose this sort of position could be reasonable but what I object to is that we are separately negotiating pricing; where my pricing is based on doing as little work as possible by stitching together as much 3rd party code as possible.The bottom line…. if you want exclusive rights to some code then it needs to be written for you and you have to pay for the labor. So while it is possible to scope some projects of a certain size. It becomes impossible as the assignment grows.