Wandering Thoughts archives

2007-03-29

Usability issues with blog URLs

It's surprising how many little things about web usability you discovery when you write your own version of things like blog software; the whole experience can be very educational. Unfortunately, I've mostly discovered these issues by stubbing my toes on them.

For instance, consider the usability issues of weblog URLs. Take what appeared like an initial and obvious idea: having an entry's category appear in its URL. It turns out that this is a really bad idea, and I can boil why down to this:

Never put anything in an URL that you might want to change.

This is because cool URLs don't change. If an entry's category determines its URL, you can't later decide that the entry belongs in a different category and move it without a bunch of annoyance (if at all). This bit me once here, when I decided I really did need a unix category for entries about generic Unix stuff; before then I put such entries in sysadmin, where many of them still are.

(DWiki makes this worse because it's more or less forced to use an entry's URL as its Atom identifier, which has to remain absolutely stable or I spam people's syndication feeds with duplicate entries.)

You can argue that an entry's title can also change, and while that's true the logical conclusion of that thought is something like LiveJournal entry URLs, which are more or less meaningless digit strings. Putting some version of the title in the URL gives people (and sometimes search engines) clues about what they'll find at the URL, and in turn probably entices them to visit.

Another thing I've discovered is how nice it is to put dates in entry URLs. Entry dates are important because most blog content gets stale sooner or later; putting an entry's date in its URL gives people an immediate clue about how current the entry is, even before they visit the page.

(A blog entry's date is also unlikely to change.)

web/WeblogUrlUsability written at 15:17:40; Add Comment


Page tools: See As Normal.
Search:
Login: Password:
Atom Syndication: Recent Pages, Recent Comments.

This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.