Flickr deserves a lot of praise for a number of technical advances that I wish had seen wider adoption.
Their API was one of the first and honestly still one of the most enjoyable to actually use as a developer. It's still full of incredibly interesting API calls that you wouldn't expect from it unless you read carefully. Did you know, for example, that flickr API will provide you with the bounding box co-ordinates of different types of places? From a neighbourhood all the way up to a continent?
They implemented the Where On Earth ID (WOEID) which was a super useful way of disambiguating different places that shared latitude and longitude (for example, being able to disambiguate the Sydney Opera House, Circular Quay and Sydney Harbour which all can potentially share the same lat/long co-ords).
They implemented machine tags which are tags in the form of -
namespace:predicate=value
Which, when it was implemented by other sites with machine tags allowed you to get and group all kinds of interesting combinations of content.
Yeah, honestly flickr had some incredible tech the was so much fun to explore and use. That their vision of what the web could be wasn't the one that won is one of the great losses of the web IMO.
I agree 100% with the author, clean, easily readable and well structured URLs make the web a better place. URL is a hierarchical structure as introduced in the RFC1738 by a guy you might have heard, Tim Berners-Lee, the inventor of the World Wide Web :-)
https://www.rfc-editor.org/rfc/rfc1738
Easily readable URLs is something I learned in the 90s and I still try to enforce in everything I create.
And a bit about the skill of whoever made the wiki software, they need better documentation and automation to help even less-skilled admins to have clean URLs
Unfortunately things are going in the opposite direction with media platforms creating an encoded blob impossible to edit by hand so that you (or a tool) cannot strip tracking etc.
> I would also try to add a human-readable slug at the end, because…
No? Because what would it be based on and if you edited the thing that it's based on then the URL would either change, or get out of sync which woudl suck. You could ignore the suffix meaning flickr.com/mwichary/sets/72177720330077904-<everything-past-the-previous-dash-is-ignored> I'm not sure if that would be a positive, although I guess S.O. does something like that. The issue is other sites really want to know if it's a link to the same resource or a different resource. And while you could redirect to the new one that just makes more work for everyone.
> I would get rid of /photos
I wouldn't because then you'd had have https://flickr.com/settings but that would not be a user named "settings" and the same for every other alternate purpose URL
> You could ignore the suffix meaning flickr.com/mwichary/sets/72177720330077904-<everything-past-the-previous-dash-is-ignored> I'm not sure if that would be a positive, although I guess S.O. does something like that.
The shift from URLs accessing resources on file systems to more abstract resources (implicitly HTML unless the headers said otherwise) occurred around 1999/2000. Suddenly we were all doing it once we’d figured out the necessary Apache directives. It wasn’t just Flickr, although it and its APIs were a good example of clean URL design
> (Alternatively, I would consider getting rid of numerical ids altogether and relying on name alone. Internet Archive does it at e.g. archive.org/details/leroy-lettering-sets, but that has some serious limitations that are not hard to imagine.)
I could try to imagine these limitations and how the Internet Archive overcomes them, but I'd prefer reading about it.
GitHub manage to do it. Most URLs you'd think of are either redirects to other bits of the site, or accounts owned by GitHub themselves. It just takes a bit of planning.
However, getting rid of the /photos prefix would be a terrible improvement.
Having the /{username} at the root of the routing logic means that every URL should either query the user database for a match or use /{username} as a catch-all fallback if no other patterns match. But this makes resolving real 404 pages much more expensive.
> Alternatively, I would consider getting rid of numerical ids altogether and relying on name alone. Internet Archive does it at e.g. archive.org/details/leroy-lettering-sets, but that has some serious limitations that are not hard to imagine
They don't rely on title alone, it's a separate identifier. You can set it to anything and you can't change it afterwards but you can change the title.
I've gone back to flickr for my photo sharing, I've had a pro account for, checks account, oh jeez, 20 years. I stopped using facebook and meta, and it's a solid photo sharing service. I can send links and people just get the photos, imagine that!, no ads, clean interface, lovely.
Stopped caring about them when they cancelled their 1TB free storage after 5 years, company which can't be trusted long term with your data. Plus the UI was horrible anyway.
They implemented the Where On Earth ID (WOEID) which was a super useful way of disambiguating different places that shared latitude and longitude (for example, being able to disambiguate the Sydney Opera House, Circular Quay and Sydney Harbour which all can potentially share the same lat/long co-ords).
They implemented machine tags which are tags in the form of -
namespace:predicate=value
Which, when it was implemented by other sites with machine tags allowed you to get and group all kinds of interesting combinations of content.
Yeah, honestly flickr had some incredible tech the was so much fun to explore and use. That their vision of what the web could be wasn't the one that won is one of the great losses of the web IMO.
reply