And I would add, Permanent Redirect means just that (at least up to max-age).
So… you open your calendar to work out which meeting room you need to be in in two minutes time and…..
….it pops up an error message to inform you….
Indicates that the resource requested is no longer available and will not be available again. This should be used when a resource has been intentionally removed and the resource should be purged. Upon receiving a 410 status code, the client should not request the resource in the future. Clients such as search engines should remove the resource from their indices. Most use cases do not require clients and search engines to purge the resource, and a “404 Not Found” may be used instead.
…and that it now doesn’t know what the phase of the moon is.
Instead of just telling where you need to be, in ahh, a minutes time, it pops up a complex dialog requesting a new Phase of Moon resource.
If you are http savvy, you understand all this, google for a new phase of moon server and enter it, and sprint to the meeting you’re now late for.
And hopefully your administrator hasn’t been a BOfH and lock the calendar config down and you can update that…
Or if your meeting is about how to decorate the lobby, you probably have no idea what the hell this thing is doing / saying and you start clicking stuff at random, or freeze, or reboot, or…
…or the calendar just quietly deletes that agenda from its list…..
… and later that month you get expelled from your coven for missing the new moon rites.
This feels like a red herring. All those problems still exist if the calendar service keeps hitting the server and getting 410s (or any other error, for that matter). How the calendar reports to the user that a resource is failing is indeed a difficult UX problem. But the point here is, if you are getting a 410 there is no benefit to anyone to keep trying, regardless of how you expose errors to the user.
I know, I’m partly joking.
I’m partly jokingly pointing to a fundamental problem with the UX of something that relies on remote services, not just calendars.
I doubt if there are really nice solutions, and there are doubtless a flock of really horrid solutions that take less time and thought.
An no doubt all the nice solutions do not fall into the definition of a Minimal Viable Product.
Lazy devs gonna lazy, but I wonder how conforming we expect software to actually get. Do browsers track 410? Does Firefox send a list of observed 410 URLs back to Mozilla? Like if some site hotlinked an image on my server, and I decide to 410 the image, when will I stop seeing “Mozilla 5.0 Firefox” in my logs?