Security Patch for Movable Type

Via PhotoMatt (one of the lead WordPress developers), I learned that there’s a newly discovered security flaw in Movable Type that could allow spammers to commandeer your Movable Type setup as an e-mail gateway (by futzing with the comment page, since that already sends an e-mail to the blog’s administrator).

Fortunately, there’s now a patch available (via a plugin) which works with both MT 2.661 and MT 3.14. After downloading the patch, just upload it to your plugins directory and set its permissions to 755. That’s it. (If you need an ftp client which can set permissions, FileZilla is an excellent open source ftp client which can do that.)

Go Baby!

Ah, TiVo. It works in mysterious ways. For those of you sans TiVo, each TiVo can be set to record “Suggestions” — these shows are recorded based on ratings given to past shows. And, over the weekend, I had discovered that my TiVo had recorded Go Baby for me. Now, I have no kids, so I wasn’t sure why TiVo recorded it for me. But I then remembered that TiVo also records some suggestions based on aggregating the shows I like with the shows that other TiVo owners like (sort of like the “you might also like” feature at some online retailers).

So, I looked over the show’s details and discovered that it was only five minutes — so, suckish or otherwise, I figured that I had little to lose. Not having ever heard of the show, I had no idea what to expect (though I did have a hunch that it could be a children’s show). Well, the show starts up and it stars this live-action baby, animated South Park-style, via animating and rotating among a variety of photographs of the baby. Still confusing? Well, it turns out that the Disney Channel — the network which airs it — has the entire episode online (just click on “Farm” to see the episode which I’m writing about).

So, there’s this baby — who mostly just giggles and gurbles — and the narrator talks to the baby and the audience. And, it’s mostly just that silly dialect which adults adopt when conversing with babies:

Narrator: Look, Baby is on a farm. Baby is looking for a lost sheep today. Will you help Baby find the lost sheep?

[narrator points to a pig]

Narrator: Baby thinks that’s a sheep! Do you think that’s a sheep? [pause] You’re right — it’s not a sheep!

[…]

I was only slightly drunk at the time, but I found it hilarious. And, as I watched it a second and third time, I noticed that the narrator’ voice sounded awfully familiar but I just couldn’t think of who it was. Then it dawned on me that it was Richard Kind (yeah, “Paul Lassiter” from Spin City, among other roles). In any case, I now have a Season Pass for Go Baby :).

WordPress Meetup Tomorrow

There hasn't been a WordPress Meetup in a while (and I’ve never been to one) but it looks like they’re trying to get that started again. As a future WordPress user, I’m kinda looking forward to it — the Dallas Meetup is going to be tomorrow at 4:00pm at the Starbucks at Custer and Renner.

And apparently Ryan Boren will be there as well (he and Matthew Mullenweg are the two lead developers). Ryan also goes over some of the topics up for discussion in his blog entry about the Meetup ;).

The top secret release date for WordPress 1.5 will be revealed, and free “Licensed to Press” stickers will be given to those who agree not to gripe about nofollow. (Yes, I’m joking. No release date and no stickers for you.) […]

So, it looks like the official word is ixnay on the eleaseray ateday. All the same, it could be cool to get up to speed on all the new features going into WordPress 1.5 (and, yeah, they’re jumping from 1.2 to 1.5 because of all the changes since the last release).

Recipe: Chocolate and Cream Cheese Cupcakes

I brought some cupcakes in to work last week and I thought I’d share the recipe here. Thinking over what I should bring, I was looking for something more substantial than a cookie, but still hand-held (for the sake of easier office eating). I soon narrowed it down to cupcakes and I looked through the cupcakes section of AllRecipes to see if anything caught my eye — and the Chocolate & Cream Cheese cupcakes sounded pretty good.

So, I bought some cream cheese and cocoa over the weekend and made the cupcakes later that week. I made them with Splenda and I’m pleased with how they turned out. And, other than the flour and chocolate chips, the cupcakes were relatively low carb (well, by cupcake standards, anyway). There’s also a photo of the cupcakes at the RD2 blog. Anyhow, on to the recipe:

Black Bottom Cupcakes I

Prep Time: approx. 30 Minutes
Cook Time: approx. 30 Minutes
Ready in: approx. 1 Hour
Makes 2 dozen cupcakes (24 servings)

Ingredients:
  • 1 (8 ounce) package cream cheese, softened
  • 1 egg
  • 1/3 cup white sugar
  • 1/8 teaspoon salt
  • 1 cup miniature semisweet chocolate chips [regular-sized chips worked fine for me]
  • 1 1/2 cups all-purpose flour
  • 1 cup white sugar [or Splenda]
  • 1/4 cup unsweetened cocoa powder [I upped this to a heaping 1/3 cup, as recommended in the reviews]
  • 1 teaspoon baking soda
  • 1/2 teaspoon salt
  • 1 cup water [I used a cup of milk instead, as recommended in the reviews]
  • 1/3 cup vegetable oil
  • 1 tablespoon cider vinegar
  • 1 teaspoon vanilla extract

Directions:

  1. Preheat oven to 350° F (175° C). Line muffin tins with paper cups or lightly spray with non-stick cooking spray. [I both lined and sprayed, just to be sure.]

  2. In a medium bowl, beat the cream cheese, egg, 1/3 cup sugar and 1/8 teaspoon salt until light and fluffy. Stir in the chocolate chips and set aside.

  3. In a large bowl, mix together the flour, 1 cup sugar, cocoa, baking soda and 1/2 teaspoon salt. Make a well in the center and add the water, oil, vinegar and vanilla. Stir together until well blended. Fill muffin tins 1/3 full with the batter and top with a dollop of the cream cheese mixture.

  4. Bake in preheated oven for 25 to 30 minutes [I only baked mine for about 20 minutes, as recommended in the reviews].

The only change I might make would be to make extra cream cheese topping next time, as I almost didn't have enough for all of the cupcakes. But, other than that, I think I’d make these again sometime.

RD2 Blog: Design and Coding News

I’ve been working at RD2 since July and we started a company blog shortly thereafter (which was my boss’ idea, though I readily agreed with him). I hadn’t mentioned the company blog here yet, only because I didn’t want to prematurely announce a blog with only a handful of entries. But, it’s now been going well for a few months now and I thought it would be worth sharing.

My coworkers and I have been adding entries on everything from css-based image rollovers to the pumpkin scones at Starbucks. Here’s a sample of some of the entries which I’ve written:

  • Image Replacement with CSS Based Rollovers — if you haven't dealt with non-rollover image replacement, it would probably make more sense to read the entry on regular image replacement first.

  • The Holy Grail of CSS Layout Techniques? — Through a combination of floated page sections (content, navigation and so on) and auto-float-clearing, you can selectively clear floats (and not just clear floats straight across the browser window). This is pretty nifty, well, for CSS developers :).

  • Hiding Text But Not From Screen Readers — You would think that you could just use display:none to hide text from visual browsers while letting it through for screen readers, but it doesn't quite work out that way. Fortunately, there’s a way around that.

  • Back to the Firefox Trunk Builds! — The Firefox 1.0 release was based off the Firefox “branch” while development on the rendering engine continued on the “trunk”. What does all this mean? Well, the Firefox trunk builds are good enough to use these days and they’re worth a try.

  • May as Well Set Floats to Display: inline — Floated elements are automatically set by the browser to display:block — or, that's what's supposed to happen, anyway. In IE, if you try applying a margin in the same direction of an element’s floating (such as margin-left on a float:left element), IE will double the margin! But, setting the floated element to display:inline can get around that.

So, I’ve generally written my more technically oriented entries at the RD2 blog while I’ve written much of my non-technical entries here. In some ways, it’s as if I have two blogs now, though I’m sharing the RD2 blog with the other people with whom I work ;).