Moving to WordPress

After twelve years of using Movable Type, I have just moved the blogs on sunpig.com to WordPress. For some time now, Movable Type has been failing two of my three tests for choosing a piece of platform software:

  • Is it well documented? (Yes.)
  • Is it under active development? (No, at least not in its open source version.)
  • Does it have an active and supportive user community? (Not any more.)

I still like its architectural model of static publishing, and (partly because of that) it has a great security record, which is important if you’re running your own server. I’ve been using MT since version 1, and I’ve clung to it for sentimental and pseudo-practical reasons (“I know the templating language really well!”) for a long time, but the online world is a much different place now, and the fact is that compared to all other avenues for writing online, MT 5’s interface is poor, and I dislike using it. As a result, I don’t. I blogged less in 2013 than in any previous year.

OpenMelody was a fork of the open source version of MT 4, but it seems to be dead now.

I was considering using Jekyll, which is a modern static site generator: write posts in your text editor, run a site generator from the command line, and `rsync` the generated html files to your server. This has lots of good points: it generates static files, and it plugs directly into my standard text editor workflow — with version control! This is great if you’re a programmer and always have access to a machine with a command line. Not so great if `bundle exec jekyll build` makes you twitchy, or if you like the idea of occasionally posting something from your phone. Also, no matter how you slice it, comments end up as a crazy hack. I can see myself using jekyll for other projects, just not for our main blogs.

Ghost is new and shiny and looks like it pushes the standard blogging interface forward, but: node + sqlite. Really? They sat down and actually came up with that decision? Also, I mistrust an open source project that has a “sign up” link on its home page, but not a “download”.

Drupal would probably do the job, but my impression is (perhaps incorrectly) that it is more geared towards sites rather than blogs.

So… WordPress. Big community, well documented, under active development. Used to have a bad rep for security, but is a lot better than it used to be, and since version 3.7 even features an automatic update process to apply maintenance and security patches. It also has well-established guidelines and practices for hardening an installation. It’s “the standard” these days. I have a general preference for “off-piste” solutions, but sometimes I just want to go with something that “just works”. Mostly.

It took me a few days to prepare the migration. I pulled the trigger yesterday evening, and by the (late) end of the evening, the new Death Star was mostly operational. Today has been mopping up and housekeeping. And so far, I’m feeling pretty good about it.

The new shiny:

I put together a GitHub repository with my notes, preparation, and migration scripts in case anyone else might benefit from the experience: https://github.com/sunpig/sunpig-mt-to-wp. If you notice any problems, let me know.

Printing at exact size in OSX

I’ve always had trouble printing images at exactly the right size (12cm for CD tray inserts, 8.6cm for photo cubes, etc.), because all this time I’ve been looking in the wrong place.

OSX’s print dialog (⌘P) in the Preview app has options to scale the image you’re trying to print, but trying to tweak the percentage scale factor to get the printed size exactly right is a nightmare of trial and error. This is that wrong place I mentioned above.

The right place is further upstream in the photo processing workflow. The print dialog looks at DPI information embedded in your image, and prints accordingly. If you want to print at exact size, you need to ensure that the DPI information gets added to your image when you resize and save it.

If you’re using Acorn, it’s the Image -> Resize Image… menu (⌥⌘I). In Pixelmator it’s Image -> Image Size… (also with the ⌥⌘I key combo).

Image resize dialogs in Acorn and Pixelmator

In both cases, set the resolution to the resolution at which you want to print: typically 300 pixels per inch or 118 pixels per cm for a 2013-era inkjet. Then change the width and height and unit of measurement to what you want to see on paper, e.g. 12 x 12cm, and click OK to confirm. Now when you print, it will be at exactly the dimensions you want. Easy.

Can’t believe I’ve struggled with this since 2007.

Backlash

In OAuth of Fealty, Ian Bogost takes a well-aimed swipe at Facebook’s developer API.

“This is one of those areas in which it’s actually possible to learn something from Microsoft circa the 1990s. How did Microsoft develop a massively adopted ecosystem of developer products for its home and enterprise operating systems? By creating an ecosystem of development tools, programs, and documentation that helped developers do their jobs, to accomplish their goals. Documentation that is complete and accurate. Examples with clarity and utility. Slow revs of subsystems and tools that take into account the fact that the rest of us cannot and should not have to think about a development platform as a full-time job, because we’re trying to use that platform to produce results that exceed it.”

[…]

“But there’s another aspect of rapid, reckless change that few discuss: it helps create a sense of confusion and desperation that forces developers to devote more and more attention to the Facebook Platform. What better way to increase collective commitment to Facebook apps than to quietly extort incremental time out of its creators, time that might otherwise be committed to competing products or—gasp—to their own businesses or personal lives?”

I have recently come to the realization that I feel this way about large chunks of “front-end web development”. I’m sick of the constant blog-fawning over 0.x frameworks, and the hipster pressure to adopt new tools and workflows that will be obsolete whenever the next ironically-named npm-based automation tool makes a splash with the in-crowd. Don’t get me started on conferences.

This is a problem, because front-end web development is my professional bread and butter. But honestly, I feel like retreating to some back-end contracts for a couple of years to let this Cambrian explosion settle down a bit. I named my company “Aleona Product Development” very deliberately: I care about building products that will delight customers. Tools and technologies don’t excite me.

The Joy Formidable at Paradiso, Amsterdam, 13 February 2013

Small room upstairs at Paradiso – my very favourite venue. The Joy Formidable were just…formidable. They could have filled a venue ten times that size with the sound they made. I hadn’t noticed before just how insane many of their song outros are, and they thrashed them even further during the gig. Lovely AV/projection display going on in the background, too – a neon outline of a wolf’s head at the heart of it. Some great photos from their Paris gig the previous night on Soul-kitchen.fr. Will definitely get tickets to see them again any time they’re nearby.

  1. Cholla
  2. Austere
  3. This Ladder is Ours
  4. The Greatest Light is the Greatest Shade
  5. Little Blimp
  6. While the Fles
  7. Cradle
  8. Tendons
  9. Silent Treatment
  10. Maw Maw Song
  11. I Don’t Want to See You Like This
  12. The Everchanging Spectrum of a Lie

Encore

  1. Forest Serenade
  2. Wolf’s Law
  3. Whirring