
Cool URIs Don't change - Bluem00
http://www.w3.org/Provider/Style/URI
======
Bluem00
I just noticed that this classic piece of advice has never been directly
posted to HN.

I think that giving "things" a name is one of the hard problems that
programmers tackle every day. Normally our success or failure at choosing good
names is kept hidden, and can only be seen by those who look at our code.
Websites are one of the rare places where the world at large has to deal with
our mistakes.

~~~
michaelneale
Yes - until we get an internet wide refactoring option:

"Apply this change to the entire freaking internet?" y/N>

------
snorkel
At least make urls all lower case. Consider how tedious it is spell out a url
over the phone which happens quite often. "... dot com forward slash u s e r
... no, capital U on user ... upper case U ... user is upper case U ... no,
the rest of user is lower case ...after the slash ... the forward slash...
I'll start again..."

~~~
dmoney
Case-sensitivity was a cruel joke.

------
brlewis
Unfortunately, search engine optimization is moving people to put even more
topic-related words in URLs than they did 10 years ago when this was written.

------
TheWama
+1 for content negotiation. Extension-less URLs are just plain sexy.

~~~
simonw
Extension-less URLs are great, but I'm not a fan of content negotiation. I
like to be able to copy and paste a URL to someone and know that they are
going to retrieve the same piece of content as I did. I don't like language
negotiation for the same reason - if someone finds a typo on my French
language site and sends me a link to the page but I see it in English I won't
know what they're talking about.

~~~
bct
That's the conventional wisdom, but I'm not completely convinced that those
are real problems.

If you send someone a content-negotiated URL you can be pretty confident that
they'll see the text/html (or application/xhtml+xml :-) version).

Similarly, any typo report more specific than "there's a typo somewhere at
this URL" will tell you what you need to know.

