skippy dot net

Free as in Freedom

Denis is offering a Semiologic CMS Pro Package for WordPress, which includes WordPress, a selection of his own plugins, as well as third-party plugins all in one easy-to-use package. I think this is awesome, and it is a good example of how to make money from Free Software.

I think WordPress is easy to install and maintain, but I've been working with it for well over a year. I'm conversant with HTML, PHP, and MySQL, so I'm able to solve the bulk of my problems myself. I also enjoy working with HTML, PHP, and MySQL, so it's rarely a chore for me to work on all things WordPress.

But not everyone enjoys those things, and for those folks I think Denis' offering is a great one. If you know you want an elegant, professional website, and you also know you don't have the time or inclination to learn how to do it yourself, then the Semiologic CMS Pro Package is a worthwhile investment. I don't know how to change the oil in my car, for example. Sure, I could learn how to do it, and save money in the long run, but I am totally dispassionate about my car. Learning how to change my oil, and actually doing it, would give me no real satisfaction. I'd much rather spend my time and energy on things about which I'm passionate, and spend a couple of dollars to have someone else change my oil for me.

I have no problem with Denis selling Free Software, as long as he is making it clear that the contents of his package are licensed under the terms of the GNU General Public License. Because all of the software is GPL, any (and all!) of his customers are free to give the Semiologic CMS Pro Package away to all their friends and neighbors. As long as Denis is okay with this, I wish him all the success in the world!

I am not so optimistic, though, about two WordPress plugins that were recently forwarded to me.

A WordPress user contacted me, offering to pay me to help him design and implement his site. While discussing what he wanted, he mentioned an AutoPost plugin several times. I informed him that I was unfamiliar with that plugin, and as such would not be able to provide much assistance. Unsolicited by me, I was forwarded a copy of a report entitled "Top 10 Tricks to Conquer Your Niche With WordPress!" Bundled with this report were two plugins: autopost.php and utopia1.php. I read only the first few lines of the report, and immediately stopped when I saw:

This report and accompanying material is Copyright (c) 2005 David Pankhurst/ActiveBits Technology - All rights Reserved. It cannot be given away, redistributed in any form, or sold.

I informed the person who sent it to me, and after further discussion I informed him that I was not interested in working on his site. I haven't spoken with that person since.

Obviously the report, and plugins, are geared toward Search Engine Optimization, something about which I could care less. But the restrictive copyright caught my attention for some reason, so I peeked at the top few lines of the plugins, and was astounded by what I saw. I sent the following note to Dave Pankhurst:

Hello Dave.

I recently received a solicitation from a WordPress user to help him design his site. This user made mention of several plugins he wanted to use, none of which I was familiar with. I told this user that I was unfamiliar with them, and in response he forwarded to me your entire 'Top 10 Tricks to Conquer Your Niche With WordPress!' package.

As soon as I read the license.txt, I immediately stopped reading. I did not pay for the report, and therefore have no reason to be reading it.

After some deliberation, I looked at the top few lines each of autopost.php and utopia1.php. I saw your copyright statement:
-----
Copyright: Copyright (c) 2005 David Pankhurst. All rights reserved. This code is not Open-Source or free, and is included as a companion to the report 'Top 10 Tricks to Conquer Your Niche With WordPress!'. Only by
purchasing that report are you entitled to use the code on your own niche sites; however, you are not allowed to reverse engineer, sell, or distribute this code to others.
-----

From the Free Software Foundation's GPL FAQ:
http://www.fsf.org/licensing/licenses/gpl-faq.html#TOCGPLAndPlugins
-----
*If a program released under the GPL uses plug-ins, what are the requirements for the licenses of a plug-in.
It depends on how the program invokes its plug-ins. If the program uses fork and exec to invoke plug-ins, then the plug-ins are separate programs, so the license for the main program makes no requirements for
them.

If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins. This means the plug-ins must be released under the GPL or a GPL-compatible free software license, and that the terms of the GPL must be followed when those plug-ins are distributed.

If the program dynamically links plug-ins, but the communication between them is limited to invoking the `main' function of the plug-in with some options and waiting for it to return, that is a borderline case."
-----

WordPress plugins are _not_ forked; nor are they limited to invoking a main function and returning data. They pass data and share structures in non-trivial ways: the global $wpdb object, template tags, etc.

I have no problem with you charging a fee for your report. Nor do I have a problem with you charging a fee for your plugins. You are allowed (and encouraged) to retain the copyright on your work.

But you are prohibited from placing restrictions on how your plugins are used, once someone has paid for them. You need not license your plugins under the GPL itself, but you are obligated to license them according to GPL-compatible license:
http://www.fsf.org/licensing/licenses/index_html#GPLCompatibleLicenses

I am not a lawyer; nor am I the copyright owner for the WordPress project, so I cannot (and will not) make any legal claims against you. I am contacting you in a good-faith effort to help you and the WordPress
community understand the importance of GPL licensing.

I would be happy to discuss this with you at greater length. I cannot offer you legal guidance, so I encourage you to consult with an attorney if you have specific questions of law. Feel free also to contact the Free Software Foundation, who are the subject matter experts for GPL compliance.

Best regards,
Scott Merrill

Dave responded a few days later:

Hello:

Thank you for your email.

Please rest assured, the legal ramifications of the plugins and licensing have been analyzed well ahead of developing (and releasing) these plugins. Since you have notified the developers/copyright holders of WordPress, then you can also rest assured that the matter will (and has) been dealt with.

He also informed me that my possession of his work was a copyright violation, and demanded that I delete all copies. He asked for confirmation of my receipt of his message, and closed with a multi-line disclaimer stating that the email was confidential. As the recipient of that email, I believe it is within my rights to use it however I like, which is why I've excerpted it above. I politely confirmed my receipt of his email, and then asked Matt Mullenweg, lead developer of WordPress, whether he had extended a special, non-GPL license to Dave for use with his autopost.php and utopia1.php plugins. Matt responded "Not at all."

As I said in my email to Dave, I'm not an attorney, so there may well be nuances of which I am unaware. But the GPL FAQ seems to be clear enough: a plugin that makes function calls to, and shares data structures with, the core WordPress application must be released under a GPL-compatible license. This means that Dave Pankhurst is free to retain copyright on his plugins, but he may not restrict the redistribution of his plugins once someone has purchased them.

Does anyone have any information to the contrary?

skippy

Free as in Freedom was authored by skippy on . This entry has been taggged with the keywords: , and . If you would like to follow the comments on this post, you can subscribe to its Atom feed.

  • [...] The Community is the Product Sunday, July 10th, 2005 Spammer Scum General :: What not to talk to me about.The bane of my existence is my apparent magneticattractiveness for fucking idiots. The scum among the SEO community just don’t know whom to contact with propositions involving their pathetic excuses for not having a real job. Sometimes it’s Skippy, of all people. And sometimes it’s me. With names changed to protect the moronic, herewith one of the more irritating ways to start one’s day: <john> hello <Firas> hi <john> sup <john> been dealing with wordpress for a long time? <Firas> yeah, quite <Firas> what’s up? <john> i’m just looking for advice and stuff <Firas> sure <john> i want to set up a few blogs myself <john> as well as create this seo script which will try to get whatever links i have onto other blogs <john> trying to make a dollar out of what makes sense <Firas> um hm <john> anyway, the thing is this <john> i’m trying to make this malaysian blog like (url removed) <john> which aggregates information from other blogs, such as (url removed) <john> with wordpress, it is possible to do just this right? <john> to have the stories from other sites posted as stories on my site? <Firas> yeah.. <john> or will they just be posted as links? <Firas> there’s a plugin called feedwordpress that does that <john> yep <john> i’ve found it but it’s still kinda hard to understand <john> i’ve installed it and added some feeds to it <john> but after that i’m a total blur unfortunately <Firas> i see <Firas> so what’s it not doing that you want it to? <john> i want it to pull everything from (url removed) into my technology category <Firas> i don’t think that site has category specific rss feeds <john> darn <john> so all would have to be pulled in in general? <john> hrrrm <john> well, perhaps i don’t really need that site <john> are there any lists over the best sites to syndicate from? <john> for different categories? <john> if you help me out with this <john> i’d be happy to give you my seo script when it’s done <john> assuming you won’t distribute it <john> it generates a lot of sub-sites and populates them with your links across free webhost providers, forums and blogs <Firas> what does that script do? <john> it’s going to be quite comprehensive i got like 5 coders working on it <Firas> you’ve gotta be kidding <Firas> no thanks, i’m not interested in spamming scripts <Firas> have a nice day <john> it’s not spamming <john> maybe you got me wrong <john> you shouldn’t be so quick to judge <john> it *creates* forums and blogs <john> but that part is uncertain <john> as for generating thousands of small sites and putting them at free webhosts <john> ain’t nothing wrong with that <Firas> john… i do professional wordpress development by day. I don’t need to work in promise of a ’script’. you see where i’m coming from? you’re wasting your time. <john> please don’t quote my name to act superior <john> you’re a professional, that’s cool <john> i just wanted to be nice with you for helping me <john> piss at my thought and i cut off your weewee <john> where do you come from? <Firas> no, i’m not trying to act superior, i’m just informing you that this conversation is rapidly going nowhere <Firas> bye. [...]

    firasd.org » Spammer Scum

7 Comments

gravatar

On Firas added:

Nice post. I think it basically depends on how *much* the plugin shares with WP code. If it shares enough for the owners of a non-GPLed program to claim copyright violation in a similar case, it shares enough to be regulated under the terms of the GPL. The GPL can't compel you to do anything besides its claims under copyright law.

It's a bit unfair to say 'here's an API' and then say 'but using brings you under the terms of my copyright'. Again, an issue of where to draw the distinction.

gravatar

On Denis de Bernardy added:

I think you summarize the situation quite well at the end of your post: A plugin that makes function calls to, and shares data structures with, the core WordPress application is clearly not in the borderline case mentionned in the GPL FAQ.

gravatar

On Podz added:

What I know about function calls and the GPL could be written on a stamp with a marker pen, but what surprises me is that lack of noise about this.
Assume (1) he has complete copyright control. Says who ?
Assume (2) he cannot prevent re-distribution. How would he therefore fight someone who did ?

Given the recent statement by Matt elsewhere, it would seem this guy has not been entirely honest about having cleared things up beforehand. Did he consult a lawyer ? Is he just lying (My view, not that of the blog owner here for anyone reading).

As WP gets larger, this will occur more and more. WP code is the product of many people freely giving their time and it seems to me that rather than let things like this quietly pass, it needs to be addressed head on. If it is not, then this will come back to haunt WP as other see the opportunity to disregard the GPL and anything else to do with WordPress as rights are not enforced.

This product needs a clear statement from WP. A crystal clear one.

gravatar

On Podz added:

Skippy - I was checking this feed in a reader, and Denis' comment did not cause an update. i still have only Firas' comment there.

gravatar

On jerome added:

I think you're putting too much faith in the GPL FAQ without understanding the actual license wording. WordPress isn't a "program" in the traditional sense. In fact, another section of the FAQ would define PHP scripts as "data".

gravatar

On Elfboy added:

What ever the outcome (if any) of this case, it seems clear that legal challenges to GPL's are only a heartbeat away. At some point some lucky individual will make some real money after attempting to copyright data or scripts that make calls to other things such as WordPress files, and where there is money there are usually lawyers willing to slug it out in court. I say good. The more case law we have to support GPL and subsequent copyrights of related material (or not) the better.

gravatar

On Owen added:

I have had the opportunity to examine the plugins available with David Pankhurst's report. There are three separate files with plugin headers - utopia1.php, autopost.php, and autopost2.php. Replacement files for edit.php and post.php are also provided for 4 versions of WordPress, 1.5 through 1.5.1.3.

Regarding GPL licensing on these plugins:
All plugins retain a copyright notice stating that the source is not open for redistribution. However, autopost.php and autopost2.php both make use of the $wpdb variable, which is an instance of WordPress' "wpdb" class, which is derived from Justin Vincent's ezSQL class via GPL. It seems pretty clear that these plugins will not function without the use of a GPL licensed library, which leads to this FAQ entry about the GPL.

The included utopia1.php plugin does not make use of any WordPress internal functions or classes, and could be not only rightfully copyrighted but unavailable for redistribution under the terms of the GPL.

The edit.php and post.php replacements are the most clearly covered under the GPL. He can ask for payment for them, but can't prevent you from redistributing them.

Regarding the quality of the plugins themselves:
My cat could write better code. In fact, I've found better code from my cat horked up under the couch in my living room.

Professionally, the guy is nothing more than a hack (From Answers.com: One who undertakes unpleasant or distasteful tasks for money or reward; a hireling.) who is making a quick buck off of the sweat of unthanked, unpaid coders.

I will consider posting the source of the erroneously labeled GPL-licensed files on my site for public perusal. Or better yet, I may author a brand new "report" that discusses these same topics more thoroughly, yet gives credit where it's due, releases any code under GPL, and offers itself for free.

All told, the report could have been a lot worse - It did not recommend many of the truly despicable methods of gaming search engines, specifically by stealing other people's content. Nevertheless, I think a sales model already exists with GPL-licensing that would allow this fellow to be friendly with the community that is helping him make money, and still earn some cash with his offerings.

And You Are?
Something to add?