MT3 release news

Ok, so the MT 3.0 Developer’s Edition has just been announced.

Quite frankly, I’m not sure whether to be happy or disappointed about the new release and pricing.

From what I’ve seen playing with the beta, MT3 is pretty cool. Significantly faster than 2.6 especially when it comes to rebuilding. Good backward compatibility with older plugins, although I don’t use too many of them. Better comment and trackback editing and handling.

There are the license changes. I haven’t read through them yet, but from what I see it looks like it’ll be more friendly for web developers and ISPs who want to offer MT to their clients.

Then there’s the money aspect. MT’s a great product, but honestly, I’m not at all sure it’s worth $100 for a personal license that only gives you 5 weblogs and 3 authors. $40 or $50 I wouldn’t object about. But I think $100 is a little steep. MT would do well to reconsider their pricing model so that it’s a little more friendly to the power user needing a personal license.

Mena Trott writes

Additionally, as promised, donors who have ever contributed $20 or more to Movable Type will be able to apply their full donation to this version. For many who donated, the difference after applying their donation will be a nominal fee.

Ok, I have to take issue with that statement. Yes, I made a $20 donation shortly after I started using MT 2.6. But I’d hardly call $50 (discount price minus donation) a nominal fee. It’s anything but that. And you still end up paying the same price in the end.

Sure, there’s the stripped down free version, but you only get one author and up to 3 weblogs with it. And a long list of No’s and features taken away from the 2.x versions:

No support from Six Apart
That’s fine, there wasn’t much to begin with anyway unless you donated $45
No access to paid installation service
I think if MT is going to offer paid installation services, they should offer it to everyone whether it’s the free version or not. Is MT going to ask people to want to buy a personal or commercial license to also pay for installtion too?
No access to fee-based services
May or may not be an issue, depending on what fee-based services they decide to offer
No promotion of your weblogs through the Recently Updated list
Needed to make a donation to get this anyway. But what about those current MT users who have already donated, and don’t have the resources or desire to shell out $100 for a personal license? I think MT ought to continue to current model of accepting donations (particularly from users of the free edition) and providing a Recently Updated Key to them and allow current key owners to keep using theirs if they decide to go with the free version.
No commercial usage
No problem. If you’re going to use MT to make money, then you should pay them for acommercial license.
No more than one author and three weblogs
Again, far too restrictive for power users that can’t afford the cost of a personal license.

Notable license items with the free edition

“Author” means one individual with a unique login name generated by the Software via the “Add/Edit Weblog Authors” function of the Software. The sharing of an individual login name for more than one person is prohibited.

Making Copies
You may install the Software on only one (1) computer or server having a single CPU. You may make one (1) copy of the Software in any machine readable form solely for back-up purposes, provided you reproduce the Software in its original form and with all proprietary notices on the back-up copy.

So I guess what I’m saying in short is

  • MT 3 release: Very good
  • MT 3 features: Very good
  • MT 3 licensing: Good
  • $100 MT 3 Personal license: Bad
  • MT 3 free version: Not so good
  • MT 3 Pricing: Needs work

Getting closer to Typekey

Ok, thanks to this bug report, entering the URL to mt.cgi rather than the weblog URL seems to allow Typekey signins.

However, now I get a complaint that a user name and email need to be provided when a comment is submitted by a Typekey user. I may have some template and/or cookie issues left to resolve. Time to go digging into the default MT3 templates and have a look.

Let the testing begin!

Switched the weblog over to a duplicate copy of my weblog database. After some modifications to the templates, the weblog is now running under MT 3.0B4. Not much has changed as far as the look of the weblog. There are some significant UI changes on the back end though. Looking pretty good MT. Not sure if commenting works though. Registered for Typekey and pasted the Typekey token into the proper section of Weblog Config. When I try to sign in and comment though, I get told that

The site you’re trying to comment on has not signed up for this feature. Please inform the site owner.

I’ll need to mess around some more to figure it out. In the meantime, commenting seems to work. They’ll go into an approval queue and won’t show up until I get around to checking the queue and approving or dumping any comments as I see fit.

Beta testing MT3

I get to be a beta tester for MT3! I won’t be converting over right away though. I thought I’d set up a duplicate database and test the beta using that so that I can iron out what changes I’ll need to make to my templates. So for a little while, I’ll be running parallel weblogs.

Upgrading the MT database was pretty simple. Had everything up and running in a matter of a few minutes, although I haven’t rebuilt an of my weblogs yet. I’ve recently run into few issues with plugins that I’m trying to sort out. After I get those resolved, I’ll start messing around with MT3.

Looking forward to this.

Recovering MT entries from HTML archives

This script might come in handy some day. There are always posts on the MT support forum about how someone’s lost their database, hadn’t made a backup and only have the archive HTML files generated by MT to restore from. And I’m always forgetting what search terms I used to find the original post.

It won’t restore everything. You still need to rebuild your templates and modules. Not sure about the comments, but at least you can recover your entries. Still, it’s no substitute for having a good database backup or SQL dump of your MT database.

Don’t thank me, thank Jason. He wrote it.

#!/usr/bin/perl
use Date::Manip;
# mtfix.pl - parse HTML files to import into Movable Type
# usage: mtfix.pl *html > import.mt
# Note: you _will_ need to adjust the regex
while (<>) { # for each file on the command line
# read in entire file to $content, line feeds and all
# using slurp mode
{ local $/; $content = <>;}
# locate the fields we need using regex
# some matches may include newlines
($author) =($content =~ m|<div class="posted">\s+(.+?)\s+/|s);
($title) = ($content =~ m|<span class="title">(.+)</span>|);
($text) = ($content =~ m|<p>(.+)<a name="more">|s);
($more) = ($content =~ m|<a name="more">(.+)<span class="posted">|s);
($date) = ($content =~ m|<div class="date">(.+)</div>|);
($time) = ($content =~ m|Posted\sat\s(.+)<br />|);
# Read in all the comments as one big block of text
($comments) = ($content =~ m|</a>Comments</div>\n(.+)<div class="comments-head">|s);
# Break up each comment into it's own element in an array
@comm = split (/<\/div>\n/, $comments);
# convert the date to MM/DD/YYYY hh:mm:ss
$datetime = "$date $time";
$parsed = ParseDate($datetime);
$datetime = UnixDate($parsed,"%m/%d/%Y %H:%M:%S");
# Strip out the paragraph tags, MT will add them later anyways.
$text =~ s|\<p\>||g;
$text =~ s|\</p\>||g;
$more =~ s|\<p\>||g;
$more =~ s|\</p\>||g;
# printout the fields in the proper format
print "AUTHOR: $author\n";
print "TITLE: $title\n";
print "DATE: $datetime\n";
print "-----\n";
print "BODY:\n$text\n";
print "-----\n";
print "EXTENDED BODY:\n$more\n";
foreach (@comm) { # For every comment in our aray, printout the necessary formating.
if (length $_ > 7) { # this is here to ignore the last comment record.
($CText) = ($_ =~ m|<div class="comments-body">\n(.+)\n\<span|s);
($CDate) = ($_ =~ m|</a>\son\s(.+)</span>|);
($Ctemp) = ($_ =~ m|Posted\sby:\s(.+)\/a\>|);
($CAuthor) = ($Ctemp =~ m|\>(.+)\<|);
($CURL) = ($Ctemp =~ m|href=\"(.+)\"|);
$CText =~ s|\<p\>||g;
$CText =~ s|\</p\>||g;
$parsed = ParseDate($CDate);
$CDate = UnixDate($parsed,"%m/%d/%Y %H:%M:%S");
print "-----\n";
print "COMMENT:\n";
print "AUTHOR: $CAuthor\n";
print "URL: $CURL\n";
print "DATE: $CDate\n";
print "$CText\n\n";
}
}
print "--------\n";
}