This article is about the Harmony licence agreement for custom software. However, it also applies to that outsourced photo shoot or manuals, for example. The Harmony licence agreement is of great value to SMEs. Both client and contractor need clarity. If you do nothing then standard copyright applies and that is usually not desirable. If expectations do not mutually agree then that is asking for legal problems. How can you agree on things in an easy way? Harmony!
The below approach based on the so-called ‘Harmony CLA’ (Contributor License Agreement) will be a welcome solution for many organisations. Meanwhile, I have also received some legal responses and they are positive. We apply it ourselves as a standard within our organisations as it is the egg of Columbus for many things.
Table of Contents
Beer mat? Or legally seal it up?
This is immediately the dilemma for smaller companies. Agreeing nothing at all – no licence agreement – is a bad idea. However, verbal agreements are also a bad idea – experience with DHL illustrates how this can derail considerably. Two extremes then remain: A signature on a beer mat or a contract of endless pages. Companies will particularly fall over the prices and incomprehensibility of packages of paper. Independent programmers and small businesses won’t even consider it. So we are looking for a model, an example, of a licence agreement that is in between and is understandable, clear and short and also does not cause any additional cost burden. Apart from that, the question is what is actually mutually desirable…
Mutual wishes
Perhaps this is the most complex issue because so many variations of wishes and expectations are possible – the reason to hire a good lawyer. Hence the limitation to one variation. The interests seem hugely conflicting, but read on to see how this is elegantly resolved.
What does the developer want?
- The software developer does not want to be hindered because he no longer holds the copyright.
- The developer does want to licence the software to the client on the condition that the developer’s copyright remains unchanged.
What does the client want?
- The client wants to be able to do anything with the software he gets, like change it, make money with it, license it to his customers in complete freedom.
- The client does not want to infringe the developer’s copyright but also does not want the developer to be at his doorstep on a bad day to collect royalties.
Wow! That seems tricky. The bottom line is that the developer has and keeps full copyright and the licensee can do anything he wants. It seems diametrically opposed but someone has thought about that before….
Harmony CLA
Canonical – responsible for Ubuntu-Linux, among other things – introduced the so-called ‘Harmony Contributor License Agreement’ – stemming from ‘Project Harmony’ – in 2010.
The big difference from before is that copyright is no longer transferred to the client. Instead, the client is given freedoms, such as being allowed to customise and deploy themselves, without curtailing the developer.
This makes the Harmony CLA extremely attractive and widely applicable to both free software (open-source) and closed-source software. By safeguarding the interests of both the client and the developer, it is a sympathetic agreement.
Moreover, the length of the legal text is limited and reasonably easy to read.
How strange is the law and legal procedure? There was once a restaurant owner who had a wall decorated by an artist, for a fee. Without realising it, the artist thereby acquired rights to the artwork. When he demolished the wall many years later, he had destroyed the artwork, to which he had no rights. It became a court case and the restaurant owner lost. A good agreement could have prevented a lot of trouble.
In the chain
Chances are you are reading this article because you are a developer or a client. I am both and therefore start with that example – not out of immodesty.
- Client A wants to commission something from me (B). I then outsource some of that work to developer C. That makes me (B) both a client and a developer. The interests of client A and developer C thus match those of B.
- As client A, it is interesting to present developer B with a Harmony CLA.
- As developer B and C, it is worth considering proactively offering the client a Harmony CLA or pointing out that this is how you want to do business.
Getting started
Go to https://harmonyagreements.org/ and select ‘Agreement Selector’. This is an example:

There is a supplement to the text at https://www.harmonyagreements.org/guide.html. It may also make sense to run a generated CLA through a translation service, ‘mediocre translation’ sometimes reads easier than ‘Legalese English’ 😉
Considerations
- Consider working with CLAs on a project-by-project basis.
- The disadvantage is more complex administration.
- Bear in mind that ‘developer’ is more generally a ‘provider of information’ thus covering photography, illustrations and manuals.
- Separate custom software from shrink-wrap software – Out Of The Box, OOTB software.
- For OOTB solutions, you probably don’t want to use a Harmony CLA and you do want to use a standard End User License Agreement (EULA).