mdlbear: (hacker glider)
Facebook and Decentralized Identifiers — Thought Palace
I finally made myself a Facebook account, mostly to see what it’s like. Overall, I’m pretty impressed: the UI is nicer than most such sites, particularly the still-antiquated LiveJournal and the disaster that is MySpace. The biggest issue there seems to be that the main profile page absolutely doesn’t scale up to handle the exploding number of apps/widgets people are stuffing into it, so you end up with mile-long profiles containing box after box of junk.

But the most interesting thing I noticed is how the service has no visible identifiers for user identities. Unlike most centralized services, there’s no unique username to pick. I assume that, internally, each account requires a unique email address, but that address plays very little role in the user experience, apart from its use in helping people find their existing contacts’ profiles. The service does assign a unique number to every profile, and this shows up in profiles’ URLs, but it never seems to appear in the page itself. So there’s no obvious way to say “this is my Facebook ID”, other than pasting in the completely non-mnemonic URL of your profile page. And conversely, the visible identifiers you see for other members are simply their real names (plus photos/icons.)

This makes sense, since Facebook is all about the social network. It may have eight hundred million members (assuming the account IDs are assigned serially) but there’s generally no need to know about, identify or refer to some random member, since it’s almost certainly someone you don’t know or care about. The people in your social network can be referred to by real name, because at that scale the number of name conflicts is so much lower, and you or your friends presumably ruled out spoofs before friending that person. Real names work for the same reason that they work in real life social interactions.
(found via OpenID)

Something similar is applicable to content-based identifiers (like hashes) for documents -- it may not matter whether the document has a human-guessable URL as long as you can find it. But both break down badly once you start trying to find related people or documents -- you can't simply go up a level in the directory tree and find an index, or go up two levels and find related stuff. Hierarchies are useful; I wouldn't want to construct a software project out of a big pile of files without a hierarchy of modules, documentation, and build tools.

It's worth noting, though, that version control systems like git and search engines on the web let you have it both ways. And that you don't need a centralized system managing identities, social networks, and access-control lists for everyone in a community: you can do that with distributed systems like OpenID and FOAF. Both of which LJ already supports.

Most Popular Tags

Syndicate

RSS Atom

Style Credit

Page generated 2025-06-17 03:06 pm
Powered by Dreamwidth Studios