Some background: Brian Connolly, co-founder of the Literati Group, had paid Mambo developer Emir Sakic to customize Mambo OS (in this instance, OS stands for open source, because there is a closed-source version of Mambo called Mambo CMS) to look like a newspaper. Part of this customization involved Sakic coding a text block for the front page that would span the usual two-column news listing. This lead story block involved little more than a colspan HTML attribute inside of an otherwise standard table cell element and a few lines of associated code to make it look somewhat different.
Connolly believed that this customization was a proprietary one. Since his contract with Sakic (which Sakic says was never signed; Connolly refused to provide NewsForge with a copy of the alleged contract) stipulated that all copyrights would be assigned to Furthermore, Inc., he figured that he would be able to further protect what he refers to as his "invention."
Unfortunately, this invention is neither unique nor new. Many other content management systems have this functionality and have been using it for some time -- some are proprietary, such as the BBC News Web site, and some are free software, such as Slash, which has an extensibility that allows a "lead story block" function.
The red herring
When Connolly first put up his Furthermore demo site, he noticed that his server logs showed that a perceived competitor had downloaded about 20MB worth of data from his site. Connolly immediately interpreted this as wholesale code theft when, in fact, he had no reason to believe that any theft had taken place. The competitor was in the process of designing a site around Mambo OS and, like Furthermore, also employed the lead story block. NewsForge contacted this competitor and found him to be extremely upset over Connolly's threats; the competitor insisted that we not use the name or any details about their company in this story, but vehemently denied that any sort of code theft took place.
Mambo uses the PHP extension for the files that contain code, and that code is never published to a Web page; instead it is rendered by the server and turned into HTML, which in turn is rendered by the browser to show you a Web site. If you want to view the HTML code, you can easily do so by selecting the View Source option. Since the viewer never sees what's in the PHP files and cannot access them directly without special access to the Web site, it would be impossible for anyone to download Connolly's code without root or direct FTP access to the site.
Someone could, however, legally save the HTML to their hard drive and attempt to reverse-engineer the code back to usable PHP. This is a lot like trying to design the machines that manufacture automobile parts by examining a finished car. Alternatively someone could make the site static by using the viewable HTML.
Copyright infringement or code theft?
Dan Ravicher of Open Source Risk Management told NewsForge that there is a distinct difference between copyright infringement and code theft. Connolly claims that this situation involves both.
It would seem to be a fairly clear-cut case if you only see Connolly's side of the story. But the code committed to the Mambo OS project was not the same code that Sakic wrote for Furthermore. The Furthermore code was nine lines of hardcoded HTML, according to Sakic; it did not have to be dynamically generated because Furthermore is not designed to be theme-able. Mambo, on the other hand, is designed to be fully customizable. So a month later, in October 2003, Emir Sakic developed a way to do the same thing dynamically and committed it to the Mambo core.
Sakic's mistake was not in developing and distributing a derivative work of the code he wrote for Connolly, but in emailing Connolly to tell him what he'd done, with the facetious comment, "Hope you don't mind" tacked on to the end. This is where the trouble started, yet no illegal act had been committed.
Code was not stolen verbatim -- all parties agree on this matter -- and it clearly was not an act of malice on anyone's part. Therefore, according to Ravicher's definition, this contribution was not code theft in the legal sense.
Copyright infringement is a broader term and would seem to be a better fit for this situation; after all, the contract called for all copyrights to be assigned to Furthermore, Inc. But the code was a derivative of GPL-licensed code, thereby making it a derivative work of the parent code and automatically licensing it under the GNU General Public License.
Connolly claims that since he is the copyright holder of the original code that he can prohibit redistribution of a derivative work of that code even though it's all licensed under the GPL. Eben Moglen, counsel for the Free Software Foundation and Columbia University law professor, wrote an article called "Enforcing the GPL, Part I" in August 2001 in which he wrote:
Copyright grants publishers power to forbid users to exercise rights to copy, modify, and distribute that we believe all users should have; the GPL thus relaxes almost all the restrictions of the copyright system. The only thing we absolutely require is that anyone distributing GPL'd works or works made from GPL'd works distribute in turn under GPL. That condition is a very minor restriction, from the copyright point of view.
So because the code falls under the jurisdiction of the GPL, no one can place any restrictions on redistribution, including the copyright holder. This means that even if it could be definitively said that Sakic created a derivative work of the code that he'd written for Furthermore, Connolly has no legal recourse for preventing its distribution or use.
Just to make sure, we also asked Open Source Initiative attorney Larry Rosen, author of the new volume Open Source Licensing: Software Freedom and Intellectual Property Law, about this point of legal trivia.
"By definition, all software released under the GPL means that one can assume the work may be copied, distributed, or otherwise modified by any other user," Rosen said. "The creator can't 'GPL' something and then turn around and say, 'I really didn't intend this to be used any other way.' That makes no sense."
Mambo users are safe
After having argued on the Mambers message forums with developers and members of the Mambo community and seeing that no progress could be made, Connolly decided to move the issue to a larger venue. His final method of defending what he perceived to be his invention and property was to put up a Web site telling his half of the story and threatening to sue some of the approximately 5 million Mambo OS end-users. To better accomplish his goal, Connolly contacted SCO Group spokesman Blake Stowell and, during the course of a five to 10-minute phone conversation, obtained media contacts that Stowell thought would be helpful to Connolly's situation.
Nothing can stop Connolly from making good on his public threats to sue innocent end-users -- anyone can file a lawsuit for any reason -- but the legal basis for such action is nonexistent. Larry Rosen told us that he "could not imagine any court issuing a judgment against any user of software released under the GPL, as long as the user abides by the rules of the license."
Code comparison
It has already been established that all code in question is under the GPL and may be freely used, distributed, or modified. But as a further testament to the fact that the lead story block code in Mambo OS is distinctly different from that which powers Furthermore, we've prepared a brief code comparison. (Click on the below images to enlarge them)
|
In the left-hand photo you'll see the table that contains the front page stories in Furthermore. On the right, the equivalent code as obtained from the MamboForge online demo and configured to use the lead story option. This is not the originating PHP, but the resultant HTML that both sites generate. Brian Connolly refused to provide us with the Furthermore front page code and Emir Sakic refused to tell us where in the Mambo code his contribution was. Although we're reasonably sure we found the correct PHP in a Mambo file called content.php, we have nothing to compare it to. The HTML that is rendered by that PHP is a reliable basis for comparison, however, and it can be freely viewed by anyone through a standard Web browser. For this example, we've removed unnecessary white space and copied the content from the demo code to the Furthermore code so that you can better see the exact differences in how they are rendered. It should additionally be noted that Furthermore is not proprietary -- it is merely a customized version of an earlier version of Mambo OS, so there will be some inherent and unavoidable similarities.
The Mambo code is much cleaner; more of the presentation elements have been relegated to an external cascading style sheet, and in accordance with HTML 4.01 standards, the code tags are all in lowercase. It also uses a span tag to separate the author text style from the date text style. The Furthermore code uses div tags around the content and employs the deprecated font tag in the main content cell, whereas the Mambo code puts all font specifications into the style sheet. The primary operator here is the colspan="2" attribute, which turns a two-column table into a single-column for the specified row, thus producing one story with two below it. There really isn't any other way to code the colspan attribute without using separate tables, which is a far less elegant solution. Although we did not ask any copyright experts about colspan="2", there does not appear to be a legal basis for claiming a copyright on it.
That's the lead story block, and as you can see, there isn't much to it. Although Emir Sakic said it was nine lines of code, only one of them really made the magic happen.
Connolly admits that he has not compared the code for himself, or even looked at the Mambo code to verify that it contains code developed specifically for Furthermore. Brian Connolly told NewsForge that he "could tell just by looking at their site," meaning how the supposedly offending Mambo Web sites that employ the lead story block appear in his Web browser. Neither did Connolly commission any third party experts to compare code directly.
Conclusions
The Connolly/Mambo situation boils down to one man not doing enough research into the licensing details of the GNU General Public License, then taking his case to public message forums instead of private communication with the project leadership and eventually resorting to threatening uninvolved people with litigation.
The problem all along has not been that Connolly was violently seeking revenge, but that he'd made several erroneous assumptions about a wide variety of things, then used those assumptions to unintentionally mislead people. He spoke with Rosen of OSI, Weathersby of the OSSI, Stowell of SCO, and a few other unnamed sources who gave Connolly good advice. The problem is, he told them the wrong story.
No code was stolen or taken; rather two separate modifications were made to the same GPL code to accomplish the same very basic and common task in two very different ways.
Connolly told us that this would not be resolved in the media, but his actions paint a portrait of a man who tried very hard to gain support from the press and free software community. Based on his statements alone, he appears to be the victim rather than the aggressor, but the facts say that Brian Connolly is the victim not of code theft or copyright infringement, but of his own reluctance to perform due diligence in going forward with public threats before gathering evidence to prove his case.
This is hopefully the end of this story, but it also marks the second time that the boy has cried wolf in the press (the first being SCO). Each time a false code theft or copyright infringement claim is publicly made against free software, the patience and understanding of the community wanes. Companies like SCO and Furthermore, Inc. make it more difficult for genuine code theft and copyright infringement claims to be made by people who have checked their facts and gathered reliable evidence.
Jem Matzan is the author of three books and the editor-in-chief of The Jem Report.
Note: Comments are owned by the poster. We are not responsible for their content.
Connolly claims that since he is the copyright holder of the original code that he can prohibit redistribution of a derivative work of that code even though it's all licensed under the GPL.
He cannot prohibit redistribution, but he can prohibit distribution. The question is: did him distribute it himself? If he did, then he is in violation of the GPL. If he didn't, then the one who did is in violation of Connolly's copyrights.
Please, refer to the GPL FAQ:
<A HREF="http://www.gnu.org/licenses/gpl-faq.html#StolenCopy" title="gnu.org">
stolen copy
</a gnu.org>
<A HREF="http://www.gnu.org/licenses/gpl-faq.html#UnreleasedMods" title="gnu.org">
unreleased modifications
</a gnu.org>
The most important question, and only few people seems to be asking, is: "did Connolly distribuite its version of Mambo by any means?". And by "any means" includes: "binary form", "did he installed in his client's host?". If he did, and only if he did the modifications are GPL. If he distribuited it in binary form only, then he is in violation of the GPL
Also, comparing the outputed HTML code looks a little meaningless for me.
Of course: IANAL
Of course, besides the question - "did Connolly distributed the code himself?" -, there is also the most essential question: "Was anything taken form Connolly?". But this is just what Connolly claims himself.
If the author wanted to state that nothing was taken from Connolly, he should do so the same way you did on your comment! Instead, he cites some completely out of context Eben Moglen's quote.
The article should just say nothing was taken from Connolly. But instead, it says:
Sakic's mistake was not in developing and distributing a derivative work of the code he wrote for Connolly, but in emailing Connolly to tell him what he'd done, (...)
Because of the above quote, I cited the GPL FAQ. The above states that Sakic distributed some code he did not own (as far as I understand). If this was not what happened, this is completely missleading!
Not so. You have a mistaken belief that modifications automatically become GPLed due to some mysterious force. The GPL is a license, which means that it grants extra rights to people if they follow its stipulations. It is not a signed contract, so it cannot force any code to become GPLed.
So, when the GPL says that any redistribution of a derivative work must be done under the GPL, this doesn't mean that the derivative code is forced to become GPLed by the GPL, this means that the GPL witholds its grant of redistribution privileges to those that try to distribute a derivative work that is not wholly GPLed -- making such a distribution a violation of copyright.
That is the GPL's only power -- to withold its extra rights from those that don't follow its stipulations. It has no power to transform anyone else's code into GPLed code. Only the copyright holder has the power to do that.
Quoting Dan Ravicher:
"I'd also note a very stark difference between code theft and copyright infringement. The former connotes an intentional act of taking from another with malicious intent. That's a very very serious charge to
make against another and one should be darn sure to have evidence to support such a claim before making it. Copyright infringement is a much broader category of behavior that can include actors who had entirely good faith intentions to respect the rights of another, despite in the end not succeeding in that aim."
-Jem
By breaking wind and announcing to the world that he just farted, perhaps Brian is hoping that Microsoft will slide some moola his way via a Baystar connection, too???
<nobr> <wbr></nobr>;-)
precisely my thought when i first heard about his ridiculous rantings. it seemed like he was talking way too loud, hoping microsoft would overhear him.
yeah, this douchebag was hyperactively obnoxious on the UserLinux mailing list too, when he didn't get his way on some marketing issues. i checked out his <A HREF="http://literatigroup.com/webstation/www/index.pl" title="literatigroup.com">"literati group" website</a literatigroup.com> at the time, and it was just so over-the-top - totally electro-plated with a 24-carat pomposity...
but hey, the guy appears to make his living spreading bullshit, so i guess no one should be surprised by his actions.
This alone gives doubt to the claims Connolly has made. Properly such a comparison would be done before pushing claims.
This is completely false. There is no such thing as automatic licensing with the GPL. The GPL is a license. It gives additional rights to users above and beyond what copyright gives. It is not a contract, and cannot force anyone to do anything with their own copyrighted work. It simply stipulates under what conditions its additional rights are granted.
In the case of some code being created in combination with a GPLed codebase, the new code is copyrighted by either the person coding it or the person who contracted to own the work of the person doing the coding. This new code is not GPLed unless the copyright holder GPLs it.
If someone else were to take that combined code and distribute it, they would be in violation of several copyrights -- the copyright of the new code (which had not released the code under the GPL) and the copyright(s) of the GPLed source (which does not authorize copying when combined with non-GPLed code).
If the copyright holder of the new code were to distribute the combined code with either the GPL license notices removed or with the new code clearly marked as not falling under the GPL, that distribution would be in violation of the copyright(s) of the GPLed codebase. At no point in time would the code magically turn into GPLed code just because it was touching GPLed code. The copyright holder must release their code under the GPL for it to become effective.
A license is a contract between the creator / marketer / distributor of a product to the user of that product. That's why it's called a license agreement.
I am not sure what form of crack that you are smoking, but you should try to understand law a little more before offering opinion. I do software for a living and deal with both licensing and derivative works based on original source.
A license agreement creates a contractual bond that can supercede copyright - just as most work-for-hire contract to develop custom software do. However, unless that contract specifically removes the right of the author (developer) of the code to exercise his copyright privileges, the author owns one-half right to the code itself, even though he was paid to produce this. This went to the Supreme Court for this decision. Oddly, the precedent-setting decision was over a sculpture, not a piece of code.
But you know what? Copyright isn't even the issue here.
If you hire me to write some code for you and I sign a contract that assigns my copyright to you, and then I go and re-write (from scratch) the same concept with new code, I am not guilty of copyright infringement. You see, copyright covers content, not ideas or methods. Patents cover ideas and methods. Look at Amazon and the "one-click checkout". That's a patent, not a copyright that they used to prevent other web-sites from using the technology. If Mr. Connally can prove that he was the first to conceive of the idea for the colspan="2" when used with headlines, and he is able to obtain a patent for that concept, then he will be allowed to take all the other websites down or make them pay royalties to him should they wish to use his creation.
Somehow, I doubt that this will happen. In the meantime, he will try to be the SCO of Content Management Systems.
A license is a contract between the creator / marketer / distributor of a product to the user of that product. That's why it's called a license agreement.
No, the GPL is a license, just as it says it is. You're thinking of things like a shrinkwrap license agreement which is a contract because they wrote it as one and they (think they can) force you to agree to it in order to use the software. They call it a license agreement because they are contracting with you to license their product rather than own it, and agreeing to such a license agreement signs away your rights under copyright. There is a huge difference between a license agreement that is written into a contract and a license. The GPL is the latter, not the former.
Here is some reading for you that will hopefully help you to understand the error of your thinking:
I am not sure what form of crack that you are smoking, but you should try to understand law a little more before offering opinion.
Since what I said is true and you have offered nothing to refute it (other than trying to say that the GPL is contract when it is not), I see no reason to change what I said. Perhaps if you weren't so hasty to throw zingers around and insult people you would stop and consider what I wrote and either (1) come to realize what I wrote is true, or (2) show me, using logic, how what I wrote misses the mark.
(I have no comment on the rest of your message about what the real issue is in this case because that is outside the scope of what I was commenting on in my message -- I was merely refuting one mistake made by the author and was not commenting on the validity of the conclusion or the other issues of the case.)
No. A license agreement (of the kind that we are talking about here) is a part of a contract because it is written to be one. "Agreeing" with a license doesn't turn it into it a contract. Calling a shrinkwrap contract a license is actually a bit of misnomer.
The license involed in a shrinkwrap "license agreement" involves a contract with the software creator to license their software rather than purchase it. In this case, since you didn't buy the software (nor receive a legal free copy), you have no rights to use it, thus a license is needed just to give you the right to run it.
In the GPL case, the license only comes into effect when you received the software (because a copy was involved) and might come into effect again if you choose to make a copy of it again. To just use the software doesn't involve the GPL at all -- since you received a legal copy, you have the right to use it based on copyright. Modifying some GPLed software is actually allowed by both copyright and the GPL (the GPL only needs to talk about modifications because it makes stipulations based on whether the software was modified or not).
Copyright isn't even the issue here.
If you hire me to write some code for you and I sign a contract that assigns my copyright to you, and then I go and re-write (from scratch) the same concept with new code, I am not guilty of copyright infringement. You see, copyright covers content, not ideas or methods. Patents cover ideas and methods. Look at Amazon and the "one-click checkout". That's a patent, not a copyright that they used to prevent other web-sites from using the technology.
If Mr. Connally can prove that he was the first to conceive of the idea for the colspan="2" when used with headlines, and he is able to obtain a patent for that concept, then he will be allowed to take all the other websites down or make them pay royalties to him should they wish to use his creation.
Somehow, I doubt that this will happen. In the meantime, he can try to be the SCO of Content Management Systems.
you must be kidding...
Posted by: zambizzi on September 29, 2004 12:22 PMIt must be some kind of prank?
Life goes on pal, you lost nothing here even *if* there was foul play involved, which all the evidence points to the contrary.
What a joke.
#