Quarter Life Crisis

The world according to Sven-S. Porst

« ssp vs. MySQLMainThe World/Inferno Friendship Society Live »

Movable Type

1514 words

This blog was started on Blogger and then moved to Movable Type soon after. At the time it seemd the only system that I knew of, that would run on our server without a fancy-schmancy database, that I had seen other people use, so I went with that. And the first steps were as painless as you can expect such things to be.

But everything after that sucked. I don’t think I ever experienced an upgrade to the software that went through without problems. Not only is uploading gazillions of little files via FTP a very slow and painful thing to do, there was also the constant fear that I might accidentally delete some of my carefully groomed on files in the Movable Type folder. That’s very far from one-click software updates and I loathe doing them.

Of course I considered switching to other software packages, particularly after we had moved to a server with database support. But guess what - there are quite a few templates involved in making these sites and there are many details in them which evolved over time, so transferring them just isn’t possible. And when I last checked it looked also very difficult to re-create my exact link structure with other packages and pretty much impossible to get information like comment IDs exported and then used by other packages.

And hence, I just stuck with Movable Type. Moving that installation from Berkeley DB to MySQL kept hosting people happy as Berkeley DB seems to be quite a memory hog once your database starts growing and the comment spammers come in.

At some stage Movable Type 4 came and was supposedly much better than its predecessors. It was actually an upgrade I was looking forward to. But the upgrade never worked for me. It always failed with an obscure error message pointing to an encoding I had never used. This remained a mystery and once more I was the one who was stuck between a rock and a hard place because programmers didn’t do their job properly.

After last week’s dilemma and literally years after first failing to upgrade to Movable Type 4 I now suspect that the upgrade problem may have had to do with some earlier version of Movable Type having fucked up the encodings in the file, thus laying a solid basis for the problem. However that may be, after I got this working again, I tried to upgrade to Movable Type 4 on the new server. And guess what, it worked.

At least the upgrading script didn’t tell me it failed while doing its job. Instead it failed silently in the sense that I didn’t have a single user with administrator privileges in my Movable Type installation. Which could be considered a bit of a problem. As I had poked around the database before, I could at least resolve the symptoms of this fairly easily by modifying my user record straight in the database. YourSQL seems to provide a fairly useful and dead end Cocoa UI for that.

In short, we have another massive software FAIL here. After I had to manually fix the broken encodings, I now had to edit fields in the database to access my consumer level blog installation. What’s next? The proverbial ‘editing the inodes with magnets’?

And then what’s so good about Movable Type 4? It looks like the new tagging feature could be useful (if only because the categories mostly suck) - but how can I retrofit my old posts with tags in finite times? What about transferring the categories at least? And some things I needed to install as plugins previously now ship with the installation which is handy. Another handy thing is the apparent (I’m not 100% sure it really works) autosaving of posts while you type them - certainly a good thing to have given the instable nature of browsers and the web.

Most other things just irritate me or could even be generally labelled as bad or stupid. The larger font while typing is irritating, the ultra-wide page layout which moves many of the links I want to use as well as the search field out of my visible area at the right hand side of the screen is irritating as well. And being able to see the full relevant height of the editing textarea in the browser would have been nice. I may even take offence here because all that precious vertical space seems to be wasted for useless gimmicks like a black bar at the top of the screen or styled editing buttons.

The rest of the UI is at least irritating as well. For example the ‘menus’ towards the top of the browser window which pop open on hover - thus potentially flickering your screen irritatingly just because you want to move your mouse from the menu bar to the editing textarea. Silly. Particularly as those ‘menus’ mean that most of the commands which were easily accessible at a single click in a fixed location previously have now become a matter of first figuring out in which ‘menu’ the command is hiding in. Just because you can use the verb ‘Manage’ together with the nouns ‘Entries’, ‘Assets’ (Whatever-TF that is supposed to be) or ‘Users’ doesn’t mean they belong in the same menu. Similar oddnesses can be found in many more places, pretty much any other menu or command list in the system.

Other sore points are the templates. Not only did Movable Type deactivate some of my custom templates and replace them with its own ones when I clicked the button that explicitly said it won’t overwrite anything. They also did great ‘development’ for their template tags. I was tempted to chuckle at their explanation of how their updated tags are now case insensitive and use a namespacy look ‘because they look better’ and then quickly reverted to normal grumpiness when I realised that their documentation of those tags is still disorganised and incomplete - with the added bonus of being inconsistent now because they apparently couldn’t decide on whether to use the old style ‘ugly’ or new style ‘pretty’ tags there.

From bad documentation we quickly arrive at the subject of Open Source. Movable Type now says Open Source all over it. And here my low opinions of Open Source (great idea, but in practice mostly teh suck) and Movable Type meet. I wonder to which extent this is just meant to be a polite way of saying “Sucker, if you don’t like it, fix it yourself!”

But unfortunately I’m not quite done yet. While doing the fixes needed to make Movable Type actually work and not create broken files, I decided to use the ‘Basename’ for my file names now that it is editable. (Historically I think that field didn’t even appear in the UI and I used a post’s title with the option of abusing the keyword field for pages where I needed reasonable replacements for non-ASCII characters. To make that work I needed some plugin, which somehow didn’t work right away, so, hey, I just use the basename field now…) Looking into that I realised that the Basename wasn’t what I expected it to be in a number of cases.

Somehow Movable Type tries (not successfully as far as I could tell) to unique those names (but I don’t try to unique my post names) by appending numbers to them. And it truncated the names of older posts. I can recommend using FileMerge between an old published folder and a new one to catch the posts whose Basenames need fixing and then putting the correct names right into the database. That’s probably an order of magnitude faster than finding and editing things in the clumsy web UI.

Uh, and what were the big advantages of the new version again? I had heard it comes with better spam handling. From my point of view it doesn’t. Perhaps its spam filter is a bit better now but it’s still a friggin’ resource hog. When asking the question How much RAM and CPU time should a sane blogging software need to handle a single comment? I would count 50MB and 7seconds as severely wrong answers.

Perhaps the spammers were just missing me and were happy to have the site back but if you run that script a thousand times per day you just wasted a good bit of resources for nothing. I guess you could even convert that into a number of kWh and grams of CO2 as is popular these days. And then add a bunch of zeroes to that to reflect the number of installations.

And as seeing such a problem yourself makes it much more real, I decided to ‘hide’ my comment form by wrapping it into some JavaScript - on the theory that comment spammers are actually scripts rather than, say, child workers in some poor country - and so far that works. I’m sure they’ll wisen up, but for the time being I enjoy receiving no comment spam without the server being offline…

July 10, 2008, 0:52

Tagged as co2, comment spam, database, FileMerge, movable type, software, sucks, top, YourSQL.

Add your comment

« ssp vs. MySQLMainThe World/Inferno Friendship Society Live »

Comments on




This page

Out & About

pinboard Links


Received data seems to be invalid. The wanted file does probably not exist or the guys at last.fm changed something.