Recently, in the Movable Type category…

For anyone looking to learn about Movable Type, I’ve started writing a series of articles about MT for Devlounge. My most recent was published a couple of days ago and covers how to use the Action Streams plugin, which I’ve talked a bit about before.

And while I’m mentioning that, I thought I’d also talk about the various ways I’m publishing these days. Like a lot of people, I don’t post to my blog as often as I used to. Over time, this has turned into a place for longer articles, and short “link posts” just aren’t what I want to do here. But I see things all the time that I want to share, so here’s how I’m divvying them up:

  • Really short, of-the-moment type stuff goes on Twitter.
  • Links that I’m saving for my own reference get saved at
  • Links that I don’t necessarily need to save, but that I want to others to read — and thoughts that are longer than 140 characters — are shared via Google Reader.
  • And, as I said, longer blog posts go here, and MT tutorials go on Devlounge.

Of those, Google Reader’s shared items is the one I’ve really gotten into lately. Since they added notes and sharing anything, it makes a decent tumblelog. I’m hoping they continue to move it in that direction.

So that’s where I am with blogging. What about you — how do you publish these days, and how has it changed since you first started blogging?

One of the reasons I went ahead and upgraded to MT 4.1 is that I wanted to try the new Action Streams plugin. It’s a life stream with a lot of options for publishing what you do online. One word of warning: If you’re using the never-publicly-released MT Elsewhere plugin, disable it. Action Streams is basically Elsewhere 2.0, and the two do not play well together.

Another problem is the code in the example Action Stream widget that comes with it is not correct. I’m guessing it’s using tags from a previous version. I’ve uploaded a corrected version if you need it:


However, I don’t really recommend using this as a widget, exactly. Something like this, that’s going to get rebuilt often and used on multiple pages, is best setup as an index template. Then, you can create a widget that includes it via PHP, SSI, etc.

Beyond that, though, I like the plugin. Looks fairly easy to modify, too, if you want to change how it displays actions or add services it doesn’t yet support.

If this posts successfully, I’m going to guess my upgrade to Movable Type 4.1 went just fine.

I may write more about it later, but my 30 second review is: looks good. The new layout of the entry screen is definitely an improvement. However, they still haven’t fixed what I consider a usability bug: Tabbing from the Title field takes you to the text format drop-down (Markdown, Textile, etc.) before going to the body edit box. How often are you going to change the format on a post? Almost never, so it’s a wasted keystroke, and not the expected behavior.

About the same time I was looking into moving our websites to a VPS, I read some comments on the Pronet list by Mark Carey about using a single installation of Movable Type to run multiple domains. I was very interested—we have several MT sites, and it would be great to run everything from a central location. MT is built to run multiple blogs, so it seems silly to install it multiple times on a server if you don’t have to. With this setup, I only have one installation to upgrade, one place to install plugins, and one login to control all my blogs.

It took some tweaking, but I’ve got it working and wanted to write up the process.

Continue reading “Driving on MT: Single Installation, Multiple Domains”…

To write this blog, I use the Markdown with SmartyPants text filter. In fact, I use Markdown pretty much anywhere I can. It’s simple to use, and looks good even when displayed as plain text.

And there’s never a reason not to use SmartyPants. It makes such a difference in how punctuation looks, even a design-blind developer like myself can see the improvement.

So when I noticed that text filters are not applied to titles, I was quite disappointed. I set out to correct it, and here’s what I came up with.

Continue reading “Driving on MT: Ain’t “Typography” Grand?”…

I think I’ve figured out why I like Movable Type—it lets me be as anal as I want to be. If I want to micromanage how the list of categories on an entry are displayed, it responds with, “Well, ok, let’s sit down and think about this. I’m sure there’s a way we can do what you want to do.”

WordPress, on the other hand, responds with, “What? That’s stupid. Why would anybody do it that way? That makes no sense. The default version is fine.”

I appreciate software that indulges my obsessions.

This is the first in a series of posts I’ll be doing of MT hacks. Clearly, no sane person would want to do what I’m doing. But hopefully you’ll find some useful information about how MT works.

Continue reading “Driving on MT: Properly Punctuated Entry Categories List”…

First, apologies to folks who read this site via feed reader: You probably just found ten new posts from me in your reader, but only one is actually new. On the one hand it’s annoying, but on the other it’s a signal that you need to go to the site and see what’s changed.

In this case, quite a lot has changed. The Sandbox theme is gone. WordPress is gone. Now I have my own design—“TreeGoat”—built atop Movable Type 4.

I don’t know about anybody else, but I sure feel better.

The last 2.5+ years with WordPress felt like my blog and I were openly hostile towards each other. We never could see eye-to-eye. It didn’t want to do what I wanted to do, and vice versa. That’s what I like about MT—it always wants to do what you want to do.

Anyway, it’s late and I should be in bed. There are no doubt things that are broken. I’m sure there are pages missing, and posts that have been carried through countless redesigns that now look bizarre. Some of those things will get fixed, others won’t. Such is life on the web. That’s why we all stopped using “under construction” signs.

SmartGoat logo Yesterday, we officially launched the all new Smart Goat website. It has a new look, new features, and, with any luck, a new tendency to get updated regularly.

This redesign has been a long time coming. We’ve been working on it off and on for months, when time permitted. In the last couple of weeks, though, it’s been our primary focus. We’re looking at doing a lot of new projects in the next few weeks and we wanted a proper place to showcase those projects.

Over the next few weeks, I’ll be posting here about the technical aspects of the new site — the techniques we used and how it all came together. And on the Smart Goat blog I’ll be writing about why we did it the way we did and the business advantage of those techniques.

To start things off, here are a few highlights of the new site:

  • Movable Type 4 — The new site is completely powered by the new Movable Type 4. MT4 is an absolute joy to work with — so much so that when I get around to redesigning this site, it will go back to being an MT blog.

  • Newsletter — We’re going to be publishing an email newsletter about once a month. It will basically be the same as what’s posted to the blog, except with slightly more stories about goats.

  • Events & Links — The page footer displays business-related links we’ve delicioused and events we’re attending.

Best of all, the design is actually finished, something I never achieved with the previous design. And by finished I mean I still have a list of 30+ things I still want to do to the site. But still, it’s finished.

I haven’t seen this mentioned anywhere, so I thought I should mention it: If you’re running Movable Type under FastCGI and one day find that you inexplicably can’t login, try killing all the running mt.fcgi processes.

Don’t know what caused the problem, but that was the fix for me.

Via Mark Pilgrim: Add OpenSearch to your site in five minutes

Reading that, it occurred to me that it should be pretty easy to create a Movable Type template for the XML file. Fortunately, I didn’t think about it too long before Googling it — Firefox Magazine has complete instructions for doing this. One change I would suggest: Abstract the template even more by using MT tags for the search URL. To do so, change line 13 to this (line break added to simplify my life):

template="<$MTCGIPath$><$MTSearchScript$>?search= {searchTerms}&amp;IncludeBlogs=<MTBlogID>">