Polish Mafia’s software license

The controversy over the Movable Type software license continues, and recent comments from MT Business Development honcho Anil Dash fail to clarify it. My comments to Anil: I’m reminded of the old joke about the Polish Mafia – they make you an offer you can’t understand. The MT licensing terms are inconsistent, incoherent, and probably … Continue reading “Polish Mafia’s software license”

The controversy over the Movable Type software license continues, and recent comments from MT Business Development honcho Anil Dash fail to clarify it.

My comments to Anil:

I’m reminded of the old joke about the Polish Mafia – they make you an offer you can’t understand.

The MT licensing terms are inconsistent, incoherent, and probably illegal. Consider how the license applies differently to people who call themselves “web developers” and those who supply “support services”:

Web Developer Installed Website. If you are a web developer and want to install one copy of the Software on one web server as a publishing system for a single website that you are designing for a client.

That’s not even a grammatical sentence, it’s a dependent clause without a predicate.

The client website must be either one of the two types of websites described above for which a Limited Use License is available, or a website license under Licensor?s Personal, Non-Commercial Use License. A single License Fee shall be payable by either you or by the client, with the license issued to both you and the client.

Does this say that a license fee has to be paid by a web developer who builds a custom website for someone who’s entitled to use MT for free? If so, which license fee?

And then it says this:

Without limitation, uses which are prohibited under this Limited Commercial Use License include receiving compensation from others for copies or modified copies of the Software; hosting, or offering to host, the Software, on any basis; receiving compensation for any service that uses the Software, including support services.

How can a reasonable person distinguish what a web developer does from providing “support services”? And how is it legal for me to run a personal blog using MT on a for-fee commercial hosting service without my use putting the hosting provider in violation of MT’s license? My ISP’s hosting the software, whether he knows it or not, and that’s forbidden even if the hosting provider pays a license fee for each blog. That’s clearly ridiculous, and as I said, probably illegal. You can’t write a contract prohibiting anything in the world that you feel like prohibiting, and you can’t write a contract that permits uses to people calling themselves one thing and not to others doing essentially the same thing and calling themselves something else.

You also can’t write a contract that forbids an ISP from supporting its customers after they’ve installed legal copies of MT on their own or with the help of someone else. That’s an unreasonable encroachment on the ISP’s own business.

I’d suggest that you need to review the terms of your licenses with the help of a qualified IP lawyer, because what you have (which reads like it was written by someone who didn’t understand law, let alone English grammar) is not enforceable.

Disclaimer: I am not a lawyer, and this is not to be construed as an offer of legal advice. It is personal, uninformed opinion offered solely for the purpose of stimulating discussion.

The irony of all this is that Movable Type is no longer supported by its developers. They used to support it — when I installed it on an ISP that uses NFS, I ran into problems with database corruption that came about because MT used the perl “flock()” function, which only works on a local file system, instead of an NFS-safe mechanism using “fstat()” to create temp files to serve as locks. Granted, this is a fairly obscure bug that comes about as a result of the (brain-dead, in my opinion) decision of Bill Joy to support a stateless NFS, it’s nonetheless the kind of thing that software has to handle in the 21st century. I brought the issue to the MT developers, and they (Ben) did their best to resolve it (see the “NFSSafeLocking” directive in mt.cfg).

But when I ran into a problem with MT and MySQL (where the conversion script times out and hangs and can’t be restarted), I got no response from them at all, just as others have got no response to their reports of other problems with MySQL and MT. So if the developers aren’t going to support their product, and they’re going to forbid anyone else from supporting it per the license agreement, and you don’t care to spend hours buried in perl yourself to support it, and it needs support, why use it?

The only reason I can see is if you already have it, it works OK for you, and you never want to change. Since change is a constant for me and millions of other geek boys and girls, this isn’t a viable option, so I’m working on a conversion script for Nucleus. I hate to do this (php is a pain and Nucleus has no design docs or inline comments and I know beans about SQL) it seems like the most reasonable option, given that MT has copped-out.

Well, it was fun while it lasted.

8 thoughts on “Polish Mafia’s software license”

  1. I know that Nucleus has an export/import function for backups (though I just back up the mySQL database instead). It might be possible to figure out how Nucleus exports that information, code a Movable Type page that would export all your entries in a similar format, and then import THAT output using the Nucleus facility. That may be one approach. If your conversion efforts are successful, I suspect you will be a popular guy among the Nucleus-heads!

  2. The Nucleuscms.org site does appear to be dead, but you can get the stuff from SourceForge.net, the home of all good GPL projects. It was written by some foreign devil from Holland, apparently.

  3. Glad I found Blosxom. (also available as PHPosxom and PyBlosxom for PHP and Python aficianados)

    What always bothered me about MT (aside from it being a clunky PITA to use, and the 2.50 upgrade bug that necessitated 2.51) was its proprietary code that so many users and developers have enhanced with plugins and bugfixes, adding to the software’s value, just like developers do on Open Source projects like Blosxom–except that the underlying MT code remains property of Trott & Co.

  4. It might be possible to figure out how Nucleus exports that information, code a Movable Type page that would export all your entries in a similar format, and then import THAT output using the Nucleus facility.

    It turns out the code isn’t as uniformly structured as one would like. The conversion functions use some low-level SQL access routines to insert blog entries, comments, and authors in /import/convert/functions.inc.php. They’re generic functions named:

    convert_addToItem($title, $body, $more, $blogid, $authorid, $timestamp, $closed, $category, $karmapos, $karmaneg)

    and

    function convert_addToBlog($name, $shortname, $ownerid)
    and

    function convert_addToComments($name, $url, $body, $blogid, $itemid, $memberid, $timestamp, $host)

    and

    function convert_addToTeam($blogid, $memberid, $admin)

    The main body of the code consists of classes defined in nucleus/libs/ like BLOG.php and COMMENT.php. These classes also include routines that insert entries, comments, and authors in the course of normal blog operation.

    The author says he’s working on a generic conversion (import) class, but I’ll go ahead and see if I can’t beat him to the punch. PHP looks like a crude version of Python, so it shouldn’t be too tough to mess around with.

    Basically, I’m going to take bloggercaif.php and rewrite it to parse a Movable Type export file and then call the generic routines to update the MySQL database. Like a lot of PHP, the conversion modules are HTML spaghetti with function sauce. Joy.

  5. Except I’ll be damned if I can to the Nucleus site.

    I was poking around several times on the Nucleus site yesterday with no trouble, and pulled it up just now. Are you still having trouble getting to it?

  6. Richard,

    Keep in mind that if you paid for support, you can send support questions directly to the email address we gave you after you paid. Those messages go to us directly. Since our forum moderators do a great job of handling the forums, we check in less often. But we do still respond personally to support questions from people who’ve paid for support.

    And since we–the developers–didn’t receive an email message from you asking for support, blaming us for not supporting Movable Type is unfair.

    As for the problem you are having with MySQL, I’ve responded at the forums. I hope that helps.

  7. Fair enough, things are more hectic now than they used to be, and I never paid you specifically for support – I just paid a donation and got a couple of update keys, but no special address for support. In the old days — Jan. ’02 — I just posted on the forum when I had a problem and you jumped in and fixed it.

    I’ve turned off the auto discovery and converted the DB, and “All went well”.

    I still have problems with your license, which I covered in an email to Anil and Mena, and I hope you consider my points.

Comments are closed.