Well, its obvious to anyone that your coworker is in fact using Csla. If it were to ever end up in court, I think the court would agree that he's violated the copyright.
From what I understand of copyright, you can't take someones book and just change the name of all the characters and some of the dialog, but you can write your own story from scratch which has a similar theme..so anyone can write a love story, but if its 90% identical to Romeo & Juliet, you're in trouble.
As is previously stated, Rocky is the best person to answer this question but I will try and help to the best of my understanding.
As I understand it you can take and modify CSLA to use in personal, internal and commercial apps as long as it, or derivative works, are not sold as a commercial framework. So making a commercial accounting package that uses it (even if everything is renamed) is OK, making a commercial framework product that extends/renames parts of it is not.
Now as far as the renaming thing goes, he is definitely using a derivative work. Saying that it is "not using" CSLA is certainly trying to split some pretty fine hairs that don't agree with the license. If you look at section 1 Rocky claims ownership of the framework and section 3 gives users a limited right to use it, which the developer in question has done. No where does Rocky assign ownership of his intellectual property simply if someone creates a derivative work. In fact, several sections make it quite clear that the license itself still does apply to derivative works and no assignment of ownership is made (see sections such 6 and 12). By looking at section 9, the only thing your friend really owns are the names and logic he changed (such as the name DataGatewayEventArgs), but not the base software itself.
If the source code is going anywhere (including being passed around internally in your company) you are technically falling under section 4. That is, he better be including license.txt inside your source control so it is identified as a derivative CSLA work to others in the company when they get it. He is, in fact, using a derivative of CSLA that still has all the restrictions of the original license.
So from your description the company may or may not be in the clear depending on if that license.txt file is being honored and included with the source code wherever it is copied. If not, your company could loose all rights to use it (section 10).
If the developer is trying to take credit for the derivative work as his own original work then I would have to say that person probably is in violation of the agreement and has some ethical and professional challenges that may end up being a liability for the company in other ways too. I know I would have some issues if I found out one of my developers was doing something of that nature. But of course I don't know a lot about the situation except from what I can glean from your posting. Take what I say with several grains of salt.
Nothing in this message should be taken or relied upon as legal advice. Consult your company's legal staff.
Thanks,
Kevin
Des,
There are a couple of problems. First and foremost he is claiming original authorship and thus copyright for his company. I don't think what he did even is a derivative work, that's being generous. That is, changing some names does not make it different enough from the original to be considered a new work. But even if we do consider is a derivative work, the only part the deriver holds copyright on are the parts changed.
Second the license.txt file has to be distributed with the source code if it is an external or an internal distribution, that was the agreement made when deciding to use CSLA. The license file does not specify external and not internal for good reason. It isn't hard to imagine a scenario where employee A uses CSLA and distributes the source code of his application to employee B without license.txt if it is not required and unconsciously not mentioning the fact that he modified an existing framework and used it (or employee B forgets that he mentioned that). At a later date employee A has left the company and employee B brings up to his bosses a great idea about selling the framework employee A had made while with the company. Who would know?
Thanks,
Kevin
The license really only requires a couple things. First, you can't use it to create a framework. Second, if you use it or derive from it you need to retain the copyright/license information.
Nothing prevents someone from renaming everything - though that seems silly. But people frequently rename the namespace to get it to fit into their standards, and that makes a lot of sense.
If, in fact, CSLA is being used to create a framework, then you need to contact me directly to see if we can work out a licensing agreement that works for both you and me. Otherwise it is true that you are on very shaky legal ground.
If part or all of CSLA is being used to do pretty much anything other than creating a framework, then you should be in good shape - though the copyright/license info should remain intact.
Not knowing the specifics of what you've observed it is impossible for me to say whether this is good or bad. It sounds like you have an unethical developer on your staff, which is very sad, and should be cause for serious concern having nothing to do with CSLA. But in any case, I do suggest that you take steps to ensure you aren't in violation of the license, because that could obviously have negative consequences.
Again, if you are building a framework please email me directly and we can go from there.
ladenedge:As for the framework clause, I guess it might be important to find out how much the license intends 'framework' to cover. While I would not say we are developing any sort of framework at the moment, there is some potential for this codebase to be used in a "framework" sometime later. Without getting too specific, we are a storage company and the extent of the current development effort would eventually be something like a "foundation" for intellgent storage.
It would not be, however, purely a software develop framework and it certainly wouldn't compete with CSLA in any sense. I take this to be the intent of the license. If I'm off or if what I've said leads you to think there might be potential for infringement, please do let me know - I'd be happy to have someone better versed in our roadmap get in touch with you!
You are correct, restricting creation of a "framework" is intended to prevent someone from reselling CSLA, selling something that is fundamentally CSLA or selling tools entirely based around using CSLA for software development. I reserve those rights specifically in case I choose to make a commercial version of CSLA, along with a related set of tooling, at some point in the future. (don't worry, I have no plans for that at the moment )
If your "framework" is somethink like an industry vertical, where you aren't selling a general development framework, but rather a framework to help create CRM, accounting or whatever type systems, then that is outside the restriction of the license.
Copyright (c) Marimer LLC