Coffee Shop Writing: Day 3

Treo 650 Palm-powered smartphoneOne of the tricky things about blogging for me is that I almost always compose blog entries in WordPress’ editor. This means that I have to have an Internet connection in order to write. Only one time in recent memory have I begun writing a blog entry offline: my love letter to giant crocodilians was born on my Treo 650 while I was in a restaurant waiting to meet Laura and Kyle for dinner after work one day. Writing on the Treo isn’t anything approaching fun. Granted, it has a “full” keyboard, which I prefer when sending text messages, but anything beyond the 140-character bursts of text that comprise SMS messages is a bit of a chore.

I used to carry a small notepad and pen in my back pocket, intending to write blog entries (and story ideas and anything else I needed to capture when I was away from a computer) longhand and then transcribe them to WordPress at my leisure. It was a great theory, and if you can’t see where this is going you haven’t been listening to me whine about not being able to write long enough.

This week, Chris Miller and I began meeting at a local coffee shop for an hour before work to write. I started working on a short story that had been rattling around in my head for all of fifteen minutes before I sat down at the coffee shop; Chris wrote a blog entry. I couldn’t get on the coffee shop’s wi-fi network until this morning, when I finally realized that I needed a WEP key. Now I have access to the dread Internets and all of the distractions they bring; I could, were I so inclined, fire up WordPress and bang out a blog entry—writing is writing.1

Geany - A GTK2 Text EditorInstead, I’m writing this in Geany, the Puppy Linux equivalent to Microsoft’s Notepad. It’s an experiment of sorts: focus on the content and worry about the formatting later. Because when I write in WordPress, I’m constantly previewing the entries to see how they flow on the page (especially if I’m including any kind of graphic) instead of just writing until I feel like I’m done and then going back to tweak and nudge things or, in other words, edit. It’s bad enough that I constantly edit the content while I’m writing (something I’ve never really been able to completely abandon, despite four years of NaNoWriMo), but when I’m in a WYSIWYG editor I constantly mess with the formatting, as well. I just have a hard time dealing with the concept of a draft; everything has to be as finished as I can possibly make it before I move on to the next page, paragraph, sentence or word.

Writing doesn’t work that way in the real world, and I’m very well aware of that. Of course, there’s a big difference between recognizing your weakness and overcoming it. But this is the first step in a new experiment: content first, formatting last. I’ll finish writing this draft in Geany, then copy and paste it into what passes for a Write Post interface in WordPress these days2 and make any edits before posting. Or maybe I’ll just delete the whole damn whiny, introspective, woe-is-me mess and move on and no one (except Chris, who knows I’m meta-blogging right now) will be any the wiser.

  1. It feels like a cop out to be meta-blogging on this, the third day of coffee shop writing, but the fiction I’m writing has turned into a parable, for crying out loud, and all of a sudden I need to have a moral for the story; I, who can never see the end of a story when I begin writing it, need to be able to wrap the whole thing up and say this is the lesson we’ve learned, children. Yikes. [back]
  2. Bitter much? [back]

WordPress 2.5: The Write Post Interface

WordPress IconShortly after I installed WordPress 2.5, I blogged at length about my experiences with (and dislike of) some of the “new and improved” features of the administrator’s interface. The Write Post interface was a particular bone of contention with me, but my co-host at The Secret Lair made it known that he thought the entire design of the administrator interface was poorly done. You can find our discussion in Episode 0009 of the podcast, beginning at the 07:57 mark.

A couple of days ago, Matthew Hill1 left a comment here directing me to a very helpful post on the official WordPress Support Forums. As I began exploring the forums, I discovered that Chris and I were hardly alone in our feelings toward the WordPress 2.5 Admin interface. There are several threads at the forums devoted to the administrator interface, with special attention on the Write Post screen and the Widget control panel.

One thread in the Requests and Feedback forum caught my eye, as there were more than 100 replies when I began reading it, with new replies continuing to trickle in at a fairly steady rate. I felt somewhat vindicated to learn that other WordPress users were being very vocal about their dislike for the new Admin screens, and more than a little disheartened at a forum moderator’s attitude toward people posting on a forum that is clearly labeled as being designated for feedback and criticism:

Well, prepare to continue to be annoyed then…

WordPress developers generally don’t comment in these forums, as a rule. They’re too busy developing. If you want a say in the code development, then login to the bug tracker and make your comments there. Submit patches to the code. Whatever.

But really, please, stop complaining about it here. These are support forums, for people with actual problems. Not liking the layout is an opinion, not a problem. And this is really not the proper place to vent opinions or to suggest changes to WordPress.2

More disheartening than Otto42’s attitude, however, was his assertion that the development team simply doesn’t pay attention to the “Requests and Feedback” forum, leading me to wonder why they would even bother having forums in the first place.

Fortunately, a number of users were doing more than just expressing their dislike for the new Admin interface: they were diving into the WordPress code to do something about it. The post Matt linked to contained information about a hack created by Judy Becker of the knitting blog, Persistent Illusion. That’s right, a blogger whose focus is knitting hacked WordPress 2.5 in order to make the Write Post screen resemble the old WordPress 2.3.3 interface.

Judy’s hack moves the Categories, Comments & Pings, Tags, Post Author and Password Protect sections (what someone collectively referred to as the meta-data sections) to the right of the editor window, much as they were in WordPress 2.3. Unfortunately, since the changes require modification to some core WordPress files, it doesn’t appear that what Judy has done could be accomplished with a simple plugin, but I wasn’t about to let that stop me.

I applied Judy’s hack and, lo and behold, the Categories section was back where it belonged: to the right of the post editor. If only there were some way to fix some of the other design flaws:3 an overabundance of white space above the editor, unnecessarily large typeface for the blog title, etc.

Then I found the Fluency Admin plugin, which “re-skins” the entire WordPress Admin interface. Fluency arranges the major admin functions (Dashboard, Write, Manage, Design, Comments, Settings, Plugins and Users) in a column on the left side of the screen, while displaying sub-functions across the top. The interface feels cleaner and tighter, though I still think that some of the space above the fold could be put to better use.

Unfortunately, the Fluency plugin didn’t look so great with Judy’s hack: the repositioned sections overlapped the editor, making the whole thing feel very cludgy, which it was; the hack and the plugin weren’t designed to be complementary, after all. Rather than give up, I decided to do a little hacking myself. I tweaked some of Judy’s CSS to fix the overlap problem and hacked the postbox JavaScript file to remove the “twisties”4 from the section headers. The result is very satisfying. Compare the two screen shots below: the first is the default WordPress 2.5 Write Post screen, the second is the Write Post with the Fluency Admin plugin and Judy’s hack applied.

WordPress 2.5 Write Post Screen (Default/Safari)
WordPress 2.5 Write Post Screen (Hacked/Fluency/Safari)

There are a couple of drawbacks to this approach. First, the Fluency Admin plugin only works on CSS2 compliant browsers. That’s not a major problem because I do the majority of my blogging from Firefox, SeaMonkey, Flock and Safari, all of which display Fluency quite nicely. Every once in a while, I’ve got use Internet Explorer 6 or 7, neither of which is CSS2 compliant, so the Admin interface reverts back to the default theme with the hacks Judy and I made. It’s not entirely pretty, but it’s still functional and still better than using the standard interface.

WordPress 2.5 Write Post Screen (Hacked/IE7)

But ultimately the biggest problem is that I’ve had to utilize a hack to fix a user interface issue, a hack that will be overwritten with the next WordPress upgrade. The likelihood that the interface will be improved with that upgrade seems slim, given that a request to revert the layout of the Write Post screen was deemed “invalid” by the developers,5 which means that I’ll have to re-hack WordPress after the upgrade.

Okay, I was wrong: the biggest problem is the lack of any kind of official response to the community feedback. Several people have reverted back to WordPress 2.3.3 rather than fight with the new Admin interface, some are simply not upgrading, and I suspect that others may jump to another blogging platform. Me? I’ve got a hack in place that I can live with for now, but I’m only going to re-hack WordPress so many times before I start looking elsewhere.

  1. Check out Matthew’s own views on the change in his blog post, WordPress gets it wrong…and goes deaf. [back]
  2. Initial response to users by forum moderator Otto42. [back]
  3. Yes, I call them “design flaws”, and I will continue to do so. The attitude that the only constructive approach to resolving these issues is to suggest a solution that does not involve reverting back to the WordPress 2.3.3 design because that would constitute a step “backward” is simply pig-headed. The changes to the design could hardly be called a step forward, as they forced efficiency and functionality to take a backseat to making the screen look simple “above the fold”. [back]
  4. Also known as “disclosure triangles”. [back]
  5. So much for following Otto42’s advice. [back]

Gravatars

WordPressOne of the things I like about WordPress 2.5 is the native support for Gravatars, globally recognized avatars. The idea is pretty simple: register with your e-mail address at the Gravatar site, upload a picture (I used a photo of myself, but that’s not a requirement). Once your account is set up, anytime you leave a comment on a Gravatar-enabled blog, your e-mail address is sent (using the magic of cryptographic hashing) to the Gravatar server. The server then does what servers do best: it serves; specifically, it serves your globally recognized avatar to the requesting blog, which then (typically) displays said avatar next to your comment.

Here’s a sample comment from my WordPress 2.5 upgrade post:

Blog comment with Gravatar.

That [handsome] fellow in the corner of the comment should look familiar, and if P.G. Holyfield had a Gravatar account his comment wouldn’t display the generic “Oh, no, I don’t have a Gravatar!” image1 in the upper left:

A comment from a user who does not have a Gravatar account.

Each Gravatar has a content rating—G, PG, R or X—and WordPress has a “Maximum Rating” option that determines whether Gravatars of a given rating will be displayed. I try to maintain a family-friendly blog for the most part, so I’ve set the Maximum Rating to PG, which won’t prevent people with photos of “Lando and the Ugnauts” as their Gravatar from commenting, but will prevent said photo from displaying next to their comment. Seriously, put that thing away before you get us all killed.

Originally, I was going to use a WordPress plugin to handle Gravatar-wrangling, but when I discovered that one of the features of WP-Gravatars made my blog spew green pea soup (or lose its database connection; I forget which), I started poking around for alternative solutions. As it turns out, I didn’t have far to poke: Sandbox, the WordPress theme that serves as the underlying framework for my custom blog theme, had recently released a new version with Gravatar support. Once I had the latest version of Sandbox installed, it was just a matter of tweaking the CSS to style the new Gravatar-enabled comments the way I liked and voila, one Gravatar-enabled blog.

If you start browsing through old comments on the blog, you’re going to notice something: most of the people who comment here don’t have Gravatars.2 That’s fine; I’m okay with adding a feature just for folks like Jason Penney, Sam Chupp and Cynthia Armistead, especially if knowing that their smiling (or illustrated) faces will show up on my site encourages them to comment more.

Should you use a Gravatar? It’s up to you. If you’re worried about your e-mail address being used for nefarious purposes (like flooding your inbox with ads for Lando-enhancement products), consider this: Gravatar is owned by Automattic, the same folks who make the spam-comment-killing Akismet plugin (the very plugin that has backhanded nearly 110,000 spam comments on this blog and kept it from becoming a nightmare to maintain). You think they’re gonna sell your e-mail address to spammers?

  1. Or perhaps the “Oh, no, I provided a fake e-mail address in the blog comment form!” image. [back]
  2. Or perhaps they have naughty Gravatars and I won’t display them. [back]

Welcome to WordPress 2.5

WordPressWordPress is the finely-tuned mechanism that keeps this site ticking and—like a wristwatch—it does so whether anyone is looking or not. On the surface, things appear to be quite simple: the big hand and the little hand do their little circular dance hour after hour and usually we don’t think about the tiny cogs and gears and springs all precisely meshed together…until something goes horribly wrong. Then we’ve got to flip the thing around and take the bezel off. If we’re lucky, popping in a new battery does the trick (but totally throws the whole spring-loaded movement analogy out the window); if we’re not, someone’s going to have work to do.

Upgrading WordPress is typically like changing a watch battery: if you know what you’re doing it takes about five minutes and you’ve just got to make a minor adjustment or two to get everything synced up again.

Now imagine that you change the battery in your watch, pop the bezel back on and flip it over to discover that the stem has been moved to the opposite side. It’s a little inconvenient, but you manage to reset the time anyway. And in doing so, you notice a nifty new dial that keeps track of the phases of the moon, but it doesn’t seem to work properly. In fact, the entire face of the watch has been rearranged, the numbers all squished to one side and set in the opposite order, probably to accommodate for the fact that the hands now seem to be moving backwards.

That’s a bit like what upgrading to WordPress 2.5 was like.

Okay that’s a bit of an exaggeration. WordPress isn’t running backwards. It still works. Sort of. I mean, I’m blogging, aren’t I?

At first, before the “gee whiz, this is shiny and new” wore off, I thought, “gee whiz, this is shiny and new!” I fiddled around with the redesigned administrative interface, figuring out where everything was, spotting a few new things here and there. Then I started to use the new interface, probably in the worst possible way one could choose to test drive it: I recategorized 500+ blog entries.

Let me explain why this is bad. First, let’s have a look at the old WordPress interface. This is what the write/edit post screen used to look like:

WordPress 2.3 Write Interface

Recategorizing a post was simple: click “Edit”, select the new categories on the right, de-select the old ones, click “Save”. Done! This is how I did the first hundred or so posts, before I upgraded to WordPress 2.5.

Now here’s the same screen after the upgrade:

WordPress 2.5 Write Interface

Okay, so we’ve got a smaller editor, a column of white (or negative) space occupying the right fifth of the screen, and where did those categories go? Well, they’re below the editor. But not right below the editor; that’s where the Tags section is. But below the Tags is the Categories section, so it’s not too far away.

Unless you’re recategorizing several hundred blog entries. Now you’ve got to scroll down to select the categories. Every single post. Edit. Scroll. Select categories. Save.

Making the whole process even more tedious (as if that were possible), is the fact that there’s no more “Save and Continue Editing” button. This is because the “Save” button is now the “Save and Continue Editing” button. Which means clicking “Save” after editing a post doesn’t return me to the screen on which I selected the post to edit, it saves the post and reloads it, just in case I want to keep editing. Which, in this case, I most certainly don’t. And so now my process is: Edit. Scroll. Select categories. Save. Wait for page to refresh. Click “Go Back”.

Four. Hundred. Times.

Now, this might seem like a pretty minor gripe, but it’s not. It’s huge. Because the simplest of blog posts on this site has just four elements: title, content, category and tags.1 Prior to WordPress 2.5, all four of those were above the scroll. Everything was right there in front of me and unless I wanted to add an image (more on that in a bit), no scrolling was necessary. Now, not only do I need to scroll to select a category, but thanks to the clutter above the editor I’ve got to scroll to enter tags, as well.

It’s only a matter of time before someone publishes a plugin that will overlay the default WordPress 2.5 administrative interface with something that resembles the interface from the previous version. When that happens, I’ll be first in line to install it.

But what about adding those images?

Sweet Elyse, mother of Alex P., if there is a feature of WordPress 2.5 that makes me want to gouge my eyes out, it’s the new media functions. The simple upload interface has been replaced with a Flash and JavaScript monstrosity that looks like the bastard child of Lightbox. Don’t get me wrong, Lightbox is great for displaying images and slideshows—clicking the screen shots in this very post will demonstrate how it works—but it’s absolutely horrid for file management, even if those files are photos and screen shots. Dropping the blogging interface into shadow when you want to insert an image is unsettling; there’s no way to verify that you’ve got your insertion point set correctly, because clicking outside the “lit” portion of the window causes the media library to close.

WordPress 2.5 Insert Image Interface

The previous version of WordPress, on the other hand, used much more straightforward interface, with the image selection and insertion all handled without fancy JavaScript popups and with the editor available on the same screen so inserting at just the right spot was a breeze.

WordPress 2.3 Insert Image Interface

Simplicity has been replaced with glitter and the end result is clunky at best (and just plain doesn’t work on some PCs I use). Again, as soon as someone creates a plugin to do away with the new “media library” features, I’ll install it. Hell, if I had the programming chops, I’d just whip up the plugins myself. Alas, I’m too busy bitching about free software to learn the necessary skills to solve the problems I perceive.

But that’s the great thing about WordPress, after all: the community of developers who pour their time and talent into putting out new versions, new plugins and new themes. And that’s why I’m not going to let a couple of speed bumps turn me away from the blogging platform that I’ve come to love and rely on since I switched over from Moveable Type way back in January of 2005.

But seriously, someone get to work on those plugins. Pronto.

  1. Technically, only the category is required. Posts can be published without a title, content or tags, but WordPress will set a default category if one isn’t selected. Which makes putting the Categories section below Tags all the more baffling. [back]

Sitestuff: Theme work in progress.

KJToo.com Screen ShotI spent a good deal of time this weekend fiddling around with the Sandbox theme from plaintxt.org. Plaintxt.org is the brainchild of Scott Wallick, and he describes it as “[m]inimalism in blogging: an experiment out of control”. In the two and a half years since I installed WordPress, I’ve used at least three of Scott’s plaintxt.org themes: Barthelme, plaintxtBlog and now Sandbox.

Where Barthelme and plaintxtBlog are both fully developed from a visual standpoint, Sandbox is more like a blank slate upon which a design can be built; think of it as an unfrosted cake ready for anything your imagination (and your skill with a tube of colored frosting) can throw at it.

If you’re familiar with the old look of the site, it might appear that all I’ve done is shift the left sidebar over to the right, and there’s good reason for that: my goal was to, in essence, recreate the basic look of Brian Gardner’s Blue Zinfandel theme, but with two right-hand sidebars instead of one on either side of the main column. Ultimately, the changes to the design will be significant enough to fully distinguish it from Brian’sI’ll start by designing my own post-separator graphic., but I thought it would be interesting to see if I could mimic at least part of his crisp, clean look using Sandbox as a base.

I’m pretty pleased with the outcome so far. There are areas that still need work (the far right sidebar has a tendency to drop out of place when viewing a single post with Internet Explorer, for example), but the basic look is coming together nicely. I’ve had one person tell me they’re not a fan of the dual sidebars on the right-hand side, but I don’t think that’s going away anytime soon.

As always, I encourage anyone with an opinion on the design to share it with me in the comments. I know that the archives and library pages are a mess right now, and I’ll post an update when I’ve fixed them, but if you see anything else that seems out of place, needs improvement, or is just plain ugly, let me know.