Formally modelling a trust network – a sign of hubris?

“Interactivity. Many-to-many communications. Pervasive networking. These are cumbersome new terms for elements in our lives so fundamental that, before we lost them, we didn’t even know to have names for them.” Clever man Douglas Adams. You see he wrote this in 1999 and clearly understood, even then, the nature of the web so much better than most of us do even today.

"Camp fire on the beach" by joaquimb. Used under license.
Camp fire on the beach, by joaquimb. Used under license.

As Douglas Adams points out the Internet is still novel – it’s very easy to forget that despite it’s incredible uptake the world has only had the Web since 1991. That’s really not very long. We are still getting use to it, still working out how to use it. But back in 1999 Douglas Adams clearly understood that one thing you shouldn’t be trying to do is model human trust and that’s because our brains do the job so much better.

Working out the social politics of who you can trust and why is, quite literally, what a very large part of our brain has evolved to do.

Although the Internet is a new technology, it is in many ways a return to a more traditional form of entertainment. The sit back and consume world of 20th century entertainment is the abnormality. TV, radio and the cinema are the aberrations because they aren’t interactive – all other forms of entertainment up until the early 20th century (and an increasing amount of entertainment since) are ‘interactive’ its just that we didn’t call them interactive entertainment because that would be silly – “a game of interactive cricket anyone?”

Unfortunately we currently looking at the Internet from the perspective of the non-interactive entertainment world of TV and radio. And that perspective isn’t helpful, as Adams puts it:

Newsreaders still feel it is worth a special and rather worrying mention if, for instance, a crime was planned by people ‘over the Internet’. They don’t bother to mention when criminals use the telephone or the M4, or discuss their dastardly plans ‘over a cup of tea,’ though each of these was new and controversial in their day.

Possibly because people see interactive entertainment as new and different they believe that they therefore need to build policies and models to express human trust into their web apps. The trouble is it just isn’t necessary – worse it doesn’t work. Our brains are great at working out who and what to trust – you just need to expose enough information so we can make the decisions. On the other hand it seems to me that attempts to formally model a trust network is a sign of hubris.

Of course you can’t trust what people tell you on the web anymore than you can trust what people tell you on megaphones, postcards or in restaurants… For some batty reason we turn off this natural scepticism when we see things in any medium which require a lot of work or resources to work in, or in which we can’t easily answer back like newspapers, television or granite. Hence “carved in stone.” What should concern us is not that we can’t take what we read on the internet on trust of course you can’t, it’s just people talking but that we ever got into the dangerous habit of believing what we read in the newspapers or saw on the TV – a mistake that no one who has met an actual journalist would ever make. One of the most important things you learn from the internet is that there is no “them” out there. It’s just an awful lot of “us”.

What you need then is not a model of trust instead you need a mechanism to answer back. You actually need a bit more than that – you need a mechanism to identify a person online – ideally wherever they appear on the web – via OpenID and FOAF for example. You also want to know who their friends are, or more specifically who claims to be friends with them. So for example, if I can see that someone is a friend of a friend I’m more likely to trust them than if neither I, nor my friends, have a connection with that person.

I also want to be able to read what they say and do online. If I can read their blog, look at their comments, check out their feed or twitter stream etc. then all the better. And since we are talking about online social networks this shouldn’t be too unreasonable.

Our brains are very good at processing this kind of social relationship information so we can assess whether or not we should trust a person, or more importantly to assess when and in which context to trust a person. I would trust Nick’s advice on say how to build my own home brew radio (in a lunch box) but not which pet to buy.

I remember Dan talking about the social graph and saying how he felt uncomfortable about the way XFN encouraged you to assert the nature of the relationship: “nope you’re not my ‘friend’ you’re an ‘acquaintance’ or ‘co-worker’ etc.” Which is why FOAF just has ‘friends’. This might be just because Dan is a nice bloke but I have to agree it is just a bit weird categorising the nature of your relationships the XFN way. But more pragmatically it’s also just not that helpful to model this information. All you really need is a mechanism to assert that there is a relationship and a URI to identify the person; you can then go and dereference the resource to work out whether you should trust that person or not for a given context.

I don’t pay attention to that anymore…

I use to watch Lost – I don’t bother anymore. In fact there are loads of things that I use to pay attention to that I don’t anymore. My tastes change, what I once thought of as good I don’t anymore, and what was once good has just gone downhill.

APML or Attention Profile Markup Language is an open, nonproprietary file format that uses XML to encoded a users interests into a single file.

… consolidated, structured descriptions of people’s interests and dislikes. The information about your interests and how much each means to you (ranking) is stored in a way so that computers and web-based services can easily read it, interpret it, process it and pass it on should you request and permit them to do so.”


What APML gives you then is a file expressing the relative amount of attention you have given various URLs and when you last looked at that those URLs. The idea then is that you can move this file from one location to the next, you can also (because it’s XML) edit this file if you don’t want your profile to include the fact you lingered on something embarrassing.

But what I pay attention to changes over time and therefore having a single file that describes what I pay attention seems a bit wrong headed.

My problem with APML is that it’s based on a view of file transfer and data sharing – one where you copy and move a file from one system to the next. I just don’t believe that that is how the Web works. As Chris Messina puts it (in relation to

In my mind, when the arena of application is the open, always-on, hyper-connected web, constructing best practices using an offline model of data is fraught with fundamental problems and distractions and is ultimately destined to fail, since the phrase is immediately obsolete, unable to capture in its essence contemporary developments in the cloud concept of computing (which consists of follow-your-nose URIs and URLs rather than discreet harddrives), and in the move towards push-based subscription models that are real-time and addressable.

Attention data is highly time and context sensitive – being able to download and share a file with another system seems all wrong. Instead I think that being able to stream data between (authorised) services is the way to go.

If you enabled data to be streamed then you could make you your attention data available at meaningful URLs. For example, my attention for 2007 might be at something like: and for today at

This approach would allow you to expose your attention data (using the AMPL schema if you wish) at meaningful URLs and in useful time slices. You could then combine it with other forms of linked data – like programmes – to give additional context and additional information to your attention data.

I’m all up for making attention data accessible (via an appropriate secure API) but making it available as a file to be downloaded and imported into another app leaves me a little cold.

Photo: What are you looking at?, by Banksy and 'No life before coffee'. Used under license.

URLs aren’t just for web pages

We’re all use to using URLs to point at web pages but we too often forget that they can be use for other things too. They can address any resource and that includes: people, documents, images, services (e.g., “today’s weather report for London”), TV or Radio Programmes in fact any abstract concept or entity that can be identified, named and addressed.

Also, because these resources can have representations which can be processed by machines (through the use of RDF, Microformats, RDFa, etc.), you can do interesting things with that information. Some of the most interesting things you can do happen when URLs identify people.

Currently people are normally identified within web apps by their email address. I guess this sort of makes sense because email addresses are unique, just about everyone has one and it means the website can contact you. But URLs are better. URLs are better because they offer the right affordance.

If you have someone’s URL then you can go to that URL and find out stuff about that person – you can assess their provenience (by reading what they’ve said about themselves, by seeing who’s in their social network via tools such as XFN, FOAF and Google’s Social Graph API), you can also discover how to contact them (or ask permission to do so).

With e-mails the affordance is all the wrong way round – if I have your email address I can send you stuff, but I can’t check to see who you are, or even if it is really you. Email addresses are for contacting people they aren’t identifiers; by conflating the two we’ve gots ourselves into trouble because email addresses aren’t very good at identifying people nor can they be shared publicly without exposing folk to spam and the like.

This is in essence the key advantage offered by OpenID which uses URLs to provide digital identifiers for people. If we then add OAuth into the mix we can do all sorts of clear things.

The OAuth protocol can be used to authenticate any request for information (for example sending the person a message), the owner of the URL/OpenID decides whether or not to grant you that privilege. This means that it doesn’t matter if someone gets hold of an URL identifier – unless the owner grants permission (on a per instance basis) they are useless – this is in contrast to what happens with Email identifiers – once I have it I can use it to contact you whether you like it or not.

Also because I can give any service a list of my friend’s URLs without worrying that their contact details will get stolen I can tip up at any web service and find which of my friends are using it without having to share their contact details. In other words by using URLs to identify people I can share my online relationships without sharing or porting my or my friend’s contact data.

You retain control over your data, but we share the relationships (the edges) within our social graph. And that’s the way it should be, after all that all it needs to be. If I have your URL I can find whatever information (email, home phone number, current location, bank details) you decide you want to make public and I can ask you nicely for more if I need it – using OAuth you can give me permission and revoke it if you want.

Photo: Point!, by a2gemma. Used under licence.