The problem with cool URLs

June 28, 2006

Back around 1999, Tim Berners-Lee wrote Cool URIs don't change, which is about how your URLs shouldn't change (and he gave advice on how to manage it). People have been nodding sagely every since (I hope, since it's a good idea). But there's a problem.

The problem with cool URLs not changing is that it means that your URLs are forever. This means that you either have to get the URL right before you publish it for the first time (leading to taxonomy issues among other things), or you have to keep supporting the old crufty ugly URLs forever (even if they just give HTTP redirections to the new URLs).

Most people aren't going to get their URLs right the first time around, because structuring information is not a small and simple matter (despite how it looks; ask a librarian about it sometime).

Supporting old URLs is a deadweight on your web environment; it's a kind of clutter. Clutter makes things harder to maintain and to keep track of. (Plus you have to actively avoid namespace collisions between new URL schemes and old URLs, which may constrain what sort of new schemes you can use.)

Ironically, you can argue that the best long term approach is more or less meaningless URLs, plus searching and navigation to let people find things. When a URL doesn't mean anything to start with, there's no temptation to change it because you've realized that the meaning is wrong.


Comments on this page:

From 139.78.115.103 at 2006-06-28 10:58:11:

Right, thus notions like Formal Public Identifiers and/or Universal Resource Names. Which is not to say that you couldn't botch those the first time out, either. But essentially, Google (or the like) gets used as a Fuzzy Public Identifier lookup. Which, as you say, is not necessarily a bad way to handle it.

-Random

By cks at 2006-06-28 14:45:33:

For meaningless URLs, I was also thinking of things like LiveJournal's URLs for LJ entries, which are mostly meaningless digit strings (plus a .html that Berners-Lee probably wouldn't approve of). LiveJournal's URLs have about the minimal structure they can, although they do include the posting user.

(I wonder how LiveJournal handles people renaming their LJ. Probably the old URLs go invalid instead of getting redirected.)

From 68.165.135.79 at 2006-07-01 09:37:46:

If somebody just deletes their old journal and starts a new one, the old URLs go invalid, but if you buy a rename token, they do in fact redirect old URLs to new. Which I believe causes a problem if you ever change your mind and want to go back to your original name...

-- Squiddhartha

Written on 28 June 2006.
« More on the Solaris ssh stuff (part 2)
screen -x »

Page tools: View Source, View Normal, Add Comment.
Search:
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Wed Jun 28 03:32:54 2006
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.