About two years ago I decided to make the framework for Smart Spaces Open Source.
One of the reasons was a somewhate strange situation with a client who – after a project was closed – suddenly started to press on having a contract signed by me with which I would transfer all the copyright of all the work I did for their clients over to them.
Copyright, Freelancers and the Netherlands
In the Netherlands, as a freelancer, you are an independent agent. All the work you create for a client is your Copyright.
The only way to transfer that Copyright is when you sign a contract with a Waiver of Copyright and by transfer on a case by case basis.
As some work was done with a framework I was working on at that time, I said “no”, as that framework was not in the public domain and did not contain any Licence Info. By signing the contract I would (possibly) automatically transfer the Copyright of that work into their hands as well.
For a while the relationship was not funny and the pressure applied did not add up to for what it was worth. There are many ways to assure that:
- I would not abuse the code I wrote for that project
- They (and their client) would not have to fear any claims from me on hind sight
After some heated calls and mails we agreed and we would only transfer the copyright of the work I did for that specific project.
Libraries of awesomeness
When you are like me and create work for a Client as an independent, there are three possible parts:
- Generic stuff – The work you create specifically for the Client and could not care less about afterwards
- Re-usable (awesome) stuff – Some smart and generic solutions you can re-use for other clients
- Your library of (awesome) stuff from past projects – As you move on, more and more tricks have been added to your pouch of wonders
Number 2 and 3 are what makes you more valuable/relevant for your current and future clients. Your re-usable stuff already went through several cycles of improvement and allows you to make several shortcuts that saves you time and allows you to produce better results than when you had to do it from scratch.
To me, this is more important than anything. Including future assignments from one specific client.
Your libraries, agencies, Open Source and Copyright
Bottom line: If you have built libraries of your past awesomeness, written in your own time or re-useable with the consent of your past Client, based on your experience and to be used in future Client projects, consider to make it Open Source.
Any Agency is in principle right to ask you to waiver your copyright for the assignments you do via them.
Not because they have a right to claim your work as their own, but to avoid trouble for their clients in the future.
It will not be the first time that a Freelancer causes a lot of issues later down the line as he or she executes the copyrights on his or her work and claims several thousands of euros or blocks the right to use that software – leading to direct or possible damage for the End Client as whatever commercial endeavor could have started is halted until the issue is solved via the lawyers or a judge – as the End Client (might have) infringed something somewhere.
If and when you make your general purpose Libraries available as Open Source to the Public Domain via one or another license, the work is much more likely to stay yours when you (re) use it in a future project.
Clients who do and do not care about Copyright
Depending on who you work for and what conditions they are used to, you might have two type of assignments:
- Free to use and re-use your own work – One type of client just wants the job done. They assume you are not there to fuck them over afterwards. Whatever you produce is yours and they are completely OK if you (re)use your code. As long as you do it in a way that does not harm them or feels like a backstabbing job.
- Anything you create is theirs – The other type wants to be sure you will not fuck them (or their clients) over and has the standard policy to anyone and everyone to have them (and you) Waiver their Copyright.
What to keep in mind
When you sign a contract as a Freelancer, in which you waiver all your copyright to the Agency (and usually via the Agency to the End Client), the work you produce under that contract and during that project is not yours.
If you want to incorporate what you learned under a contract in which you Wavered your Copyright, refactor the code. Any line you copy and past from the result of such an assignment is you breaking the law and becoming liable for a lawsuit, as the code and the Copyright is no longer yours.
Re-use of a concept is not the same as a copy
Whatever concepts you introduced in a project where you wavered your Copyright, you are completely free to re-use those. (Unless someone ran to the Patent Office and patented your solution).
If you use the existing (Copyrighted by someone else due to contract) code as a starting point in – for instance – an aforementioned Refactoring, you are fine.
If your solution is also to direct strategic benefit for the competitor of your past client and you use the (refactored) code for their benefit, you might not directly breaking a law, but you are threading on thin ice.
Selling a solution Client “A” paid a lot of money for to Client “B” for a lot less, removing the potential advance “A” might have had will piss people off when they discover the link to you.
Apart from that: it is simply not done.