August'24: Kamaelia is in maintenance mode and will recieve periodic updates, about twice a year, primarily targeted around Python 3 and ecosystem compatibility. PRs are always welcome. Latest Release: 1.14.32 (2024/3/24)
What License do contributors grant the Kamaelia project (ie
the BBC)?
You're granting a BSD license on your code to us.
What does that mean for my copyright?
It means you retain copyright, you're just letting us use your
code.
Anything else?
You're also granting us the ability to redistribute your code under the
usual Kamaelia licensing terms - ie the MPL/GPL/LGPL
Why? How does that benefit me?
It means that the MPL/GPL/LGPL license itself originates from the BBC.
This means that if the license is breached, the BBC would be the one to
go after whomever breached the license. The BBC has a long history of
dealing with copyright infringement - normally sympathetically
- after all most of the time much copyright infringement is based on
misunderstandings rather than malice.
You also retain full copyright over your code - this is different from
some other projects which require copyright assignment.
How does this benefit the project?
This means that we don't have any uncertainty - we know we can use your
code. This is the usual deal - an open source license means that you
know you can use our code, so this is the same idea really.
Beyond this, it also means that if there was ever a need to change the
license (for example an overwhelming majority of Kamaelia contributors
said it was a good idea with a very good reason for change), then this
could be done, even if we could not contact all contributors (assuming
something compatible with the BSD license). Such a change would not be
done lightly, and isn't even vaguely likely. But having this as an
option is very useful in the unlikely scenario it became a good
idea.
Is your approach based on anyone else's?
Yes. It's based on looking at the FSF's, Sun's and the Python Software
Foundations. Out of these, the Python Software Foundations looked the
clearest language and therefore simplest to work from, whilst still
being sufficiently rigourous.
Are there any risks?
This depends on your view of whether the following is a risk. By
granting a BSD license, this allows the BBC to relicense the code to
(say) a set top box manufacturer for a fee, in exchange for not having
to release the code. This is not even vaguely likely, but it's worth
mentioning as a risk. Now, whether you view it as a risk is debateable -
after all, the fee would be going back to the BBC, which means it would
actually mean it would be assisting (effectively) BBC programme making -
which is of benefit to all. As a result, unlike the usual case of dual
licensing benefitting a private party, if it happened it provides a
public benefit. Whether you view that as a risk therefore depends on the
individual. So far, no one has viewed this as a major or likely
risk.
How do I apply a contributor agreement to code?
You'll be allocated a tag, and you just add the phrase: Licensed to
the BBC under a Contributor Agreement: tag to the
code you wish to contribute. As a result it's a concious act over each
specific piece of code, rather than carte blanche.
Did you check this with anyone?
Yes, we discussed this approach at length with BBC legal over the course
of 3 months.
Why is the system paper based?
Because it's just sooooo much simpler in practice, than all the
implications of an electronic system. For example, it's very easy to not
leak personal details if they're not stored electronically!
I don't want to sign your agreement, do I have an
alternative?
Yes - of course. There are (at least) four other options:
And, yes, we'll still help you where we can (within reason :), even
if you choose option 4 - we're interested in pushing the project
forward, and helping you helps do that - benefitting
all of us.
Is this legal advice?
No! It's a FAQ. If you have any concerns about what's raised here,
please seek independent advice as well as chat to us. This is not
however legal advice, just my best understanding of the situation &
implications of the approach we're taking.
Where can I ask more questions?
Get in contact on the Kamaelia
list.
This page refers to the Sample
Contributor Agreement, as linked to from the how to contribute page