Thursday, September 29, 2005

Network of Trust

Darius accidentally pointed me at this guy, who apparently has some of the same basic ideas as me about personalized networks. This guy, Charles Bloom, talks about a network of trust and explains it in the same basic way I once explained mine. Did I explain it on this blog? I'm pushing 300 posts, so I would bet I did, but it would have been long enough ago that without a handy-dandy search function I'm not going to look for it.

His idea is either incomplete or just poorly explained. As I pointed out here, you need a remarkably complex tool for determining what content should be rated at what level... and a way to either fully- or semi-automatically put content into its particular "band".

This is not as easy as simply making categories, because categories are foolishly large and are usually diluted with irrelevant material extremely quickly. For example, a "music" category would not be detailed enough. Neither would a "rock" category. And what about a song which is rock AND soul? Does it go in both categories? Neither? What about the jerk who puts naked pictures in every "music" category you have?

The categories need to be created automatically and things need to be plunked into them automatically, based on who rates what as what. That's not an easy task, but neither is it insurmountable.

The other half of this setup is what it can be used for. It could be used as a P2P network, sure. Could Google use it in "Google search"? No, not really: the whole concept revolves around it being central to the computer, and making it a P2P setup is really ideal. Otherwise, Google is taking on a lot of overhead for very little benefit. Ideally, it's a program you punch up - like eMule - and it knows who to contact and who you trust at what levels. As you rate downloaded content, it would automatically re-rate the trust ratings and update your "spectra" - what kinds of content you like and what kinds of content other people like.

It would really work well because the machines could ask favors from each other in order to increase trust in general. For example, your server is being hit with ten thousand requests for a fifty-meg file. Your server goes to its friends and says, "hey, host this, would you?" at which point it can redirect would-be requesters to these new computers. Then the new computers gain trust from their downloaders, you gain trust as a router, and the file gets spread. You could even negotiate to download only to programs that agree to keep the file hosted for a certain number of days.

It would also be nearly ideal as a news client - think Blogroll, but with exceptional, largely automated content control. You could sign up for my blog, but choose not to receive any of my posts which were (A) longer than 500 words or (B) about theory. You could trawl through blogs in general, using the spectra controls, number of links, and indirect trust level to highlight blog posts you're likely to like.

But the real key here is that spectra. You need to be able to decipher the myriad of goods offered in the network into a set of categories - either explicit categories or implicit categories. But you can't just have a certain number of predefined categories, and you certainly can't allow people to create categories willy-nilly.

You either need a central database which dissects all the traffic and turns all the clients into lists of bands... or you need to have each client do that on its own. Which is more efficient? I don't know, but having a central database is both more expensive and legally more iffy.


Well, thanks for the interesting read, Mr. Bloom.


Darius Kazemi said...

You actually met him (in a very technical sense of the word "met") at the Indie Game Jam.

Craig Perko said...

Which one was he?