HN.zip

Cool URIs Don't Change (1998)

208 points by Klaster_1 - 50 comments
torh [3 hidden]5 mins ago
Not that long ago I clicked on a link that Microsoft provided somewhere in Windows -- could have been the event log, I don't remember. I do remember it was for a specific support article, but it ended up at a generic landing page for something. I am not talking about a link from Windows 95, it must have been Windows 10. But regardless, it is all gone. Then again, it probably wasn't a cool URL to begin with.

It's amazingly many news sites that also seem to scrub their URLs every time they do a redesign. Also uncool.

phillipseamore [3 hidden]5 mins ago
Got an MX4 yesterday and it has a printed card with "Go to logitech.com/mx to get started" resulting in a "Forbidden" error page. This product hasn't even been out for a year!
mikepurvis [3 hidden]5 mins ago
Might have been an overeager packaging designer that printed that and then filed a ticket for someone to set up the redirect and that ticket is still in the person's queue.

Or it's something about your own connection. Maybe an ad blocker? For me, the redirect works:

    $ curl -IL logitech.com/mx 2>/dev/null | grep http
    Location: https://logitech.com:443/mx
    location: https://www.logitech.com:443/mx
    location: https://www.logitech.com/en-ca/mx.html
(I have the Mechanical Mini keyboard and the 3S Anywhere mouse; I like the MX product line.)
phillipseamore [3 hidden]5 mins ago
I'm currently in Europe and forgot my Unimouse, hence the purchase. I just tried on 5G and get a Forbidden there as well, open the VPN back to US and then the URL works. I see "en-ca" in your redirec there so likely they don't have a default/fallback redirect. The MX4 is nice but damn if it isn't the heaviest mouse I've pushed around a tabletop.
BoorishBears [3 hidden]5 mins ago
MX4 finally got me looking elsewhere until I stumbled upon this: https://ergodriven.com/products/the-vertical-handshake-mouse

I got it specifically because they had a mini rant about the weight of switches that other vertical mice use, and while I couldn't tell if that was a real problem, that's the kind of mentality I used to ascribe to Logitech.

The MX4 is clearly marketing logic. The haptic feature adds nothing of note, and 100% feels like their marketing people got to preempt the core goal of making an ergonomic mouse so they could have a headline.

what [3 hidden]5 mins ago
The hand is very off putting, should have hired a better hand model. Also real infomercial vibes, the way the posture completely changes between flat and vertical.
aftbit [3 hidden]5 mins ago
Jeez that's a heck of a redirect chain. The :443 is an odd choice no? And the redirect to https://domain before https://www.domain. There are even two more for me. Also... inconsistent casing for the Location header? Different parts of the server stack I suppose.

    Location: https://logitech.com:443/mx
    location: https://www.logitech.com:443/mx
    location: https://www.logitech.com/en-us/mx.html
    location: https://www.logitech.com/discover/c/master-series
    location: https://www.logitech.com/en-us/discover/c/master-series.html
NoahZuniga [3 hidden]5 mins ago
443 is just the default https port, so not really? It doesn't add anything as browsers use that port by default when the scheme is https.
selcuka [3 hidden]5 mins ago
That URL works for me. It must be an issue on your end.
phillipseamore [3 hidden]5 mins ago
Seems to be country/geoip dependent.
sixtyj [3 hidden]5 mins ago
Average time of url is 5 years.

Therefore I try to make a local copy of a document that I link to.

There a plugin for Firefox that can check bookmarked links. You will be surprised how they vanish pretty fast…

phatskat [3 hidden]5 mins ago
I bought an air conditioner last year, some wal-mart “smart” AC that was affordable (we had to get three for the new house we moved in to so budget was a big concern) and it has a QR code for the companion app. I finally got around to getting the app this summer and lo and behold, it’s a dead link. Yay.
beached_whale [3 hidden]5 mins ago
Microsoft has a terrible habit of doing that. KB's used to have a predicable URL, they may again, but they keep changing them. Or any of their docs really. It's terrible as those URL's end up in other documents to be killed. This is not really an enterprise friendly way of supporting customers.
toyg [3 hidden]5 mins ago
Yeah, I always wondered how one of the wealthiest companies on earth could be so poor in linking to their own documentation.

Then I realized that they have a galaxy of consultants and experts that effectively make a living by keeping on top of all issues and fixing them for a fee. So there is little incentive for them to actually be user-friendly: as long as they are "partner friendly" with timely material, that's good enough.

They are not alone in this, btw - pretty much all major platform providers do this, one way or the other.

sippeangelo [3 hidden]5 mins ago
I've given up because half the help links in the control panel leads to a bing search without any helpful results at all
thephyber [3 hidden]5 mins ago
There is no financial incentive for most companies to maintain extremely old URLs. There is no large visible cost known to the project manager at a company who chooses to migrate to a different CMS.

A common solution is to create placeholders at the old URLs with permanent redirects to the new URLs, but that doesn't fix all of the old hyperlinks, so it becomes extremely expensive to maintain backwards compatibility after 2 or more CMS changes.

Panino [3 hidden]5 mins ago
Mailing list archive software is a constant rug pull: today you link to a post about something relevant, and next month the link goes to a different message about a different subject.
sghiassy [3 hidden]5 mins ago
Entropy
mikepurvis [3 hidden]5 mins ago
Sadly, though:

    $ curl -I https://www.nsf.gov/pubs/1998/nsf9814/nsf9814.htm
    HTTP/2 404 
    content-type: text/html; charset=UTF-8
    content-length: 54737
    date: Sun, 09 Aug 2026 17:58:44 GMT
    strict-transport-security: max-age=31536000; includeSubdomains; preload
    server: Apache
MarkSweep [3 hidden]5 mins ago
It was removed in 2025 sometime between May 7th and September 11th:

https://web.archive.org/web/20250000000000*/https://www.nsf....

Maybe its removal is related to this:

https://en.wikipedia.org/wiki/2025_United_States_government_...

firasd [3 hidden]5 mins ago
What this page doesn't mention is 301 or 302 redirects. SEO has made "old URLs staying live" more of a widespread concern than it was at the time. And WordPress etc ship with inbuilt redirects upon slug rename

So to a large extent this has been mitigated and not using the suggestion here, which is to create a permanent URL ontology upfront

That said eventually neglect, removal, reorgs (or simply websites going offline) still happens... but the way the suggested goal has been advanced is due to becoming a business priority and with redirects and CMSes as tech to help

That said one suggestion made here turned out to be very useful and indeed is the default in WP:

   http://www.w3.org/1998/12/01/chairs
If you use date as part of the taxonomy then -- as Tim BL says here:

> A reason for using a topic area as part of the URI is that responsibility for sub-parts of a URI space is typically delegated, and then you need a name for the organizational body - the subdivision or group or whatever - which has responsibility for that sub-space. This is binding your URIs to the organizational structure. It is typically safe only when protected by a date further up the URI (to the left of it): 1998/pics can be taken to mean for your server "what we meant in 1998 by pics", rather than "what in 1998 we did with what we now refer to as pics."

bensyverson [3 hidden]5 mins ago
Yes but how often in practice does the same information stay accessible via 30x redirects after one reorganization, let alone two or three?
EGreg [3 hidden]5 mins ago
Sounds like most URIs have been downright uncool, then!
zibw [3 hidden]5 mins ago
A classic. This keeps getting more credible as it ages. Now it's been at the same URI for 28 years.
mooreds [3 hidden]5 mins ago
Great article, lots and lots of past discussion: https://hn.algolia.com/?q=cool+uris
WalterGR [3 hidden]5 mins ago
This post is related to (inspired by?):

"The original URL for this prediction will no longer be available in 11 years (2011)" (longbets.org)

https://news.ycombinator.com/item?id=49228458

186 points | 12 hours ago | 91 comments

doubletwoyou [3 hidden]5 mins ago
The funny thing is that the reason for me posting the long bet was looking through previous posts about Cool URLs. It comes full circle!
sunaookami [3 hidden]5 mins ago
Always like it when Hacker News "follows" a topic over days with different related links. Kinda like a bonus for reading HN daily :)
namanyayg [3 hidden]5 mins ago
OP is from 1998 so it's the other way around
WalterGR [3 hidden]5 mins ago
I meant the post/submission itself, not the content.
rendaw [3 hidden]5 mins ago
URLs are URIs and URLs include "how to access this" which fundamentally makes it hard to prevent them from changing. If it were an abstract ID, like a UUID, or a hash or something I'd get it. So are all URLs bad URIs?
Xirdus [3 hidden]5 mins ago
The "R" in URL is a misnomer. Designers of the early internet really wanted internet to be made of documents. It turned out the internet is actually made of interactive apps and services. Hence the impedance mismatch between terms and their practical meaning. URL was supposed to be used to locate resources in the resouce-oriented internet - instead, in the service-oriented internet, URL is a language of sorts for making remote procedure calls, some of which are read-only operations returning resources. So URLs are only as stable as the RPCs powering the service behind it. As services evolve, so do URLs.
zkmon [3 hidden]5 mins ago
The concept of hooking onto a URL, for years, is a bad thing. It prohibits the URL owners from changing it. It's not 90's. You have search engines now to get to content. It's almost same as bookmarking an IP address, and complaining that the change has frustrated you, or someone scribbled the IP address on the margin of a letter.

I usually bookmark a link only to come back to a few days/weeks later. I don't expect a bookmark to work after years. I let the URL owners to have freedom to change it.

A thing that changes or goes away, feels natural. An URL that didn't change in 20 years, actually freaks me out, like a non-degradable plastic.

xp84 [3 hidden]5 mins ago
This just means you’ve accepted URLs as something different than they were made to be. If the resource no longer exists - fine, c’est la vie. Otherwise, there should never be any need for it to change. It should never have encoded any implementation details anyway.
sojournerc [3 hidden]5 mins ago
That's like saying the Dewey decimal system is creepy because it doesn't change. That's the point! A reference should be where you left it. Why must it change?
glacials [3 hidden]5 mins ago
If you run a statically generated website, I recommend append-only generation, where you keep your `dist/` (or whatever web root) stateful between builds. This guarantees you don't break URIs even if the static generator changes or the source content is removed.

You can even make an orphan branch and check out that branch into `dist/` as a worktree to keep it under version control.

cxr [3 hidden]5 mins ago
Even for people who don't practice this, if you're publishing a static site, you can make sure you're generating output with rel=canonical links and at any given point, you should be able to run a tool (entirely separate from your chosen static site generator) over the output to extract those URLs and verify at time t2 that the set of links that existed at t1 (where t1 < t2) is a subset of those at t2.
burntcaramel [3 hidden]5 mins ago
They didn’t follow their own advice for their accessibility practices page https://www.w3.org/TR/wai-aria-practices/
_carbyau_ [3 hidden]5 mins ago
A side effect of the idea that this information can be "permanent" means you should really think before putting it up there.

But today is not that, it is the opposite of that with stuff being put online that really doesn't need to be. This is permaweb vs slopweb.

donatj [3 hidden]5 mins ago
I find that every time major companies as well as most authors switch blogging systems even if they maintain their URLs broadly, their RSS feed url breaks.
Swizec [3 hidden]5 mins ago
I've been trying to keep all URLs backwards compatible forever on swizec.com and it's surprisingly hard. I _think_ anything from 2010 onward should be good. The domain started in 2005.

Unfortunately I'll never know for sure.

nicbou [3 hidden]5 mins ago
This is something I work really hard to maintain on my websites. I often refer to government websites as sources for my guides, and these URLs break at an alarming pace. It's as if the German government is moving reference pages and services around just for giggles. It creates a significant maintenance burden on my end.

When I worked for an ecommerce website, we spent weeks making sure every URL worked after a migration.

Nowadays it feels a little quaint because most of my 404s are from LLMs hallucinating URLs that never existed, sometimes for topics I never covered. I wonder what nonsense it attributes to me.

ricardo81 [3 hidden]5 mins ago
I recall some link rot research from ~10 years ago that estimated it was in the high single digit percentiles per year.

archive.org perhaps have/could have some interesting insights on it.

jruohonen [3 hidden]5 mins ago
It is not only about "coolness" but long-term preservation too; that was one of the main motives behind DOIs.
shiandow [3 hidden]5 mins ago
The headers that push a bit into the margin are an interesting stylistic choice, but why on earth does it have to be random? Did something change that affected the layout somehow? (ironically)
snthd [3 hidden]5 mins ago
It's different for the different header levels.

https://www.w3.org/Provider/Style/GuideStyle.css

    H1 { margin-left: -20%; }
    H2 { margin-left: -15%; }
    H3 { margin-left: -10%; }
    H4 { margin-left: -05%; }
al_borland [3 hidden]5 mins ago
I find it works well for helping maintain context. I often can't easily tell the difference between different headers unless they're right next to each other, and even then some of them are difficult to discern. Adding the indentation is a way to make the hierarchy more clear.
moritzwarhier [3 hidden]5 mins ago
Evergreen. Correct.
_kb [3 hidden]5 mins ago