The Covenant - a New Open Source Strategy
Bruce Perens writes "Lexis Nexis has Open Sourced HPCC, the parallel software that they use for handling extremely large data. Databases that, for example, hold records for every consumer in the U.S. can be processed with this software and its task-specific language. As Strategic Consultant for the company while they decided to participate in Open Source, Open Source co-founder Bruce Perens designed a new Covenant between Lexis Nexis and the Open Source community that makes dual-licensing more fair to the Open Source developer."
I'm online, if you'd like to discuss this story with the source.
The goals of this plan are to capitalize on the innovation and new ideas that come with an Open Source community [...] and collect direct revenue from the product – not just revenue from ancillary products like support and training.
sysadmins and parents of newborns get the same amount of sleep.
the product is to be dual-licensed under the Affero GPL 3.06 and a commercial license. In exchange for each copyright assignment from an Open Source developer, the company will covenant to continue to support and maintain the Open Source version of their product for a period of three years – they won't take it private during that time. The three-year clock will start anew every time there's another copyright contribution. If the company cannot continue to support and maintain the product as Open Source, HPCC systems promises either to contribute the product to a non-profit under permissive licensing like BSD, or to remove the developer's contribution, and all others for which the three-year clock is still running, from the product.
Unnecessarily complicated. If it's already under Affero GPL then people can already build on it-"contributing the product to a non-profit" doesn't add anything to that and there's no reason to assume that people who choose to contribute to a GPL project want to have their code licensed under BSD anyway (and vice versa) - some will be happy with this but others won't. On balance, what's the point?
Hi AC,
Since I did advise Lexis Nexis to use the Affero GPL 3.0, a license of the Free Software Foundation, and they have done so, I think this should not be considered as "dissing free software" :-)
And yes, it really is ironic that GPL can be used to drive commercial development and that people will pay you for the right to not be under the GPL terms. But this is not dissing free software, it's commenting on the economic paths that it creates.
Bruce Perens.
I worked on LX's HPCC project. Good luck to them!
If I were contributor to a dual licensed project, I wouldn't mind having a promise that the product is kept alive and open sourced for 3 years after my latest contribution. I don't know if it's enough to justify copyright assignment, but at least it's an acknowledgement and not a bad one...
Call John 117!
You got the touch!
The three-year clock will start anew every time there's another copyright contribution.
Per product, or per version? How about forks?
What happens to the covenant in a bankruptcy hearing? Bankruptcy judges have relatively free reign... Could it be bad?
If starting anew, isn't it simpler / cleaner to have a non-profit that owns the open source code, and a private for-profit that applies the code? If not starting anew then you've got some pretty confusing balance sheet issues with transferring ownership, in which case the covenant makes sense.
Thus, the Open Source developer is assured that the work won't be taken private for a significant amount of time
Should I care? If version 7.4 is GPL, and they close 7.5 and above, can't I just fork off 7.4 and run it myself aside from any trademark problems?
If a company is planning on taking ye olde version 1.3 and going private with it in just 6 more months, perhaps because they're insane, regardless, wouldn't that encourage them to not accept security patches from the community? Not saying this "enforcement aspect" is good or bad, just saying it "is".
and the continued participation of Open Source developers provides a strong incentive for the company to never take the product private.
What if the management team intends to burn it to the ground to extract maximal profit for one quarter at the cost of permanent long term damage, in other words traditional American management style? Your design assumptions are both sides are perfectly informed, rational, and free actors, but they are not, which likely impacts the outcome.
Through the covenant, their use of dual-licensing, and their innovative software, HPCC Systems will gain broad acceptance of their product and will profit from its software and services.
Agreed, that is the most likely outcome. My criticisms are about using the new covenant in other "unlikely" situations. If everything's balloons and unicorns you don't need to worry about the downside, but if you're going to bother with the paperwork, you should be focusing intensely on the downside because that's when you most need the paperwork... Best case scenario you have a PR win. Worst case scenario is ... better but not entirely perfect either.
"Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
It's written in C++.
... they immediately declare a moratorium on external contributions to source, but otherwise continue business as usual, selling licenses and support contracts for the product. What was gained by Mr. Perens' covenant?
1. kept his or her copyright;
2. granted a dual license right to the company that terminates if the conditions are not respected.
The company still gets to use the code, provided they respect the conditions, and the author has the right to make the same deal with competing projects, rather than see the code "captured" for commercial use by only one project.
The author would also retain the right, at any point, to relicense his or her code under a less restrictive license at some future date (eg: bsd, public domain) if they wish.
What about a "contributor license agreement" that lets the main company release your stuff under a commercial license?
In exchange for each copyright assignment from an Open Source developer, the company will covenant to continue to support and maintain the Open Source version of their product for a period of three years – they won't take it private during that time. The three-year clock will start anew every time there's another copyright contribution.
Now, consider that LN will maintain your modification for you with paid employees, if they accept it. Yes, there is value in that.
Indeed there is, for both parties. But there is a legal asymmetry, since one party actually owns the code, and it's not the coder.
One consequence is how bankruptcy affects ownership, control, and related duties. Exactly how that covenant could be gutted during bankruptcy proceedings is likely to be of considerable interest to any coder who submits to this license. At present, the covenant is silent on the issue of bankruptcy, but includes the text:
"You assign to HPCC Systems all copyright rights, title, and interest to the Source Code."
Unless the contract were to explicitly state that the company entering bankruptcy would immediately cause all rights to revert to the coder, we can expect that the code and copyright will be treated like just another asset. Contract terms limiting disposal of assets can be arbitrarily modified or thrown out by a bankruptcy court and the code rendered immediately closed source by court fiat. Since the copyright has been assigned, the AFPL could be canceled to further boost the disposal value of the asset.
Those who can make you believe absurdities can make you commit atrocities. - Voltaire
In general, companies want to be able to enforce the copyright of the entire product. It is possible that a company could be convinced to join the scheme as you propose it, but the risk and legal load for the company are appreciably higher than what I have proposed, so the company would have to be expecting to get a lot from the community in order to justify that. I'm not sure the balance would work for the company.
Bruce Perens.
Well, I'll discuss with their attorney whether there is a need for a change in terms specific to bankruptcy. But if the company goes bankrupt, they didn't benefit from the Open Source cooperation sufficiently anyway. So, I'm not sure how much we need to flog that horse. It seems unlikely that Oracle is going to pick up such a product in an asset sale and suddenly make a smash hit out of it.
Bruce Perens.
Because it's Lexis Nexis, and they're grade-A, anti-human assholes.
Let's not introduce religious baggage into our communities, OK?
In general, companies want to be able to enforce the copyright of the entire product. It is possible that a company could be convinced to join the scheme as you propose it, but the risk and legal load for the company are appreciably higher than what I have proposed, so the company would have to be expecting to get a lot from the community in order to justify that. I'm not sure the balance would work for the company.
I agree - having multiple dual licensing agreements to maintain and ensure you don't violate any terms would be a nightmare. Since Lexus - Nexus would not own all of the software it would make a sale of the company or rights to the product very complicated.
That said, would it be unreasonable for Lexus - Nexus to grant the developer an unlimited, non-exclusive license to use and resell his or her code? That way, L-N would retain ownership but the original author could still benefit from their contribution. While most code would probably be too specific to really be valuable on it's own, it would avoid the situation where someone creates something that has application elsewhere but now no longer owns it and thus can't use it. While they could use it in another OSS project under terms of the GPL, if they ever decided to commercialize their code in a proprietary manner they conceivably could not due to copyright law.
I'm a consultant - I convert gibberish into cash-flow.
(facepalm) The whole purpose is for the company to have control of all copyrights, that's the only viable way for it to work. From my reading this attempts to balance the needs of the developer. How much incentive will be tested in the marketplace.
RTFA next time, numbnuts.
??? The Novell vs SCO trial should have ended that. You don't need ownership of ALL the copyrights to enforce your own rights. Of course they would still be able to enforce the copyright on the parts of their product to which they have copyright under such a scheme.
And of course, if they don't like it. let them write their own version. If they see dual-licensing something as valid, they should respect that authors have the same right to dual-license their code, instead of outright assignment.
The real motive is code capture. Once they get copyright assignment, they can dual-license it, but nobody else can approach the original author for the same right - their competition is limited to open-source licensing only. Your license proposal, like many code copyright assignments, goes directly against the interests of both the author and the general public, since other businesses won't be as willing to invest in improving code they can't themselves dual-license.
After the last round of FUD from the FSF: FSF Uses Android FUD To Push GPLv3, (debunked here) anyone who asks for copyright assignment and says "trust me" is on my "do not trust further than I can throw/smell/sic my dogs on them" list.
Lobbies are plenty of money to force their interests. Normal people has no power.
That's VERY suspicious, because the vast majority of commercial products out there do NOT have control of all the copyrights used in their products.
The whole "oh we need copyright assignment because otherwise we can't create a viable commercial product" argument is baloney.
Maybe, in their particular case, they can't, because of the aforementioned inability to capture the code so that only they can exploit it commercially (they want a "monopoly" on dual-use licensing). Or maybe they're just over-reaching, just like all the others who demand copyright assignment when the author granting permission to use the code commercially is more than sufficient.
Look around outside the open-source world. Most software that you buy is written by businesses that don't own all the rights to the code - they license various code libraries, data, etc.
People distribute commercial Java products - they certainly don't own all the copyrights to Java. People distribute commercial programs that run under Windows - they certainly don't own all the copyrights to the redistributables that came with their compiler, or the class libraries they licensed from 3rd parties.
Here's a thought - try switching your argument around - "would it be unreasonable for Lexus-Nexus to get a grant from the developer for an unlimited, non-exclusive license to use and resell his or her code?"
Really, what is so "wrong" or "complicated" about that? What's sauce for the goose is sauce for the gander. Why, in the Open Source world, do people suggest we just bend over when someone asks for a copyright assignment? Are we *that* needy of validation that we'll just give it up for the asking?
I agree that licensing your contribution back to you is desirable. I'll include that in the feedback I'm sending them.
Bruce Perens.
I wish I had mod points.
Well... I hope Master Chief John 117 will take care of it.
I think that Free Software is hurt more by having RMS as an advocate than by having Bruce Perens as a detractor.
Also, this objection would be mooted by license-back.
Bruce Perens.
Look around outside the open-source world. Most software that you buy is written by businesses that don't own all the rights to the code - they license various code libraries, data, etc.
People distribute commercial Java products - they certainly don't own all the copyrights to Java. People distribute commercial programs that run under Windows - they certainly don't own all the copyrights to the redistributables that came with their compiler, or the class libraries they licensed from 3rd parties.
True, but in those cases there generally are several distinguishing features from the L-N example:
There is a limited set of licenses that need to be acquired from a small set of companies - not the potential hundreds that would arise from an OSS project - a license would be needed even for a minor bug fix.
The licensed code is often distinct from the original code although it may be distributed with it, whereas L-N would have one main codebase containing almost all of the licensed code.
Here's a thought - try switching your argument around - "would it be unreasonable for Lexus-Nexus to get a grant from the developer for an unlimited, non-exclusive license to use and resell his or her code?"
Really, what is so "wrong" or "complicated" about that? What's sauce for the goose is sauce for the gander. Why, in the Open Source world, do people suggest we just bend over when someone asks for a copyright assignment? Are we *that* needy of validation that we'll just give it up for the asking?
I don't think it is a workable solution - the added burden on L-N to try to manage all the licenses would probably make it easier to forgo open sourcing their codebase. Given two reasonable solutions, one which I think is achievable while the other is not makes me prefer the achievable one.
That's not to say your concept is unreasonable - I just don't think it is practical.
I don't think it's being needy - rather it is an opportunity to create a win-win situation *and* demonstrate that open source can be a viable commercial business model that benefits the community and the company.
Finally, anyone who doesn't like the convent is free to either not participate, or fork the code under the GPL; although in this case I think a fork would be rather useless since the L-N version is likely to be the preferred version.
I'm a consultant - I convert gibberish into cash-flow.
First, it depends on the license-back. If the developer who wrote the code get the right to relicense it to everyone under any terms they wish, including the right to license it for closed-source projects, then what is the difference between that and the developer granting a similar license to the business instead, and not doing a copyright assignment?
If it doesn't contain the full set of rights, then it isn't really a full license back to the developer.
Second, the AGPL prevents the author, if all they got was an AGLP license back, from doing this. It also prevents them from licensing the code to GPLv2-only projects.
So no, it's not mooted by a license-back, unless it's, mutatis mutandis, the exact equivalent to the developer keeping copyright and only assigning the right to dual-license the code to the business.
You still haven't explained why having the developer grant a non-exclusive license to dual-license the code to the business for use in their pooducts is better than assigning copyright.
I can think of several obvious ones why my way is better -
1. it allows the original author to grant similar licenses to other businesses so that they have an incentive to actually use and improve the code;
2. it allows the original author to grant use of the code to GPLv2-only projects;
3. it allows the original author to grant use of the code to non-competing closed-source businesses, rather than giving that right to the business by assigning them the copyright;
4. it eliminates any uncertainty about "if the company doesn't do X by such-and-such a date", goes belly-up, or splits into multiple businesses (only the unit that keeps the product gets the license).
Look at #3 carefully - why should a company that didn't write the code deprive the author of a potential source of revenue? Code can live for a long time (I have code that was written ~20 years ago for DOS that still runs fine on the latest Windows systems with no modifications).
There's no legal impediment to the company just accepting a limited dual-use license grant for their products from the original author. They still have the right to enforce their own copyrights to protect their products.
I agree. I fail to understand the need to assign copyright. Surely the developer can just give HPCC a license to the code which includes the right to relicense the code under any commercial license they wish so long as they continue to support and release an open source version. Call this the HPCC Turkish Delight license and then just say that you are releasing your code under this license instead of GPL/.... By assigning copyright HPCC could use the code in a different, closed source product without compensating the developer in anyway.
Someone else explained that. But I'll give it a try as well. There are no doubt a number of strategies that would be even better for the Open Source developer. The problem with those strategies is: what motivates a company to participate in those strategies? Especially a company that has invested a significant fraction of a Billion on the product, and we have so far invested nothing?
Bruce Perens.
A grant of right to dual-license the code from each contributor means they don't have to get a further license to do a bug fix (and they wouldn't need the permission from each contributor for each mod anyway - only the contributor whose file is being modified).
It's MUCH easier to convey such a license legally than it is to convey copyright - all copyright assignments MUST be in writing, whereas the license grants can be done by email. So, if you have 100 contributors, you only need 100 emails, not 100 written assignments.
Now if you look at things like the redistributables from Microsoft or Apple, there are WAY more than 100 licenses in there, and yet you don't see the problems you allude to. (The h.264 decoders are a good example - over 1,000 licensees, and yet this doesn't cause a problem for either company when they do a bug fix - they don't have to go to each licensor and say "please, pretty please, let me mod this file that you didn't write").
Irrelevant. I'm sure it's not going to all be stuffed in one big source file. (and if they're that stupid, then why are we even discussing this, because in such a case you would know they're already doomed).
As I pointed out above, it's easier to get a license grant than to do a copyright assignment.
The licensed code is often compiled into the binary, rather than loaded in a dynamic library. This doesn't cause any problems for license grants - why would you think it would?
We don't need demonstrations that require us to accede to the law firm of Ben Dover and Phil McCavity. We have plenty of examples of win-win between business and open source. Apple continues to contribute to BSD. Google, Facebook, etc., continue to contribute to Linux. Redhat contributes to a LOT of projects. They're the face of the win-win model, not some obscure company that says "if you don't assign your copyrights to us, then it's not worth it to us."
Like OpenOffice is preferred over LibreOffice? Nah... Let's not forget how EGCS was so successful a fork of a stagnant GCC codebase that eventually it became GCC, or how Firefox was a fork of the Mozilla suite ... vi vs vim, emacs vs xemacs, the many MANY linux distro forks, rogue vs hack vs nethack, XFree86 vs Xorg, SSH vs OpenSSH, AT&T Unix to ... well, you get the point :-)
I'm not buying it, and judging from other people's comments, there are plenty of others who feel the same way
How much they have invested in their product is irrelevant to the question at hand, because the outside code writers have no financial or other interest in Lexus-Nexus. Are they getting shares in the completed product? Some of the revenue stream? No. So who cares about how much or how little L-N has spent so far (and to go further down that line - they've made their money back several times over, so I would put that argument in the "cry me a river of crocodile tears" bucket).
Really, I'm disappointed that you would even think that means anything in this context.
If the code has a perceived value, then they should either:
1. Offer to buy it outright;
2. Offer to take a license to it from the author sufficient to meet their needs, again perhaps with financial compensation to the author, depending on the code and the license terms;
Saying "either assign copyright to us, or we're not interested in your code" is what losers and bullies say. They end up crying to their mommies that nobody wants to play with them.
[flamebait mode=more_than_half_serious]
[/flamebait]
Seriously, who cares? It's not like they're offering to open-source their DATA.
Maybe you should discuss how MySQL operated with Monty. They, purportedly, worked pretty much in the way you propose. It made him very unhappy.
Bruce Perens.
I think you can see why these conditions are necessary. As a potential contributor I would be totally demotivated if I had to hire a lawyer to analyze a covenant before I could sign it -- and even then I would worry about being steamrolled by BigCorp's legal team.
Making a covenant public and stable gives the Open Source community a chance to scrutinize it and declare it fair. This would greatly lessen my distrust of the covenant and increase the chance that I would sign.
Affero GPL does not meet the conditions of the FSF's Free Software definition. In particular, it fails on Freedom 0. A few years ago, they never would have approved this, but they took an uncharacteristically pragmatic turn and decided to ignore their ethics in favor of achieving a result they desired that could not be achieved with Free Software licenses alone.
The basis of the FSF's definitions are their view that it is unethical for one to have a program but not have the ability to use it, study it, and modify it. When the program is on someone else's server, you don't have it, so the ethical issues do not arise. As Stallman once explained:
He's talking about proprietary programs there, but that doesn't make a difference. His point applies to any software running on someone else's server.
Orthogonal on whether this "covenant" is fair or not, will work or not let's consider NexisLexis, a subsidiary of Reed Elsevier. NexisLexis provides a case law database citing adjudicated US court decisions and other legal materials. Think about this for a moment: A US court (taxpayer funded) decides a case, then hands over the results to a private company to sell). What's wrong with this picture? ... Bueller? ... Bueller? ... Anybody? ... These materials should be in the public domain. We, the US taxpayer have already paid for their production. We should NOT have to pay to look at them.
Now, consider Reed Elsevier. Big science publisher. Much of what is published is ... you gussed it: US Taxpayer funded. Have you seen the price of refereed research publications? We have to pay for it again.
In my opinion, NexisLexis and Reed Elsevier are running a scam, nothing more, nothing less. They are selling something they have no rights to in the first place. Their officers and directors should be prosecuted to the fullest extent of the law and the company liquidated. All their assets should be handed over to a public interest outfit for custodial care and free access. ... Just my opinion. Yours may vary.
A billion dollars unhappy I can take ANY day.
Seriously, the people who wrote code in exchange for money for MySQL got more than Lexy-Flexy-Nexy is offering, so they really had no grounds to complain. As for Monty, he ultimately came across as a cry-baby. Nobody forced him to sell to Sun.
No wonder that businesses look at us like we're a bunch of crazies. On the other hand, no wonder businesses think they can pull a "code capture" like this - after all, we're just a bunch of crazies, right?
The more I think about it, the more I believe the F/LOSS movement needs to grow up.
1. Lose the dirty smelly booger-eating neckbeard loons image - for some, that means literally "drop the bong and pick up a bar of soap";
2. Stop being misogynists - or at least have the courtesy to degrade yourself in private; Same with homophobes, racists, gun-nuts, conspiracy theorists, crunchies, fundies, tea-party "nuke-the-AYE-rabs", all-closed-source-is-evil, etc.;
3. Everything is negotiable;
4. Demand quid pro quos from businesses - TANSTAAFL applies to them as well; See Rule # 3.
5. Consider that "one size does not fit all" applies to licenses as much as it does to editors - sometimes the only way to get something funded is to keep it closed for a while, "how long" is always negotiable (see Rule # 3);
6. Either do it for free because YOU want to, or charge full price - make them put their money where their mouth is;
7. Keep in mind that they might respect you if you apply #1 - #6. They certainly won't if you don't.
I'm sure others will come up with more ideas ...
You seriously think we're not being respected when a company takes a project of this value and invites us on board? I've been with their executive committee, and never heard any neckbeard loon stuff from them.
Give the project some time to develop.
Bruce Perens.
We both know who I was referring to as the archetype ;-)
And I'm glad I got a smile out of you - ultimately, I think we both want the same thing, more or less. I just don't believe that we're heading down the right road nowadays ... and it may already be too late to undo the damage done - it seems to have gotten institutionalized to a certain extent.
Why not ask them why they won't respect the authors rights enough to accept just a license grant? Point out their benefits: ..." bit as well as the questions surrounding how it would be monitored and enforced
1. No paperwork needed
2. Keeps the original authors in the loop and engaged
3. Gives the original authors less motivation to fork - even unsuccessful forks cause damage
4. Makes their project more attractive to potential contributors
5. The can get rid of the whole "if in 3 years
6. Doesn't prevent individual authors licensing their code to GPLv2 projects, so less of a disincentive to participate
7. They will receive sufficient rights to legally protect their commercial product.
If you go through the thread, I think you can find a few more benefits.
If they dig their heels in and insist on copyright assignment, then you'll know that it's about code capture and not about creating a relationship among equals. Or you could just point them to this article and ask THEM to respond to the individual criticisms.
If you were the original author, there is some chance that a court would find that any second coding you do would be covered by the original copyright. You certainly wouldn't be able to claim "clean room" non-exposure to the original. And, whether the court would find that or not, that could still be an expensive proposition, if you coded something valuable enough for a post-bankruptcy assignee to decide that your second coding of it was interfering with their profits.
Small chance, you say? You're absolutely right. But OTOH, any company that wouldn't mind you using something that you yourself created the second time shouldn't really mind you using something you created the first time either.
No, I have to agree with the assessment of others that copyright assignment is a non-starter. There is a continuum of potential contributions, but at one end you have small bugfixes that are useless for any other piece of software, so nobody should care who owns the copyright. At the other end, you have major pieces of work that might contain large libraries of independently-useful functions. If you want to attract developers to create and contribute those then you shouldn't limit their ability to reuse their own creations.
Furthermore, if it's merely a license grant rather than a copyright assignment, then the damage that a wayward bankruptcy judge can do (think what happened to Novell's revenue stream in SCO) becomes quite limited.
Um, not really. You now have a large collection of copyright holders to keep satisfied perpetually - not for just three years - and you do indeed have to keep track of them enough to know what work is your own property and what is not. And whose work is what blurs with each additional edit until the ownership of your system is undeterminable. I believe that this would be demotivating for the company.
Well, let's look at the Linux kernel. Certainly there are a lot of folks in the loop and engaged, but even with that project it is very much a revolving door. Developers stay engaged long enough to get their work done and then go on to other things, leaving us to maintain their work. Or leave unintentionally. I knew one who had the entire SCSI subsystem at the time of his passing, and one who had a major filesystem when he was incarcerated. What I am trying to do is engineer a cooperation that works better than the others I know of. A really big problem is taking on the janitorial function, which the community is not able to handle on a volunteer basis. We are really lucky that we get to pay people to do that on Linux, but that is rare. I want to pay those guys reliably. I want to generate income to do that.
Actually, I don't believe that forks cause damage. My experience is otherwise. If the partnership with LN doesn't work, there will be a healthy fork and that is fair. But my experience is that forks happen when the technical folks aren't allowed to do their work, and rarely for any other reason.
Obviously this is something I am trying to balance so that it is sufficiently attractive to contributors while motivating the company.
Look at all of the questions around enforcing the license on the kernel (along with the wild press like on LinuxInsider yesterday.) I think what would happen is that we would trade one set of questions for another. We would definitely trade a 3-year partnership per patch for a forever partnership with legal terms attached and interpreted forever.
I am not yet sure that the prospective developers for this project care at all about contributing to GPL2 projects. At this point I would rather have GPL3 or AGPL3, as I don't want to have Google take my work inside and modify it heavily, never releasing it once, and I don't want to have Tivo marrying it to DRM.
I think we have been OK with having a collective work in Open Source because we want compliance more than we want damages or enforcement. Having multiple owners does reduce the potential to enforce with the prospect of large damages. If you look at what Software Freedom Conservancy wants for a settlement, it's really a token amount, so that they never have to deal with the question of whether their client is the damaged party.
Bruce Perens.
(1) The 3-year clock doesn't reset if HPCC Systems decides not to accept any more contributions under the "Covenant". The Covenant must be signed by both parties to be valid. Once HPCC Systems chooses not to sign any more of them, after 3 years' time, HPCC Systems owns the copyright free-and-clear to every contribution ever made and accepted.
(2) If HPCC Systems decides to take the code private before 3 years elapse, the contributor must actively request their code be removed, and it will only be removed from subsequent versions.
[By the way, the letter seems so carefully written and documented, up until it mentions a 3-year time period before providing an explanation for what it's about. This makes me even more suspicious.]
This is unintelligible.
none
If they're just giving a grant of use, rather than copyright assignment, then the whole "3 years" thing is redundant to keeping both parties engaged.
As for keeping track of whose property is whose, everyone else manages to do it. If they can't, they're not even amateurs, never mind professionals. The same applies to tracking edits, which are derivative works. However, if you look at who you're dealing with, they most certainly CAN track all this - parent company Reed-Elsevier has plenty of experience tracking copyrights in all their paywall and print publication properties, not just LexisNexis.
Reed-Elsevier already generates bundles of $$$ - they've got money to burn. They would have no reason not to pay people to handle license grants as opposed to copyright assignments, especially since the costs would be amortized among all their paywall operations, not just LexisNexis.
The fork won't be able to look for prospects to generate the same revenues by approaching other paywall operators and offering them the same licensing deal. This is what I meant by "code capture." LexisNexis, and by the same token, their parent company, Reed-Elsevier, essentially gets a monopoly on the code even after a fork because funding opportunities dry up.
The company already has the motivation - quality code and code reviews. They operate a LOT of paywalls, so the benefits to them are much more substantial than it first appears, since the cost savings are across their whole system, and not just LexisNexis.
You can't mean that.
No, you really can't mean that.
You want a company to track ownership of their product per character through an ever increasing string of edits.
I get the feeling I'm wasting my time here.
Bruce Perens.
You know very well that any version control system can do that. Heck, a wiki can do that. It's not that hard with derivative works (which is what edits are to existing lines) to track who checked in what. And for all-new code, you just have to look at who did the original check-in. If everyone who checks in code has already signed off on an agreement that any check-in they do is covered by them granting a specific license, what is the problem? Oh, right - this looks like it isn't about tracking code changes and copyright ownership - its about code capture via copyright assignment by throwing up artificial roadblocks to any other sort of arrangement. You're swimming with sharks. BIG sharks, as in $9 Billion sharks.
Please do your research on Reed-Elsevier (the parent company). They track copyright ownership and do rights management for so many of their print and paywall properties that they cannot claim that they don't understand the concept. It's their core business. They understand it well enough to know that they should always try to grab as many rights as they can.
If LexisNexis was giving you a contrary impression, they've yanked your chain good and hard. Here, start on the HPCC TOS page
Who is Reed-Elsevier? Reed-Elsevier is worth over 9 billion.
Their profile
They know how to track this sort of stuff. Really, they have people whose only job is to live and breathe
Yes, but no business person would ever want to torture himself and destroy his business that way. If you don't understand that, I just can't help.
I am signing off of this conversation, further attempts from you will be ignored.
Bruce Perens.
Guess who can't stand the heat and wants to leave the kitchen?
It doesn't work that way, Bruce. You're telling one story here, and I just checked on lwn.com, and you're saying something completely different there there.
http://lwn.net/Articles/458515/
More specifically
And your reply:
Here, you've been arguing that they will only accept contributions if the copyright is assigned to them. On LWN, you gloss over the implications of that, expressed by the poster on LWN, by saying that the developer is free to grant their own work to others. They cannot if they have assigned the copyright to someone else, and you d*** well know that.
This is pretty disgusting behavior on your part.
Copyright law doesn't work that way. Once you assign it to someone else, you don't have the right to make other grants w/o their permission.
So which is it - you "forgot to ask your masters", or "it's not a problem"?
Quoted further down in the thread, for those too lazy to go to lwn, along with a few choice comments as Perens tries to avoid giving a real response to the many legitimate questions that were raised here and on LWN.
Troll much, Perens? Because you really need more practice if you're not going to be caught out so easily.
Since you've bailed on answering the hard questions here let's see how you're misleading people on LWN.
A poster asked you about the implications of assigning copyrights for their code.
More specifically
And your reply:
Of course the covenant doesn't "make you promise not to" - because it doesn't need to. Copyright law "makes you promise not to do so" because doing so would be against the law once you've assigned copyright to someone else (doh!).
Remember, here you've been arguing that they will only accept contributions if the copyright is assigned to them. And worse, you've admitted that you forgot to ask about the author getting a grant-back for other uses. You negotiated with their lawyer, and their lawyer got the better of you. Not much of a surprise there, I guess, after seeing the rest of your responses here and at LWN.
And you're surprised that you're getting raked over the coals for it on both sites? Really? So much so that you have to run away?
Sloppy, half-baked, uninspiring. You come up with all sorts of "excuses" for why LexisNexis and their owner, Reed-Elsevier, the paywall people (you know, the poor poor $9 billion market cap business needs your code to list as a business asset or they'll have big problems!!!OMG!!!), should be trusted, and *need* copyright assignment, such as "they want to be able to list the copyrights as assets" .... gee, maybe we should be as generous to Rupert Murdoch, ya think?
That sounds like a license-back to me. I'll get that clarified.
Bruce Perens.
Read the license, as Perens pointed out in his own posting:
When last I checked, Perens was a licensing professional - and the person who had designed the rules for Open Source licensing.
And your credentials are?
Now if you look at things like the redistributables from Microsoft or Apple, there are WAY more than 100 licenses in there, and yet you don't see the problems you allude to. (The h.264 decoders are a good example - over 1,000 licensees, and yet this doesn't cause a problem for either company when they do a bug fix - they don't have to go to each licensor and say "please, pretty please, let me mod this file that you didn't write").
But if they mod a licensed file then it becomes an issue - which is what they want to avoid and exactly my point; with copyright assignment they don't have that.
We don't need demonstrations that require us to accede to the law firm of Ben Dover and Phil McCavity. We have plenty of examples of win-win between business and open source. Apple continues to contribute to BSD. Google, Facebook, etc., continue to contribute to Linux. Redhat contributes to a LOT of projects. They're the face of the win-win model, not some obscure company that says "if you don't assign your copyrights to us, then it's not worth it to us."
Like OpenOffice is preferred over LibreOffice? Nah... Let's not forget how EGCS was so successful a fork of a stagnant GCC codebase that eventually it became GCC, or how Firefox was a fork of the Mozilla suite ... vi vs vim, emacs vs xemacs, the many MANY linux distro forks, rogue vs hack vs nethack, XFree86 vs Xorg, SSH vs OpenSSH, AT&T Unix to ... well, you get the point :-)
OpenOffice did just fine with copyright assignment until Oracle bought Sun and, with the uncertainty around what they planned to do with it, the developers decided to fork it. Oracle's essentially killed their development of OO which helped LO as well. So, it seems the copyright assignment can work just fine.
As for Apple, BSD has a very different licensing structure - and that there are no viable alternatives to Apple's BSD/OSX combination shows that a well managed, even if it has OS roots, project is preferable to a hodgepodge of OS versions of the same thing.
Even Redhat has copyright assignment requirements for some projects.
Heck, even the FSF requires it.
I'm not buying it, and judging from other people's comments, there are plenty of others who feel the same way. It has nothing to do with Lexus-Nexus, and everything to do with "this doesn't make sense." It's not an anti-business stance - just a "hey, e have no problems with you using it, but you don't own it." Also, what if the original authors wanted to contribute their code to a GPLv2 or BSD project? They can't, since they were stupid enough to lock themselves into the AGPL by assigning their copyrights.
I guess we'll just have to disagree on wether it makes sense. I think it does in this situation, you clearly don't. As for your final comment, my suggestion if licensing back rights to use the code solves that issue while maintaining the goal of one entity to control the copyright.
I'm a consultant - I convert gibberish into cash-flow.
There are plenty of posts pointing out how one-sided and/or vague this "covenant" is, and how hard it will be to actually enforce. He also admits in one reply that their lawyer, not him, wrote the license, which explains a lot.
I can understand his position - after all, it creates a job for him, so he has to advocate for it. But the terms suck.
Unfortunately, we weren't given the whole story here. Over on lwn, Perens was similarly taken to task over the terms, and here's his response:
There are plenty of posts pointing out how one-sided and/or vague this "covenant" is, and how hard it will be to actually enforce. He also admits in one reply that their lawyer, not him, wrote the license, which explains a lot.
I can understand his position - after all, it creates a job for him, so he has to advocate for it. But the terms suck.
Interesting thread - do there also seems to be some support for his position.
As with any contract negotiation (and I've done a few although IANAL) you carve out a set of terms that is agreeable to all sides - no one generally gets everything they want. In this case, L-N has made an offer to the OOS community - which each individual developer can accept or reject.
No one really loses under that model - if they don't like the terms simply don't submit any code modifications. I'd say they'v even gained - they can modify the code for their own use without having to give up the copyright - something not available before.
As I said, an unlimited, non-exclusive irrevocable license to any code they submit allows them the freedom to do what they want to with their own code as well.
I'm a consultant - I convert gibberish into cash-flow.
Most of the community doesn't care about that particular code - we're not running paywalls like parent company Reed-Elsevier, nor are we running a few thousand servers as a data warehouse in the basement to keep the place warm during the winter months. So right now, there's not much incentive to bother.
There's no question about needing to assign copyright
The real problem is, as per the above, that Perens has stated here that you *have* to assign copyright to any code they accept, and that afterward, "you can still use it under the AGPL". Sure, you can modify it "for your own use", and distribute it under the AGPL, but LexisNexis is the only one who can give someone the right to dual-license (or only commercially license) it at that point.
Why do they need a copyright assignment instead of a grant of rights from the coder? Simple - this agreement was written by their lawyers. Whose rights do you think they're looking out for? Perens has also stated, in further response to one of my points, that they want to list all those copyrights as corporate assets. So it's not just about "protecting their product", but also fattening the corporate net worth.
Perens should know that after you assign copyright, you're not really able to do "what you want with it" except for a certain subset of "what you want". Saying you can still modify it is disengenuous. Forget about granting a commercial license to someone else if LexisNexis welches. They have 3 years AFTER you sue them and get a judgment for breech to do anything they want, and you can't do squat.
An additional problem that one poster pointed out on LWN is that not everyone would be happy to see the covenants' anti-compliance provisions triggered and their code being BSD-licensed.
The responses from Perens started off weird and ended in total BS. From "they need all the copyrights to protect their business" to claiming that it would be crazy to expect a company that does copyright management, such as parent company Reed-Elsevier, to track all edits Apparently he's never heard of version control systems.
It's not just Linux that doesn't require copyright assignment. Neither do the BSD folks. Same with the Apache license, the MIT license, etc.
Some people think that slapping "open source" on something will magically attract coders the same as manure attracts flies - it doesn't, but freetards won't accept that.Coders to work on the sort of projects that Perens is proposing cost 6 figures a head.
It takes time to get someone up to speed on the codebase, and even more time before they're able to work without an onerous amount of supervision. It can easily cost between half a million and a million per head over a couple of years, by the time you add in all the extra costs (lost productivity from others supervising, extra reviews, training, losses from those who wash out, etc.) You're not going to find those types of people willing to "give it up" to a lopsided contract drafted by Ben Dover and Phil McCavity for nothing in return except the warm fuzzies.
If Perens can't negotiate a better deal, then maybe he should have asked someone else to do so. Or maybe, like ~99% of the projects out there, it's simply not viable under those conditions.
So change the goals ... the reason to open-source it should be to get other sites exercising the code and
In the case of HPCC's needs, this allows them to continue to own their entire product, and to list their entire product as an asset.
If it is very important that they completely own their product then I think that Open Source is the wrong strategy for them. I very much appreciate what you are trying to do but Open Source is a community effort and the community needs to be the one which owns the project (at least the open source verison of it). I simply would not trust a commercial company with my code. Sorry - HPCC may be very trustworthy but as your original article mentions many others are not (or get taken over, get a new CEO etc.) and giving away copyright is too high a price just because they would like to have some feeling of ownership.
You make some good points. Rather than quote and respond I'll try to highlight what I see as your main point:
1. No one may want to work on the code given the complexity and / or copyright assignment requirements. True, and if that is the case then L-N will gain nothing. There may be, however, companies that would use the code internally and not had ego give anything back, so there is an upside to making it available.
2. Using the code will require highly skilled coders who generally are expensive. True. It remains to be seen if they will find any use for the code. Which also address the "bug fix" and " odd feature" - if it take time to really learn the code what incentive is there to simply do bug fixes unless the code provides some useful benefit for you? As your say, people don't simply migrate to OSS because it is OSS.
3. The agreement was written by L-N's lawyers and favors L-N. Certainly. When my lawyer draws up an agreement I expect it to favor me as well. It's a negotiation starting point. No one is forcing anyone to accept L-N's offer.
4. L-N wants to profit from any additions. No surprise, they are a for - profit company; which is not an evil thing. Even RedHat has an assignment of copy right for some products - they want similar things as L-N in such cases.
5. Assigning the copyright prevents the original author from reusing his or her code. True, which is why I suggested a licensing back to the author unlimited, perpetual rights to use the code he or she contributes.
6. Many projects don't require copyright assignment. Sure. Some do, some don't. Some license allow incorporation of code in proprietary systems, some don't. We get to pick and chose which ones we use. If a particular code base's licensing terms are not agreeable to us we simply can not use the software. No one is under any obligation to use a specific license for their code unless they chose to crept the license.
7. Change the goals. Why? L-N has a set of goals - they will either accomplish them or not. If the rules are too onerous people will not play. It's a simple choice. This is a business decision, not a religious one.
In the end, L-N can chose whatever license they want and people can decide to accept it or not use the code. It's really quite simple. You'd think with the uproar over L-N's terms they were stealing something form somebody. They're not. They simple have put forth an offer that each person can decide if it's worth the cost. Whether or not they "get" open source is irrelevant to how they release their code.
People will argue that it's not "open source" but like any religious argument it is a colossal waste of time.
I'm a consultant - I convert gibberish into cash-flow.
All your points are pretty much dead-on. I think that the reason people are upset is because Perens framed this as a "great opportunity" like it was some sort of step forward in open source licensing, and that the true goals were hidden - in particular, the "they need all the copyrights to protect their product", which is an outright lie (see Novell vs SCO).
That N-L wants to be able to accumulate copyrights so that they can list them as business assets (something else Perens let slip in our arguments) is something that has nothing to do with legally "protecting their product" and everything to do with greed.
Between the FSF FUD last month over how Android is risky because of the GPLv2 and "you should encourage the linux developers to switch to the GPLv3 blah blah blah" and this, I'm sick of the whole GPL mess. So I sat down last night and wrote a first draft of the Respect the Programmer License (RPL). Use the code in any product, no requirements to redistribute, BUT, just like a book, movie, etc, do not alter it. If you want modifications to the file, collaborate with the programmer. Otherwise, write your own shim or wedge to interface between the authors work and your own.
I'm going to start using it on my stuff. It was either that or some variant of the BSD/MIT license because the stench of the freetards is getting to be a bit too much.
Read about another or Peren's ventures, kiloboot, and note the similarities - especially the lie about requiring copyright assignment so they can sell a commercial license.
Perens knows that copyright assignment isn't required to produce a commercial product. The licensing of busybox to manufacturers should have made that point clear. He's not only aware of it (as the original author) - he even makes reverence to it in the discussion. So, why the lies?
Greed? Desperation? Lust for power? Stupidity? Pride? Entitlement? Or, to quote him from lwn, "It was the best deal I could get."
Come clean, Bruce. You've been pushing this sort of one-sided licensing scheme/scam for almost 4 years according to the wayback machine. You owe everyone, if not an apology, at least an explanation.
This is not going to go away. You wanted the attention for your "covenant" - you've got it.
Bruce claims that MySQL never too outside contributions and this was discussed in the EU.
This was not true.
There was some claims to the EU that MySQL AB did not take outside contributions but this was dismissed by me and others.
MySQL Ab did during it's whole lifetime taken outside contributions; There is a lot of bug fixes, ports, security enhancements and features developed by people outside of MySQL Ab. Most of the infrastructure (like connectors) where developed by outside contributors. It's true that when we did get more money, we did hire the best contributors, but that was not a strategy but something that is likely to happen with any successful project that gets money to hire developers.
During 2001 - 2006 we did not take as many contributions as we could have done because MySQL Ab did not have a community department or anyone responsible for handling patches (this was a management decision to save money, not something that was based on any legal advice).
A database is a complex project and it's true that we did not get as many contributions for the server as some other projects. This did however having nothing to do with any 'legal advice' or policy.
Apart from that I think Bruce's suggestion about a new policy is interesting and have some interesting benefits for developers.
One flaw with it is however that there is still a lot of possibility for misuse when used for a project that is just starting.
One should remember that for any big project it takes usually 5-10 years for the project to be a commercial success. If the company now only have to wait 3 more years to be able to close up the product and make it 'theirs', companies will be inclined to do that sooner or later if there is a lot of money to win.
A way to fix this would be to say that after 3 years all current code in the project will revert to BSD. This would ensure that the company can never close up the project from the developers (if they would try, they developers can just wait for the code to be BSD to continue as before). This clause should be required for any project that uses the AGPL license, as project using this license can't be freely used by the original contributors to the project.