Forces of habit

By Serdar Yegulalp | 2015/09/29 11:56

One of the perils of designing a successor to an application you have used every day is unthinkingly recreating the things about it that weren't all that good anyway, but which you grew habituated to and stopped thinking about. This is rarely big, ambitious stuff; it's typically little things -- and while they might not seem like much from the inside, they could turn out to be terribly alienating to a newcomer.

Here's a f'rinstance. In Movable Type, a blog post has two major text fields: the "body" and the "more". Texts in the "body" section are shown in their entirety on the blog's homepage and in the archives; the "body" and the "more" are what's shown on the actual page of the post.

In WordPress, there's only a body field, but you can insert a <!-- more --> tag to show where a page should be split between those two fields.

I found the first approach to be cumbersome over time, in big part because I like being able to see the entire text of a post when I'm editing it in the browser. So for MeTal, I used the WordPress approach, but with an additional wrinkle: you can insert as many page-split tags as you like. The resulting pagination is then used at the discretion of whatever template you're working with. This provides us with a built-in way to do article pagination, among other things.

My current problem is two-fold:

  1. This kind of page-splitting comes with a certain number of implicit assumptions about how texts are meant to be broken across pages. For instance, one of the current assumptions I have is that the first page-split tag is always meant to describe where the homepage excerpt goes, for things like page-counting when dealing with multi-page posts. I imagine I could work around this by simply creating a new kind of page-reference variable, one that counts all page-split tags, alongside the regular page-reference variable that considers the first one to be a homepage-excerpt split and thus not part of the actual page count. But I haven't tested any of this in production yet.
  2. I keep forgetting to put in page-split tags.

I strongly suspect, though, that the first problem is going to be far more of the issue for most people than the second one. The vast, vast majority of bloggers out there use WordPress or something akin to it. Movable Type is worth taking inspiration from for its internal behaviors, but replicating its quirks are going to be lost on everyone but me -- and the vast majority of them aren't things I wanted to keep, anyway!

Tags: Movable Type WordPress design

comments powered by Disqus