WordPress has been making a big deal out of their new default theme, Twenty-Ten, released with WordPress 3.0. Meanwhile, I’ve been watching this site get more and more cluttered, and I keep having to tweak the existing theme to be able to deal with new WordPress features like nested comments, custom menus, etc.

Last week I had to replace the theme’s comment form (fortunately with something simpler) because it didn’t interact quite right with WordPress 3.0.

What the heck. I haven’t changed the look since 2007, so I might as well give it a shot.

I’ve switched over to Twenty-Ten, using one of my own photos for the banner. It’s a view from Modjeska Grade Road, taken last January.

Modjeska Grade View

I’m not quite happy with it yet, but I’m not sure what I want to do next.

My main goals for the new layout are:

  • Move the last of the customizations out of the theme and into plugins (so that I can easily switch to another theme if I want to).
  • Keep the new page uncluttered and relatively fast-loading (which is why I haven’t added everything back to the sidebar).

I have had to make a couple of adjustments to the theme itself. Twenty-Ten insists on showing excerpts instead of complete posts for archives, categories and searches, so I had to go in and modify that. I also added a couple of bits to the stylesheet: alternating comment backgrounds, tweaks to the old Twitter digests, etc. Still, I’m making a point of keeping those changes minimal and grouped together.

I’m also trying out WP-Minify, which should make scripts and styles load a lot faster, or at least the ones hosted locally. Unfortunately there are still a lot of remote scripts for things like Google Analytics, the Share This buttons, and the Link Within thumbnails. Some of them might work. I’ll have to experiment.

So, things are in a bit of flux. Please let me know if you find something that doesn’t work, or miss something that used to be here, by doing one of the following:

  • Leave a comment on this post.
  • Use the contact form.
  • Email me at kelson – at – pobox – dot – com.

Thanks!

I’m really impressed with the new version of WordPress Mobile Edition. It handles both the low-end and high-end (iPhone, Android) devices cleanly and efficiently. I was using a three-tiered setup with WP-Mobile for basic phones, WPTouch for iPhone and Android devices, and of course the regular theme for desktops, but it seems simpler to drop WPTouch for now.

The IEBlog recently posted about their efforts to improve reliability in Internet Explorer 8, particularly the idea of “loosely-coupled IE” (or LCIE). The short explanation is that each tab runs in its own process, so if a web page causes the browser to crash, only that tab crashes — not the whole thing. (It is a bit more complicated, but that’s the principle.) Combine that with session recovery (load with the same set of web pages, if possible with the form data you hadn’t quite finished typing in), and you massively reduce the pain of browser crashes.

I’d like to see something like this picked up by Firefox and Opera as well. They both have crash recovery already, but it still means restoring the entire session. If you have 20 tabs open, it’s great that you don’t have to hunt them down again. But it also means you have to wait for 20 pages to load simultaneously. It would be much nicer to only have to wait for one (or, if I read the IE8 article correctly, three).

Edited to add:

On a related note, I’ve run into an interesting conflict between crash recovery and WordPress’ auto-save feature. If you start a new post, WordPress will automatically save it as a draft. If the browser crashes, it will bring up the new-post page, but restore most of the form data you filled in. So the title, the text of your post, etc will all be there. But WordPress will see it as a new post, and you’ll end up with a duplicate.

This wasn’t a major problem when I encountered it — I had to reset the categories, tags, and post slug after I hit publish (since I hadn’t noticed that they’d been reset to defaults), and I just deleted the older, partial version of the post — but I can imagine if I’d uploaded an image gallery, I would have been rather annoyed, since there’s no way (that I’ve noticed) to move images from one post to another. Reuse them, sure, but not such that the gallery feature would work.

At lunch today, I saw a woman, probably in her 50s, wearing a fitted black T-shirt that said, in sparkly letters, “BOTOX”. Srsly. I couldn’t find any pictures of the design, but a commenter here says it’s a promo handed out to staff at plastic surgery clinics.

Comic-Con has completely sold out. Hmm, let me rephrase that. There are no more memberships available for this year’s Comic-Con International in San Diego.

Spam Karma has gone GPL — After years of support Dr. Dave has decided to stop maintaining his spam plugin and turn it over to the open-source community. The project is now on Google Code. Update 2015: And now it’s on GitHub.

Since Gravatar was bought by Automattic, the service has been a lot more stable. I had already re-enabled them on this blog before WordPress 2.5 came out with built-in Gravatar* support.

Not everyone has a Gravatar, though, so many comment threads just show the default icon, over and over. Not only does this look boring, but it misses out on the whole point of using an avatar: providing an easy at-a-glance visual distinction between each author.

When I first used Gravatars on this site, I set it up to use a giant first initial as a fallback. Now, I’ve been trying out two plugins that will automatically generate avatars for people who don’t have their own:

  • Wavatars builds up cartoony faces using geometric shapes. Interestingly, it’s by Shamus Young, author of the screencap-based webcomic DM of the Rings and writer of Chainmail Bikini.
  • WP_Identicon sounds like a Transformers faction, but produces a geometric pattern as inspired by Don Park’s Identicon, which built a similar image based on a visitor’s IP address. The same author also has one that generates cartoon monsters, which appears to be one of the earliest implementations of this concept.

These plugins will use a Gravatar if available, or else generate an image based on the commenter’s email address (if supplied). That means each comment by the same person should use the same image. Other blogs using the same plugins at default settings will come up with the same avatar for each commenter, as well. The images are stored in a cache, so each only has to be generated once.

6 Wavatars to the left, 6 Identicons to the right

Once I made sure both plugins worked, I showed the results to Katie. We ended up settling on Wavatars, since faces are easier to recognize than patterns. (Though the patterns are really cool!)

You can try out the automatic avatar by leaving a (relevant, please!) comment on any post. Or you can run over to Gravatar and set up an icon of your choice!

*What’s a Gravatar? The intent is to be a Globally Recognized Avatar. You upload an image to Gravatar and associate it with your email address. Then any site with Gravatar support will be able to display your image next to your posts. Right now it’s mostly used in blog comments, but it could easily be worked into forums, wikis, etc. The Gravatar Blog mentions other uses they’ve seen people apply it to, such as plugins for Thunderbird and the Mac OS X Address Book

Note: I did notice one important drawback to the WP_Identicon plugin: it’s very inefficient at generating the images. When I first visited posts with long comment threads, like Another One Bites the Dust (174 comments) and Songs Not to Play at a Wedding (87 comments), WP_Identicon took over a minute to generate all the icons and maxed out the server’s CPU. Sure, the images are cached, so it’s only really an issue when you first install the plugin (unless you get a lot more people commenting at once than we do here), but to compare, Wavatar on an empty cache finished the same posts in just 4 seconds and 2 seconds, respectively.

With the recent rash of Trackback spam, I finally bit the bullet and am now experimenting with Akismet in addition to Spam Karma. I’m not sure how well they work together, or, at this point, which plugin processes the comment first. Update: I’m trying Akismet on its own for now. Or, more precisely, Akismet as the sole second line of defense. Bad Behavior is still holding the front line.

Update (Feb 14): I’m now back to using Spam Karma 2, but with a plugin that uses Akismet as one of the score components. This seems to be working well, as SK is able to block the ridiculous stuff (100 porn links in one comment, etc.), and Akismet is able to catch the trackback spam that’s been passing SK2 by temporarily including an inbound link.

The big problem I had with Akismet was that aside from the age of the target post, the blocked comments weren’t sorted or filtered in the admin interface. I was having to look through ~30 comments a day for false positives. Spam Karma will show only the borderline comments by default, and uses a table structure that makes it easier to skim.

This way, though, I get the proverbial best of both worlds.

Browse HappyI didn’t see that one coming:

BrowseHappy Now Part of WordPress as WaSP Refocuses Mission.

Apparently the Web Standards Project decided they’d be better off remaining neutral. So they’ve handed it off to WordPress, who has been promoting Firefox on their website and in the admin interface for months.

It’s an odd fit, but who knows? Maybe the new management will be insterested in adding some more varied testimonials (they’re almost all Firefox right now).

(via WaSP Buzz)

Update: WordPress has posted their own announcement.

Update 2: MacManX has pointed out that lead WordPress developer Matt Mullenweg is a WaSP member, which helps explain the “Why WordPress?” question.

Update 3: I imagine the WaSP/Microsoft collaboration was probably a factor.